📄 rtc.lis
字号:
02D6 .dbline 129
02D6 ; i=0;
02D6 30920100 sts _i+1,R3
02DA 20920000 sts _i,R2
02DE .dbline 130
02DE ; }
02DE L29:
02DE .dbline 131
02DE ; }
02DE L23:
02DE .dbline 132
02DE ; if(s4) //是否为S4 ,如果是S4,个位减1
02DE 20900000 lds R2,_adc_old
02E2 30900100 lds R3,_adc_old+1
02E6 80ED ldi R24,720
02E8 92E0 ldi R25,2
02EA 8215 cp R24,R2
02EC 9305 cpc R25,R3
02EE 08F0 brlo X36
02F0 54C0 xjmp L31
02F2 X36:
02F2 X8:
02F2 C101 movw R24,R2
02F4 8031 cpi R24,16
02F6 E3E0 ldi R30,3
02F8 9E07 cpc R25,R30
02FA 08F0 brlo X37
02FC 4EC0 xjmp L31
02FE X37:
02FE X9:
02FE .dbline 133
02FE ; {int x;
02FE .dbline 134
02FE ; for(x=50;x>0;x--) //消抖且保证LED显示正常
02FE 42E3 ldi R20,50
0300 50E0 ldi R21,0
0302 L33:
0302 .dbline 135
0302 ; {
0302 .dbline 136
0302 ; PORTE=seg_table[i]&0x7f; //点亮个位及其小数点
0302 80E0 ldi R24,<_seg_table
0304 90E0 ldi R25,>_seg_table
0306 E0910000 lds R30,_i
030A F0910100 lds R31,_i+1
030E E80F add R30,R24
0310 F91F adc R31,R25
0312 8491 lpm R24,Z
0314 8F77 andi R24,127
0316 8EB9 out 0xe,R24
0318 .dbline 137
0318 ; PORTB=0xef; //点亮个位
0318 8FEE ldi R24,239
031A 85B9 out 0x5,R24
031C .dbline 138
031C ; delay_ms(1);
031C 01E0 ldi R16,1
031E 10E0 ldi R17,0
0320 0E940000 xcall _delay_ms
0324 .dbline 139
0324 ; PORTE=seg_table[j]; //点亮十位
0324 80E0 ldi R24,<_seg_table
0326 90E0 ldi R25,>_seg_table
0328 E0910200 lds R30,_j
032C F0910300 lds R31,_j+1
0330 E80F add R30,R24
0332 F91F adc R31,R25
0334 2490 lpm R2,Z
0336 2EB8 out 0xe,R2
0338 .dbline 140
0338 ; PORTB=0XDF; //点亮十位
0338 8FED ldi R24,223
033A 85B9 out 0x5,R24
033C .dbline 141
033C ; delay_ms(1);
033C 01E0 ldi R16,1
033E 10E0 ldi R17,0
0340 0E940000 xcall _delay_ms
0344 .dbline 142
0344 ; PORTE=seg_table[k]; //点亮百位
0344 80E0 ldi R24,<_seg_table
0346 90E0 ldi R25,>_seg_table
0348 E0910400 lds R30,_k
034C F0910500 lds R31,_k+1
0350 E80F add R30,R24
0352 F91F adc R31,R25
0354 2490 lpm R2,Z
0356 2EB8 out 0xe,R2
0358 .dbline 143
0358 ; PORTB=0XBF; //点亮百位
0358 8FEB ldi R24,191
035A 85B9 out 0x5,R24
035C .dbline 144
035C ; delay_ms(1);
035C 01E0 ldi R16,1
035E 10E0 ldi R17,0
0360 0E940000 xcall _delay_ms
0364 .dbline 145
0364 ; }
0364 L34:
0364 .dbline 134
0364 4150 subi R20,1
0366 5040 sbci R21,0
0368 .dbline 134
0368 2224 clr R2
036A 3324 clr R3
036C 2416 cp R2,R20
036E 3506 cpc R3,R21
0370 0CF4 brge X38
0372 C7CF xjmp L33
0374 X38:
0374 X10:
0374 .dbline 146
0374 ; i--; //减1
0374 80910000 lds R24,_i
0378 90910100 lds R25,_i+1
037C 0197 sbiw R24,1
037E 90930100 sts _i+1,R25
0382 80930000 sts _i,R24
0386 .dbline 147
0386 ; if(i==-1)
0386 8F3F cpi R24,255
0388 EFEF ldi R30,255
038A 9E07 cpc R25,R30
038C 31F4 brne L37
038E X11:
038E .dbline 148
038E ; {
038E .dbline 149
038E ; i=9;
038E 89E0 ldi R24,9
0390 90E0 ldi R25,0
0392 90930100 sts _i+1,R25
0396 80930000 sts _i,R24
039A .dbline 150
039A ; }
039A L37:
039A .dbline 151
039A ; }
039A L31:
039A .dbline 152
039A ; }
039A L21:
039A .dbline 96
039A 80910000 lds R24,_adc_old
039E 90910100 lds R25,_adc_old+1
03A2 8330 cpi R24,3
03A4 E0E0 ldi R30,0
03A6 9E07 cpc R25,R30
03A8 08F0 brlo X39
03AA F9CE xjmp L20
03AC X39:
03AC X12:
03AC .dbline 153
03AC ; delay_ms(200);
03AC 08EC ldi R16,200
03AE 10E0 ldi R17,0
03B0 0E940000 xcall _delay_ms
03B4 .dbline 154
03B4 ; adc_old=adc_rel;
03B4 20900200 lds R2,_adc_rel
03B8 30900300 lds R3,_adc_rel+1
03BC 30920100 sts _adc_old+1,R3
03C0 20920000 sts _adc_old,R2
03C4 FCC0 xjmp L40
03C6 L39:
03C6 .dbline 157
03C6 ; //********十位处理
03C6 ; while(!s1) //同上
03C6 ; {
03C6 .dbline 158
03C6 ; adc_old=adc_rel;
03C6 20900200 lds R2,_adc_rel
03CA 30900300 lds R3,_adc_rel+1
03CE 30920100 sts _adc_old+1,R3
03D2 20920000 sts _adc_old,R2
03D6 .dbline 159
03D6 ; TIMSK2=0x00;
03D6 2224 clr R2
03D8 20927000 sts 112,R2
03DC .dbline 160
03DC ; PORTE=seg_table[i]; //点亮个位
03DC 80E0 ldi R24,<_seg_table
03DE 90E0 ldi R25,>_seg_table
03E0 E0910000 lds R30,_i
03E4 F0910100 lds R31,_i+1
03E8 E80F add R30,R24
03EA F91F adc R31,R25
03EC 2490 lpm R2,Z
03EE 2EB8 out 0xe,R2
03F0 .dbline 161
03F0 ; PORTB=0xef; //点亮个位
03F0 8FEE ldi R24,239
03F2 85B9 out 0x5,R24
03F4 .dbline 162
03F4 ; delay_ms(1);
03F4 01E0 ldi R16,1
03F6 10E0 ldi R17,0
03F8 0E940000 xcall _delay_ms
03FC .dbline 163
03FC ; PORTE=seg_table[j]&0x7f; //点亮十位及其小数点
03FC 80E0 ldi R24,<_seg_table
03FE 90E0 ldi R25,>_seg_table
0400 E0910200 lds R30,_j
0404 F0910300 lds R31,_j+1
0408 E80F add R30,R24
040A F91F adc R31,R25
040C 8491 lpm R24,Z
040E 8F77 andi R24,127
0410 8EB9 out 0xe,R24
0412 .dbline 164
0412 ; PORTB=0XDF; //点亮十位
0412 8FED ldi R24,223
0414 85B9 out 0x5,R24
0416 .dbline 165
0416 ; delay_ms(1);
0416 01E0 ldi R16,1
0418 10E0 ldi R17,0
041A 0E940000 xcall _delay_ms
041E .dbline 166
041E ; PORTE=seg_table[k]; //点亮百位
041E 80E0 ldi R24,<_seg_table
0420 90E0 ldi R25,>_seg_table
0422 E0910400 lds R30,_k
0426 F0910500 lds R31,_k+1
042A E80F add R30,R24
042C F91F adc R31,R25
042E 2490 lpm R2,Z
0430 2EB8 out 0xe,R2
0432 .dbline 167
0432 ; PORTB=0XBF; //点亮百位
0432 8FEB ldi R24,191
0434 85B9 out 0x5,R24
0436 .dbline 168
0436 ; delay_ms(1);
0436 01E0 ldi R16,1
0438 10E0 ldi R17,0
043A 0E940000 xcall _delay_ms
043E .dbline 169
043E ; adc_old=adc_rel;
043E 20900200 lds R2,_adc_rel
0442 30900300 lds R3,_adc_rel+1
0446 30920100 sts _adc_old+1,R3
044A 20920000 sts _adc_old,R2
044E .dbline 170
044E ; if(s2)
044E 40910000 lds R20,_adc_old
0452 50910100 lds R21,_adc_old+1
0456 80E8 ldi R24,384
0458 91E0 ldi R25,1
045A 8417 cp R24,R20
045C 9507 cpc R25,R21
045E 08F0 brlo X40
0460 51C0 xjmp L42
0462 X40:
0462 X13:
0462 4032 cpi R20,32
0464 E2E0 ldi R30,2
0466 5E07 cpc R21,R30
0468 08F0 brlo X41
046A 4CC0 xjmp L42
046C X41:
046C X14:
046C .dbline 171
046C ; {
046C .dbline 173
046C ; int x;
046C ; for(x=50;x>0;x--)
046C 42E3 ldi R20,50
046E 50E0 ldi R21,0
0470 L44:
0470 .dbline 175
0470 ; //display();
0470 ; {
0470 .dbline 176
0470 ; PORTE=seg_table[i];
0470 80E0 ldi R24,<_seg_table
0472 90E0 ldi R25,>_seg_table
0474 E0910000 lds R30,_i
0478 F0910100 lds R31,_i+1
047C E80F add R30,R24
047E F91F adc R31,R25
0480 2490 lpm R2,Z
0482 2EB8 out 0xe,R2
0484 .dbline 177
0484 ; PORTB=0xef;
0484 8FEE ldi R24,239
0486 85B9 out 0x5,R24
0488 .dbline 178
0488 ; delay_ms(1);
0488 01E0 ldi R16,1
048A 10E0 ldi R17,0
048C 0E940000 xcall _delay_ms
0490 .dbline 179
0490 ; PORTE=seg_table[j]&0x7f;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -