📄 rtc.lst
字号:
(0157) {
(0158) adc_old=adc_rel;
284 9020 010C LDS R2,adc_rel
286 9030 010D LDS R3,adc_rel+1
288 9230 010B STS adc_old+1,R3
28A 9220 010A STS adc_old,R2
(0159) TIMSK2=0x00;
28C 2422 CLR R2
28D 9220 0070 STS 0x0070,R2
(0160) PORTE=seg_table[i]; //点亮个位
28F E58C LDI R24,0x5C
290 E090 LDI R25,0
291 91E0 0104 LDS R30,i
293 91F0 0105 LDS R31,i+1
295 0FE8 ADD R30,R24
296 1FF9 ADC R31,R25
297 9024 LPM R2,261(Z)
298 B82E OUT 0x0E,R2
(0161) PORTB=0xef; //点亮个位
299 EE8F LDI R24,0xEF
29A B985 OUT 0x05,R24
(0162) delay_ms(1);
29B E001 LDI R16,1
29C E010 LDI R17,0
29D 940E 0064 CALL _delay_ms
(0163) PORTE=seg_table[j]&0x7f; //点亮十位及其小数点
29F E58C LDI R24,0x5C
2A0 E090 LDI R25,0
2A1 91E0 0106 LDS R30,j
2A3 91F0 0107 LDS R31,j+1
2A5 0FE8 ADD R30,R24
2A6 1FF9 ADC R31,R25
2A7 9184 LPM R24,263(Z)
2A8 778F ANDI R24,0x7F
2A9 B98E OUT 0x0E,R24
(0164) PORTB=0XDF; //点亮十位
2AA ED8F LDI R24,0xDF
2AB B985 OUT 0x05,R24
(0165) delay_ms(1);
2AC E001 LDI R16,1
2AD E010 LDI R17,0
2AE 940E 0064 CALL _delay_ms
(0166) PORTE=seg_table[k]; //点亮百位
2B0 E58C LDI R24,0x5C
2B1 E090 LDI R25,0
2B2 91E0 0108 LDS R30,k
2B4 91F0 0109 LDS R31,k+1
2B6 0FE8 ADD R30,R24
2B7 1FF9 ADC R31,R25
2B8 9024 LPM R2,265(Z)
2B9 B82E OUT 0x0E,R2
(0167) PORTB=0XBF; //点亮百位
2BA EB8F LDI R24,0xBF
2BB B985 OUT 0x05,R24
(0168) delay_ms(1);
2BC E001 LDI R16,1
2BD E010 LDI R17,0
2BE 940E 0064 CALL _delay_ms
(0169) adc_old=adc_rel;
2C0 9020 010C LDS R2,adc_rel
2C2 9030 010D LDS R3,adc_rel+1
2C4 9230 010B STS adc_old+1,R3
2C6 9220 010A STS adc_old,R2
(0170) if(s2)
2C8 9140 010A LDS R20,adc_old
2CA 9150 010B LDS R21,adc_old+1
2CC E880 LDI R24,0x80
2CD E091 LDI R25,1
2CE 1784 CP R24,R20
2CF 0795 CPC R25,R21
2D0 F008 BCS 0x02D2
2D1 C051 RJMP 0x0323
2D2 3240 CPI R20,0x20
2D3 E0E2 LDI R30,2
2D4 075E CPC R21,R30
2D5 F008 BCS 0x02D7
2D6 C04C RJMP 0x0323
(0171) {
(0172) int x;
(0173) for(x=50;x>0;x--)
2D7 E342 LDI R20,0x32
2D8 E050 LDI R21,0
(0174) //display();
(0175) {
(0176) PORTE=seg_table[i];
2D9 E58C LDI R24,0x5C
2DA E090 LDI R25,0
2DB 91E0 0104 LDS R30,i
2DD 91F0 0105 LDS R31,i+1
2DF 0FE8 ADD R30,R24
2E0 1FF9 ADC R31,R25
2E1 9024 LPM R2,261(Z)
2E2 B82E OUT 0x0E,R2
(0177) PORTB=0xef;
2E3 EE8F LDI R24,0xEF
2E4 B985 OUT 0x05,R24
(0178) delay_ms(1);
2E5 E001 LDI R16,1
2E6 E010 LDI R17,0
2E7 940E 0064 CALL _delay_ms
(0179) PORTE=seg_table[j]&0x7f;
2E9 E58C LDI R24,0x5C
2EA E090 LDI R25,0
2EB 91E0 0106 LDS R30,j
2ED 91F0 0107 LDS R31,j+1
2EF 0FE8 ADD R30,R24
2F0 1FF9 ADC R31,R25
2F1 9184 LPM R24,263(Z)
2F2 778F ANDI R24,0x7F
2F3 B98E OUT 0x0E,R24
(0180) PORTB=0XDF;
2F4 ED8F LDI R24,0xDF
2F5 B985 OUT 0x05,R24
(0181) delay_ms(1);
2F6 E001 LDI R16,1
2F7 E010 LDI R17,0
2F8 940E 0064 CALL _delay_ms
(0182) PORTE=seg_table[k];
2FA E58C LDI R24,0x5C
2FB E090 LDI R25,0
2FC 91E0 0108 LDS R30,k
2FE 91F0 0109 LDS R31,k+1
300 0FE8 ADD R30,R24
301 1FF9 ADC R31,R25
302 9024 LPM R2,265(Z)
303 B82E OUT 0x0E,R2
(0183) PORTB=0XBF;
304 EB8F LDI R24,0xBF
305 B985 OUT 0x05,R24
(0184) delay_ms(1);
306 E001 LDI R16,1
307 E010 LDI R17,0
308 940E 0064 CALL _delay_ms
30A 5041 SUBI R20,1
30B 4050 SBCI R21,0
30C 2422 CLR R2
30D 2433 CLR R3
30E 1624 CP R2,R20
30F 0635 CPC R3,R21
310 F40C BGE 0x0312
311 CFC7 RJMP 0x02D9
(0185) }
(0186) j++; //加1
312 9180 0106 LDS R24,j
314 9190 0107 LDS R25,j+1
316 9601 ADIW R24,1
317 9390 0107 STS j+1,R25
319 9380 0106 STS j,R24
(0187) if(j==6)
31B 3086 CPI R24,6
31C E0E0 LDI R30,0
31D 079E CPC R25,R30
31E F421 BNE 0x0323
(0188) {
(0189) j=0;
31F 9230 0107 STS j+1,R3
321 9220 0106 STS j,R2
(0190) }
(0191) }
(0192) if(s4)
323 9140 010A LDS R20,adc_old
325 9150 010B LDS R21,adc_old+1
327 ED80 LDI R24,0xD0
328 E092 LDI R25,2
329 1784 CP R24,R20
32A 0795 CPC R25,R21
32B F008 BCS 0x032D
32C C053 RJMP 0x0380
32D 3140 CPI R20,0x10
32E E0E3 LDI R30,3
32F 075E CPC R21,R30
330 F008 BCS 0x0332
331 C04E RJMP 0x0380
(0193) {
(0194) int x;
(0195) for(x=50;x>0;x--) //消抖且保证LED显示正常
332 E342 LDI R20,0x32
333 E050 LDI R21,0
(0196) {
(0197) PORTE=seg_table[i]; //点亮个位
334 E58C LDI R24,0x5C
335 E090 LDI R25,0
336 91E0 0104 LDS R30,i
338 91F0 0105 LDS R31,i+1
33A 0FE8 ADD R30,R24
33B 1FF9 ADC R31,R25
33C 9024 LPM R2,261(Z)
33D B82E OUT 0x0E,R2
(0198) PORTB=0xef; //点亮个位
33E EE8F LDI R24,0xEF
33F B985 OUT 0x05,R24
(0199) delay_ms(1);
340 E001 LDI R16,1
341 E010 LDI R17,0
342 940E 0064 CALL _delay_ms
(0200) PORTE=seg_table[j]&0x7f; //点亮十位及其小数点
344 E58C LDI R24,0x5C
345 E090 LDI R25,0
346 91E0 0106 LDS R30,j
348 91F0 0107 LDS R31,j+1
34A 0FE8 ADD R30,R24
34B 1FF9 ADC R31,R25
34C 9184 LPM R24,263(Z)
34D 778F ANDI R24,0x7F
34E B98E OUT 0x0E,R24
(0201) PORTB=0XDF; //点亮十位
34F ED8F LDI R24,0xDF
350 B985 OUT 0x05,R24
(0202) delay_ms(1);
351 E001 LDI R16,1
352 E010 LDI R17,0
353 940E 0064 CALL _delay_ms
(0203) PORTE=seg_table[k]; //点亮百位
355 E58C LDI R24,0x5C
356 E090 LDI R25,0
357 91E0 0108 LDS R30,k
359 91F0 0109 LDS R31,k+1
35B 0FE8 ADD R30,R24
35C 1FF9 ADC R31,R25
35D 9024 LPM R2,265(Z)
35E B82E OUT 0x0E,R2
(0204) PORTB=0XBF; //点亮百位
35F EB8F LDI R24,0xBF
360 B985 OUT 0x05,R24
(0205) delay_ms(1);
361 E001 LDI R16,1
362 E010 LDI R17,0
363 940E 0064 CALL _delay_ms
365 5041 SUBI R20,1
366 4050 SBCI R21,0
367 2422 CLR R2
368 2433 CLR R3
369 1624 CP R2,R20
36A 0635 CPC R3,R21
36B F40C BGE 0x036D
36C CFC7 RJMP 0x0334
(0206) }
(0207) j--; //减1
36D 9180 0106 LDS R24,j
36F 9190 0107 LDS R25,j+1
371 9701 SBIW R24,1
372 9390 0107 STS j+1,R25
374 9380 0106 STS j,R24
(0208) if(j==-1)
376 3F8F CPI R24,0xFF
377 EFEF LDI R30,0xFF
378 079E CPC R25,R30
379 F431 BNE 0x0380
(0209) {
(0210) j=5;
37A E085 LDI R24,5
37B E090 LDI R25,0
37C 9390 0107 STS j+1,R25
37E 9380 0106 STS j,R24
380 9180 010A LDS R24,adc_old
382 9190 010B LDS R25,adc_old+1
384 3083 CPI R24,3
385 E0E0 LDI R30,0
386 079E CPC R25,R30
387 F008 BCS 0x0389
388 CEFB RJMP 0x0284
(0211) }
(0212) }
(0213) }
(0214) delay_ms(200);
389 EC08 LDI R16,0xC8
38A E010 LDI R17,0
38B 940E 0064 CALL _delay_ms
(0215) adc_old=adc_rel;
38D 9020 010C LDS R2,adc_rel
38F 9030 010D LDS R3,adc_rel+1
391 9230 010B STS adc_old+1,R3
393 9220 010A STS adc_old,R2
395 C0FC RJMP 0x0492
(0216)
(0217) //******百位处理
(0218) while(!s1) //同上
(0219) {
(0220) adc_old=adc_rel;
396 9020 010C LDS R2,adc_rel
398 9030 010D LDS R3,adc_rel+1
39A 9230 010B STS adc_old+1,R3
39C 9220 010A STS adc_old,R2
(0221) TIMSK2=0x00;
39E 2422 CLR R2
39F 9220 0070 STS 0x0070,R2
(0222) PORTE=seg_table[i]; //点亮个位
3A1 E58C LDI R24,0x5C
3A2 E090 LDI R25,0
3A3 91E0 0104 LDS R30,i
3A5 91F0 0105 LDS R31,i+1
3A7 0FE8 ADD R30,R24
3A8 1FF9 ADC R31,R25
3A9 9024 LPM R2,261(Z)
3AA B82E OUT 0x0E,R2
(0223) PORTB=0xef; //点亮个位
3AB EE8F LDI R24,0xEF
3AC B985 OUT 0x05,R24
(0224) delay_ms(1);
3AD E001 LDI R16,1
3AE E010 LDI R17,0
3AF 940E 0064 CALL _delay_ms
(0225) PORTE=seg_table[j]; //点亮十位
3B1 E58C LDI R24,0x5C
3B2 E090 LDI R25,0
3B3 91E0 0106 LDS R30,j
3B5 91F0 0107 LDS R31,j+1
3B7 0FE8 ADD R30,R24
3B8 1FF9 ADC R31,R25
3B9 9024 LPM R2,263(Z)
3BA B82E OUT 0x0E,R2
(0226) PORTB=0XDF; //点亮十位
3BB ED8F LDI R24,0xDF
3BC B985 OUT 0x05,R24
(0227) delay_ms(1);
3BD E001 LDI R16,1
3BE E010 LDI R17,0
3BF 940E 0064 CALL _delay_ms
(0228) PORTE=seg_table[k]&0x7f; //点亮百位及其小数点
3C1 E58C LDI R24,0x5C
3C2 E090 LDI R25,0
3C3 91E0 0108 LDS R30,k
3C5 91F0 0109 LDS R31,k+1
3C7 0FE8 ADD R30,R24
3C8 1FF9 ADC R31,R25
3C9 9184 LPM R24,265(Z)
3CA 778F ANDI R24,0x7F
3CB B98E OUT 0x0E,R24
(0229) PORTB=0XBF; //点亮百位
3CC EB8F LDI R24,0xBF
3CD B985 OUT 0x05,R24
(0230) delay_ms(1);
3CE E001 LDI R16,1
3CF E010 LDI R17,0
3D0 940E 0064 CALL _delay_ms
(0231) adc_old=adc_rel;
3D2 9020 010C LDS R2,adc_rel
3D4 9030 010D LDS R3,adc_rel+1
3D6 9230 010B STS adc_old+1,R3
3D8 9220 010A STS adc_old,R2
(0232) if(s2)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -