📄 main.lst
字号:
C51 COMPILER V8.08 MAIN 05/20/2007 13:31:21 PAGE 1
C51 COMPILER V8.08, COMPILATION OF MODULE MAIN
NO OBJECT MODULE REQUESTED
COMPILER INVOKED BY: D:\Program Files\Keil 8.08\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND SRC(.\main.SRC)
line level source
1 #include <reg51.h>
2 typedef unsigned char BYTE;
3
4 sbit LED_G1=P2^1;
5 sbit LED_Y1=P2^2;
6 sbit LED_R1=P2^3;
7
8 sbit LED_G2=P2^4;
9 sbit LED_Y2=P2^5;
10 sbit LED_R2=P2^6;
11
12 sbit P30=P3^0;
13 sbit P31=P3^1;
14
15 BYTE Second1;
16 BYTE Second2;
17 BYTE DBUF[4]; //显示码缓冲区1
18 BYTE TEMP[4];
19 BYTE code LedMap[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,
20 0x7D,0x07,0x7F,0x6F,0x77,0x7C,
21 0x58,0x5E,0x7B,0x71,0x00,0x40};
22
23 void display()
24 {
25 1 BYTE dis_i;
26 1 BYTE dis_j;
27 1 BYTE offset;
28 1
29 1 DBUF[3]=Second1/10;
30 1 DBUF[2]=Second1%10;
31 1 DBUF[1]=Second2/10;
32 1 DBUF[0]=Second2%10;
33 1
34 1 dis_i=4;
35 1 offset=0;
36 1 do
37 1 {
38 2 TEMP[offset]=LedMap[DBUF[offset]];
39 2 offset++;
40 2 }while(--dis_i);
41 1
42 1 dis_i=0x04;
43 1 offset=0;
44 1
45 1 do
46 1 {
47 2 dis_j=0x08;
48 2 ACC=TEMP[offset];
49 2
50 2 do
51 2 {
52 3
53 3 #pragma asm
54 3 RLC A
55 3 #pragma endasm
C51 COMPILER V8.08 MAIN 05/20/2007 13:31:21 PAGE 2
56 3
57 3 P30=CY;
58 3 P31=0;
59 3 P31=1;
60 3 }while(--dis_j);
61 2 offset++;
62 2 }while(--dis_i);
63 1
64 1 }
65
66 main()
67 {
68 1 BYTE delay_count; //延时次数
69 1 BYTE second;
70 1 BYTE flash;
71 1
72 1 TMOD=0x01;
73 1 TH0 =0x3C;
74 1 TL0 =0xB0;
75 1 TF0 =0;
76 1 TR0 =1;
77 1 P1 =0x00;
78 1
79 1 while(1)
80 1 {
81 2 /******wait1******/
82 2 delay_count=20;
83 2 second=20;
84 2 Second1=25;
85 2 Second2=25;
86 2 display();
87 2
88 2 LED_G1=1;
89 2 LED_Y1=0;
90 2 LED_R1=0;
91 2 LED_G2=0;
92 2 LED_Y2=0;
93 2 LED_R2=1;
94 2
95 2 do
96 2 {
97 3 do
98 3 {
99 4 while(!TF0);
100 4 TF0=0;
101 4 TH0=0x3C;
102 4 TL0=0xB0;
103 4 }while(--delay_count);
104 3
105 3 delay_count=20;
106 3 Second1--;
107 3 Second2--;
108 3 display();
109 3 }while(--second);
110 2
111 2
112 2 /******wait2******/
113 2 delay_count=5;
114 2 second=3;
115 2 flash=4;
116 2 Second1=5;
117 2 Second2=5;
C51 COMPILER V8.08 MAIN 05/20/2007 13:31:21 PAGE 3
118 2 display();
119 2
120 2 do
121 2 {
122 3 do
123 3 {
124 4 do
125 4 {
126 5 do
127 5 {
128 6 LED_Y1=0;
129 6 LED_R1=0;
130 6 LED_G2=0;
131 6 LED_Y2=0;
132 6 LED_R2=1;
133 6 }while(!TF0);
134 5
135 5 TF0=0;
136 5 TH0=0x3C;
137 5 TL0=0xB0;
138 5 }while(--flash);
139 4 LED_G1=~LED_G1;
140 4 flash=4;
141 4 }while(--delay_count);
142 3 delay_count=5;
143 3
144 3 Second1--;
145 3 Second2--;
146 3 display();
147 3
148 3 }while(--second);
149 2
150 2
151 2 /******wait3******/
152 2 delay_count=20;
153 2 second=2;
154 2 Second1=2;
155 2 Second2=2;
156 2 display();
157 2
158 2 do
159 2 {
160 3 do
161 3 {
162 4 do
163 4 {
164 5 LED_G1=0;
165 5 LED_R1=0;
166 5 LED_G2=0;
167 5 LED_Y2=0;
168 5 LED_R2=1;
169 5 LED_Y1=1;
170 5 }while(!TF0);
171 4
172 4 TF0=0;
173 4 TH0=0x3C;
174 4 TL0=0xB0;
175 4 }while(--delay_count);
176 3 delay_count=20;
177 3 Second1--;
178 3 Second2--;
179 3 display();
C51 COMPILER V8.08 MAIN 05/20/2007 13:31:21 PAGE 4
180 3
181 3 }while(--second);
182 2
183 2 /******wait4******/
184 2 delay_count=20;
185 2 second=20;
186 2 Second1=25;
187 2 Second2=25;
188 2 display();
189 2
190 2 do
191 2 {
192 3 do
193 3 {
194 4 do
195 4 {
196 5 LED_G1=0;
197 5 LED_Y1=0;
198 5 LED_R1=1;
199 5 LED_G2=1;
200 5 LED_Y2=0;
201 5 LED_R2=0;
202 5 }while(!TF0);
203 4
204 4 TF0=0;
205 4 TH0=0x3C;
206 4 TL0=0xB0;
207 4 }while(--delay_count);
208 3
209 3 delay_count=20;
210 3 Second1--;
211 3 Second2--;
212 3 display();
213 3 }while(--second);
214 2
215 2 /******wait5******/
216 2 delay_count=5;
217 2 second=4;
218 2 flash=3;
219 2
220 2 Second1=5;
221 2 Second2=5;
222 2 display();
223 2
224 2 do
225 2 {
226 3 do
227 3 {
228 4 do
229 4 {
230 5 do
231 5 {
232 6 LED_G1=0;
233 6 LED_Y1=0;
234 6 LED_R1=1;
235 6 LED_Y2=0;
236 6 LED_R2=0;
237 6 }while(!TF0);
238 5
239 5 TF0=0;
240 5 TH0=0x3C;
241 5 TL0=0xB0;
C51 COMPILER V8.08 MAIN 05/20/2007 13:31:21 PAGE 5
242 5 }while(--second);
243 4
244 4 LED_G2=~LED_G2;
245 4 second=4;
246 4 }while(--delay_count);
247 3 delay_count=5;
248 3 Second1--;
249 3 Second2--;
250 3 display();
251 3 }while(--flash);
252 2
253 2
254 2 /******wait6******/
255 2 delay_count=20;
256 2 second=2;
257 2 Second1=2;
258 2 Second2=2;
259 2 display();
260 2
261 2 do
262 2 {
263 3 do
264 3 {
265 4 do
266 4 {
267 5 LED_G1=0;
268 5 LED_Y1=0;
269 5 LED_R1=1;
270 5 LED_G2=0;
271 5 LED_R2=0;
272 5 LED_Y2=1;
273 5 }while(!TF0);
274 4
275 4 TF0=0;
276 4 TH0=0x3C;
277 4 TL0=0xB0;
278 4 }while(--delay_count);
279 3 delay_count=20;
280 3 Second1--;
281 3 Second2--;
282 3 display();
283 3 }while(--second);
284 2 }
285 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 380 ----
CONSTANT SIZE = 18 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 10 ----
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 + -