📄 main.lst
字号:
C51 COMPILER V7.06 MAIN 04/06/2008 20:46:27 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 /*交通信号灯控制系统
2 主道要求绿灯点亮48秒,黄灯点亮4秒并闪烁,红灯点亮24秒
3 侧道要求绿灯点亮24秒,黄灯点亮4秒并闪烁,红灯点亮48秒*/
4 #include<reg51.h>
5 unsigned char table[]={
6 0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,
7 0x10,0x11,0x12,0x13,0x14,0x15,0x16,0x17,0x18,0x19,
8 0x20,0x21,0x22,0x23,0x24,0x25,0x26,0x27,0x28,0x29,
9 0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,
10 0x40,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48
11 };
12 void delay();
13 void de(unsigned char p);
14 void shine1();
15 void shine2();
16 void main()
17 { while(1)
18 1 {P1=0x0c;
19 2 de(48);
20 2 shine1();
21 2 P1=0x21;
22 2 de(24);
23 2 shine2();
24 2 }
25 1 }
26 void de(unsigned char p)
27 {unsigned int n;
28 1 for (n=p;n>=0;n--)
29 1 {P2=table[n];
30 2 delay();
31 2 if (P2==0)
32 2 break;
33 2 }
34 1 }
35 void delay()
36 { unsigned int i,j;
37 1 for(i=100;i>0;i--)
38 1 { for(j=250;j>0;j--);
39 2 }
40 1
41 1 }
42 void shine1()
43 { unsigned int n,t=0;
44 1 for (n=4;n>=0;n--)
45 1 {P2=table[n];
46 2 if((t%2)==0) P1=0x0a;
47 2 if((t%2)==1) P1=0x08;
48 2 delay();
49 2 t++;
50 2 if (P2==0)
51 2 break;
52 2 }
53 1 }
54 void shine2()
55 {
C51 COMPILER V7.06 MAIN 04/06/2008 20:46:27 PAGE 2
56 1 unsigned int n,t=0;
57 1 for (n=4;n>=0;n--)
58 1 {P2=table[n];
59 2 if((t%2)==0) P1=0x11;
60 2 if((t%2)==1) P1=0x01;
61 2 delay();
62 2 t++;
63 2 if (P2==0)
64 2 break;
65 2 }
66 1 }
67
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 203 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 49 2
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -