📄 rtc.lis
字号:
0650 8491 lpm R24,Z
0652 8F77 andi R24,127
0654 8EB9 out 0xe,R24
0656 .dbline 229
0656 ; PORTB=0XBF; //点亮百位
0656 8FEB ldi R24,191
0658 85B9 out 0x5,R24
065A .dbline 230
065A ; delay_ms(1);
065A 01E0 ldi R16,1
065C 10E0 ldi R17,0
065E 0E940000 xcall _delay_ms
0662 .dbline 231
0662 ; adc_old=adc_rel;
0662 20900200 lds R2,_adc_rel
0666 30900300 lds R3,_adc_rel+1
066A 30920100 sts _adc_old+1,R3
066E 20920000 sts _adc_old,R2
0672 .dbline 232
0672 ; if(s2)
0672 40910000 lds R20,_adc_old
0676 50910100 lds R21,_adc_old+1
067A 80E8 ldi R24,384
067C 91E0 ldi R25,1
067E 8417 cp R24,R20
0680 9507 cpc R25,R21
0682 08F0 brlo X47
0684 51C0 xjmp L61
0686 X47:
0686 X22:
0686 4032 cpi R20,32
0688 E2E0 ldi R30,2
068A 5E07 cpc R21,R30
068C 08F0 brlo X48
068E 4CC0 xjmp L61
0690 X48:
0690 X23:
0690 .dbline 233
0690 ; {
0690 .dbline 235
0690 ; int x;
0690 ; for(x=50;x>0;x--)
0690 42E3 ldi R20,50
0692 50E0 ldi R21,0
0694 L63:
0694 .dbline 236
0694 ; {
0694 .dbline 237
0694 ; PORTE=seg_table[i]; //点亮个位及其小数点
0694 80E0 ldi R24,<_seg_table
0696 90E0 ldi R25,>_seg_table
0698 E0910000 lds R30,_i
069C F0910100 lds R31,_i+1
06A0 E80F add R30,R24
06A2 F91F adc R31,R25
06A4 2490 lpm R2,Z
06A6 2EB8 out 0xe,R2
06A8 .dbline 238
06A8 ; PORTB=0xef; //点亮个位
06A8 8FEE ldi R24,239
06AA 85B9 out 0x5,R24
06AC .dbline 239
06AC ; delay_ms(1);
06AC 01E0 ldi R16,1
06AE 10E0 ldi R17,0
06B0 0E940000 xcall _delay_ms
06B4 .dbline 240
06B4 ; PORTE=seg_table[j]; //点亮十位
06B4 80E0 ldi R24,<_seg_table
06B6 90E0 ldi R25,>_seg_table
06B8 E0910200 lds R30,_j
06BC F0910300 lds R31,_j+1
06C0 E80F add R30,R24
06C2 F91F adc R31,R25
06C4 2490 lpm R2,Z
06C6 2EB8 out 0xe,R2
06C8 .dbline 241
06C8 ; PORTB=0XDF; //点亮十位
06C8 8FED ldi R24,223
06CA 85B9 out 0x5,R24
06CC .dbline 242
06CC ; delay_ms(1);
06CC 01E0 ldi R16,1
06CE 10E0 ldi R17,0
06D0 0E940000 xcall _delay_ms
06D4 .dbline 243
06D4 ; PORTE=seg_table[k]&0x7f; //点亮百位
06D4 80E0 ldi R24,<_seg_table
06D6 90E0 ldi R25,>_seg_table
06D8 E0910400 lds R30,_k
06DC F0910500 lds R31,_k+1
06E0 E80F add R30,R24
06E2 F91F adc R31,R25
06E4 8491 lpm R24,Z
06E6 8F77 andi R24,127
06E8 8EB9 out 0xe,R24
06EA .dbline 244
06EA ; PORTB=0XBF; //点亮百位
06EA 8FEB ldi R24,191
06EC 85B9 out 0x5,R24
06EE .dbline 245
06EE ; delay_ms(1);
06EE 01E0 ldi R16,1
06F0 10E0 ldi R17,0
06F2 0E940000 xcall _delay_ms
06F6 .dbline 246
06F6 ; }
06F6 L64:
06F6 .dbline 235
06F6 4150 subi R20,1
06F8 5040 sbci R21,0
06FA .dbline 235
06FA 2224 clr R2
06FC 3324 clr R3
06FE 2416 cp R2,R20
0700 3506 cpc R3,R21
0702 0CF4 brge X49
0704 C7CF xjmp L63
0706 X49:
0706 X24:
0706 .dbline 247
0706 ; k++; //加1
0706 80910400 lds R24,_k
070A 90910500 lds R25,_k+1
070E 0196 adiw R24,1
0710 90930500 sts _k+1,R25
0714 80930400 sts _k,R24
0718 .dbline 248
0718 ; if(k==10)
0718 8A30 cpi R24,10
071A E0E0 ldi R30,0
071C 9E07 cpc R25,R30
071E 21F4 brne L67
0720 X25:
0720 .dbline 249
0720 ; {
0720 .dbline 250
0720 ; k=0;
0720 30920500 sts _k+1,R3
0724 20920400 sts _k,R2
0728 .dbline 251
0728 ; }
0728 L67:
0728 .dbline 252
0728 ; }
0728 L61:
0728 .dbline 253
0728 ; if(s4)
0728 40910000 lds R20,_adc_old
072C 50910100 lds R21,_adc_old+1
0730 80ED ldi R24,720
0732 92E0 ldi R25,2
0734 8417 cp R24,R20
0736 9507 cpc R25,R21
0738 08F0 brlo X50
073A 53C0 xjmp L69
073C X50:
073C X26:
073C 4031 cpi R20,16
073E E3E0 ldi R30,3
0740 5E07 cpc R21,R30
0742 08F0 brlo X51
0744 4EC0 xjmp L69
0746 X51:
0746 X27:
0746 .dbline 254
0746 ; {int x;
0746 .dbline 255
0746 ; for(x=50;x>0;x--)
0746 42E3 ldi R20,50
0748 50E0 ldi R21,0
074A L71:
074A .dbline 256
074A ; {
074A .dbline 257
074A ; PORTE=seg_table[i]; //点亮个位及其小数点
074A 80E0 ldi R24,<_seg_table
074C 90E0 ldi R25,>_seg_table
074E E0910000 lds R30,_i
0752 F0910100 lds R31,_i+1
0756 E80F add R30,R24
0758 F91F adc R31,R25
075A 2490 lpm R2,Z
075C 2EB8 out 0xe,R2
075E .dbline 258
075E ; PORTB=0xef; //点亮个位
075E 8FEE ldi R24,239
0760 85B9 out 0x5,R24
0762 .dbline 259
0762 ; delay_ms(1);
0762 01E0 ldi R16,1
0764 10E0 ldi R17,0
0766 0E940000 xcall _delay_ms
076A .dbline 260
076A ; PORTE=seg_table[j]; //点亮十位
076A 80E0 ldi R24,<_seg_table
076C 90E0 ldi R25,>_seg_table
076E E0910200 lds R30,_j
0772 F0910300 lds R31,_j+1
0776 E80F add R30,R24
0778 F91F adc R31,R25
077A 2490 lpm R2,Z
077C 2EB8 out 0xe,R2
077E .dbline 261
077E ; PORTB=0XDF; //点亮十位
077E 8FED ldi R24,223
0780 85B9 out 0x5,R24
0782 .dbline 262
0782 ; delay_ms(1);
0782 01E0 ldi R16,1
0784 10E0 ldi R17,0
0786 0E940000 xcall _delay_ms
078A .dbline 263
078A ; PORTE=seg_table[k]&0x7f; //点亮百位
078A 80E0 ldi R24,<_seg_table
078C 90E0 ldi R25,>_seg_table
078E E0910400 lds R30,_k
0792 F0910500 lds R31,_k+1
0796 E80F add R30,R24
0798 F91F adc R31,R25
079A 8491 lpm R24,Z
079C 8F77 andi R24,127
079E 8EB9 out 0xe,R24
07A0 .dbline 264
07A0 ; PORTB=0XBF; //点亮百位
07A0 8FEB ldi R24,191
07A2 85B9 out 0x5,R24
07A4 .dbline 265
07A4 ; delay_ms(1);
07A4 01E0 ldi R16,1
07A6 10E0 ldi R17,0
07A8 0E940000 xcall _delay_ms
07AC .dbline 266
07AC ; }
07AC L72:
07AC .dbline 255
07AC 4150 subi R20,1
07AE 5040 sbci R21,0
07B0 .dbline 255
07B0 2224 clr R2
07B2 3324 clr R3
07B4 2416 cp R2,R20
07B6 3506 cpc R3,R21
07B8 0CF4 brge X52
07BA C7CF xjmp L71
07BC X52:
07BC X28:
07BC .dbline 267
07BC ; k--; //减1
07BC 80910400 lds R24,_k
07C0 90910500 lds R25,_k+1
07C4 0197 sbiw R24,1
07C6 90930500 sts _k+1,R25
07CA 80930400 sts _k,R24
07CE .dbline 268
07CE ; if(k==-1)
07CE 8F3F cpi R24,255
07D0 EFEF ldi R30,255
07D2 9E07 cpc R25,R30
07D4 31F4 brne L75
07D6 X29:
07D6 .dbline 269
07D6 ; {
07D6 .dbline 270
07D6 ; k=9;
07D6 89E0 ldi R24,9
07D8 90E0 ldi R25,0
07DA 90930500 sts _k+1,R25
07DE 80930400 sts _k,R24
07E2 .dbline 271
07E2 ; }
07E2 L75:
07E2 .dbline 272
07E2 ; }
07E2 L69:
07E2 .dbline 273
07E2 ; }
07E2 L59:
07E2 .dbline 218
07E2 80910000 lds R24,_adc_old
07E6 90910100 lds R25,_adc_old+1
07EA 8330 cpi R24,3
07EC E0E0 ldi R30,0
07EE 9E07 cpc R25,R30
07F0 08F0 brlo X53
07F2 FBCE xjmp L58
07F4 X53:
07F4 X30:
07F4 08C0 xjmp L78
07F6 L77:
07F6 .dbline 275
07F6 ;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -