📄 jtd.lst
字号:
C51 COMPILER V7.06 JTD 04/06/2009 16:01:38 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE JTD
OBJECT MODULE PLACED IN jtd.OBJ
COMPILER INVOKED BY: D:\C51\BIN\C51.EXE jtd.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 #include <reg52.h>
2 #define uchar unsigned char
3 #define uint unsigned int
4 sbit wei1=P2^4;
5 sbit wei2=P2^5;
6 sbit wei3=P2^6;
7 sbit wei4=P2^7;
8 uchar code table[]={
9 0xf0,0xf1,0xf2,0xf3,
10 0xf4,0xf5,0xf6,0xf7,
11 0xf9};
12 uchar t0,shu,shi,ge,flag,temp,gg,dd;
13
14 void delay(uint z)
15 {
16 1 uint t1,y;
17 1 for(t1=z;t1>0;t1--)
18 1 for(y=110;y>0;y--);
19 1 }
20 void init()
21 {
22 1 shu=94;
23 1 TMOD=0x01;
24 1 TH0=(65536-50000)/256;
25 1 TL0=(65536-50000)%256;
26 1 EA=1;
27 1 ET0=1;
28 1 TR0=1;
29 1 P1=0xf3;//初始状态为状态1
30 1 flag=0;
31 1 }
32 void display()
33 {
34 1 if(shu<5)
35 1 {
36 2 temp=shu;
37 2 }
38 1 else if(shu<35)
39 1 {
40 2 temp=shu-5;
41 2 }
42 1 else
43 1 {
44 2 temp=shu-35;
45 2 }
46 1 gg=shu/10;
47 1 dd=shu%10;
48 1 shi=temp/10;
49 1 ge=temp%10;
50 1 if(flag==0)
51 1 {
52 2 P0=table[shi];wei1=1;delay(1);wei1=0;
53 2 P0=table[ge];wei2=1;delay(1);wei2=0;
54 2 P0=table[gg];wei3=1;delay(1);wei3=0;
55 2 P0=table[dd];wei4=1;delay(1);wei4=0;
C51 COMPILER V7.06 JTD 04/06/2009 16:01:38 PAGE 2
56 2 }
57 1 else
58 1 {
59 2 P0=table[gg];wei1=1;delay(1);wei1=0;
60 2 P0=table[dd];wei2=1;delay(1);wei2=0;
61 2 P0=table[shi];wei3=1;delay(1);wei3=0;
62 2 P0=table[ge];wei4=1;delay(1);wei4=0;
63 2 }
64 1 }
65 void state()
66 {
67 1
68 1
69 1 if(flag==0)
70 1 {
71 2 if(shu==35)
72 2 {
73 3 P1=0xb3;//状态2,主干道左转弯灯显示状态
74 3 }
75 2
76 2 if(shu==5)
77 2 {
78 3 P1=0xf5;//状态3,东西道黄灯,南北道红灯 11110101
79 3 }
80 2
81 2 if(shu==0)
82 2 {
83 3 shu=94;
84 3 P1=0xde;//状态4,东西道红灯,南北道绿灯 11011110
85 3 flag=1;
86 3 }
87 2 }
88 1
89 1 else
90 1 {
91 2 if(shu==35)
92 2 {
93 3 P1=0x5e;//状态5,次干道左转弯显示状态
94 3 }
95 2 if(shu==5)
96 2 {
97 3 P1=0xee;//状态6,东西道红灯,南北道黄灯 11101110
98 3 }
99 2 if(shu==0)
100 2 {
101 3 shu=94;
102 3 P1=0xf3;//状态1,东西道绿灯,南北道红灯 11110011
103 3 flag=0;
104 3 }
105 2 }
106 1 }
107
108 void main()
109 {
110 1 wei1=0;
111 1 wei2=0;
112 1 wei3=0;
113 1 wei4=0;
114 1 init();
115 1 while(1)
116 1 {
117 2 display();
C51 COMPILER V7.06 JTD 04/06/2009 16:01:38 PAGE 3
118 2 state();
119 2 }
120 1 }
121
122 void timer0() interrupt 1
123 {
124 1 TH0=(65536-50000)/256;
125 1 TL0=(65536-50000)%256;
126 1 t0++;
127 1 if(t0==20)
128 1 {
129 2 t0=0;
130 2 shu--;
131 2 }
132 1
133 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 324 ----
CONSTANT SIZE = 9 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 8 ----
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 + -