⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bt.lis

📁 AVR ICC基于AVR单片机的LED显示程序!
💻 LIS
📖 第 1 页 / 共 5 页
字号:
 05F0 80932B00          sts _i,R24
 05F4 0EC0              rjmp L129
 05F6           L128:
 05F6                   .dbline 178
 05F6                   .dbline 178
 05F6 80E0              ldi R24,<_tm
 05F8 90E0              ldi R25,>_tm
 05FA E0912B00          lds R30,_i
 05FE FF27              clr R31
 0600 E80F              add R30,R24
 0602 F91F              adc R31,R25
 0604 8BE0              ldi R24,11
 0606 8083              std z+0,R24
 0608                   .dbline 178
 0608 80912B00          lds R24,_i
 060C 8150              subi R24,1
 060E 80932B00          sts _i,R24
 0612                   .dbline 178
 0612           L129:
 0612                   .dbline 177
 0612           ; while(i>0&&tm[i]==0)
 0612 2224              clr R2
 0614 30902B00          lds R3,_i
 0618 2314              cp R2,R3
 061A 48F4              brsh L131
 061C 80E0              ldi R24,<_tm
 061E 90E0              ldi R25,>_tm
 0620 E32D              mov R30,R3
 0622 FF27              clr R31
 0624 E80F              add R30,R24
 0626 F91F              adc R31,R25
 0628 2080              ldd R2,z+0
 062A 2220              tst R2
 062C 21F3              breq L128
 062E           L131:
 062E                   .dbline 179
 062E           ; {tm[i]=11;i--;}
 062E           ; A();
 062E 36DD              rcall _A
 0630                   .dbline -2
 0630           L124:
 0630                   .dbline 0 ; func end
 0630 0895              ret
 0632                   .dbend
 0632                   .dbfunc e read _read fV
                        .even
 0632           _read::
 0632                   .dbline -1
 0632                   .dbline 184
 0632           ; }
 0632           ; 
 0632           ; 
 0632           ; void read(void)
 0632           ; {
 0632                   .dbline 186
 0632           ; 
 0632           ; date[0]=EEPROMread(19);  WDR(); // en 
 0632 03E1              ldi R16,19
 0634 10E0              ldi R17,0
 0636 00D0              rcall _EEPROMread
 0638 00931200          sts _date,R16
 063C                   .dbline 186
 063C A895              wdr
 063E                   .dbline 187
 063E           ; date[1]=EEPROMread(21);  WDR(); // hour 
 063E 05E1              ldi R16,21
 0640 10E0              ldi R17,0
 0642 00D0              rcall _EEPROMread
 0644 00931300          sts _date+1,R16
 0648                   .dbline 187
 0648 A895              wdr
 064A                   .dbline 188
 064A           ; date[2]=EEPROMread(23);  WDR(); // min  
 064A 07E1              ldi R16,23
 064C 10E0              ldi R17,0
 064E 00D0              rcall _EEPROMread
 0650 00931400          sts _date+2,R16
 0654                   .dbline 188
 0654 A895              wdr
 0656                   .dbline 189
 0656           ; date[3]=EEPROMread(25);  WDR(); // set h
 0656 09E1              ldi R16,25
 0658 10E0              ldi R17,0
 065A 00D0              rcall _EEPROMread
 065C 00931500          sts _date+3,R16
 0660                   .dbline 189
 0660 A895              wdr
 0662                   .dbline 190
 0662           ; date[4]=EEPROMread(27);  WDR(); // set m
 0662 0BE1              ldi R16,27
 0664 10E0              ldi R17,0
 0666 00D0              rcall _EEPROMread
 0668 00931600          sts _date+4,R16
 066C                   .dbline 190
 066C A895              wdr
 066E                   .dbline 191
 066E           ; date[5]=EEPROMread(29);  WDR(); // long
 066E 0DE1              ldi R16,29
 0670 10E0              ldi R17,0
 0672 00D0              rcall _EEPROMread
 0674 00931700          sts _date+5,R16
 0678                   .dbline 191
 0678 A895              wdr
 067A                   .dbline 192
 067A           ; date[6]=EEPROMread(31);  WDR(); // bee
 067A 0FE1              ldi R16,31
 067C 10E0              ldi R17,0
 067E 00D0              rcall _EEPROMread
 0680 00931800          sts _date+6,R16
 0684                   .dbline 192
 0684 A895              wdr
 0686                   .dbline 193
 0686           ; date[7]=EEPROMread(33);  WDR(); //win
 0686 01E2              ldi R16,33
 0688 10E0              ldi R17,0
 068A 00D0              rcall _EEPROMread
 068C 00931900          sts _date+7,R16
 0690                   .dbline 193
 0690 A895              wdr
 0692                   .dbline -2
 0692           L132:
 0692                   .dbline 0 ; func end
 0692 0895              ret
 0694                   .dbend
 0694                   .dbfunc e write _write fV
                        .even
 0694           _write::
 0694                   .dbline -1
 0694                   .dbline 197
 0694           ; }
 0694           ; 
 0694           ; void write(void)
 0694           ; {
 0694                   .dbline 198
 0694           ; EEPROMwrite(19,date[0]); WDR();
 0694 20911200          lds R18,_date
 0698 03E1              ldi R16,19
 069A 10E0              ldi R17,0
 069C 00D0              rcall _EEPROMwrite
 069E                   .dbline 198
 069E A895              wdr
 06A0                   .dbline 199
 06A0           ; EEPROMwrite(21,date[1]); WDR();
 06A0 20911300          lds R18,_date+1
 06A4 05E1              ldi R16,21
 06A6 10E0              ldi R17,0
 06A8 00D0              rcall _EEPROMwrite
 06AA                   .dbline 199
 06AA A895              wdr
 06AC                   .dbline 200
 06AC           ; EEPROMwrite(23,date[2]); WDR();
 06AC 20911400          lds R18,_date+2
 06B0 07E1              ldi R16,23
 06B2 10E0              ldi R17,0
 06B4 00D0              rcall _EEPROMwrite
 06B6                   .dbline 200
 06B6 A895              wdr
 06B8                   .dbline 201
 06B8           ; EEPROMwrite(25,date[3]); WDR();
 06B8 20911500          lds R18,_date+3
 06BC 09E1              ldi R16,25
 06BE 10E0              ldi R17,0
 06C0 00D0              rcall _EEPROMwrite
 06C2                   .dbline 201
 06C2 A895              wdr
 06C4                   .dbline 202
 06C4           ; EEPROMwrite(27,date[4]); WDR();
 06C4 20911600          lds R18,_date+4
 06C8 0BE1              ldi R16,27
 06CA 10E0              ldi R17,0
 06CC 00D0              rcall _EEPROMwrite
 06CE                   .dbline 202
 06CE A895              wdr
 06D0                   .dbline 203
 06D0           ; EEPROMwrite(29,date[5]); WDR();
 06D0 20911700          lds R18,_date+5
 06D4 0DE1              ldi R16,29
 06D6 10E0              ldi R17,0
 06D8 00D0              rcall _EEPROMwrite
 06DA                   .dbline 203
 06DA A895              wdr
 06DC                   .dbline 204
 06DC           ; EEPROMwrite(31,date[6]); WDR();
 06DC 20911800          lds R18,_date+6
 06E0 0FE1              ldi R16,31
 06E2 10E0              ldi R17,0
 06E4 00D0              rcall _EEPROMwrite
 06E6                   .dbline 204
 06E6 A895              wdr
 06E8                   .dbline 205
 06E8           ; EEPROMwrite(33,date[7]); WDR();
 06E8 20911900          lds R18,_date+7
 06EC 01E2              ldi R16,33
 06EE 10E0              ldi R17,0
 06F0 00D0              rcall _EEPROMwrite
 06F2                   .dbline 205
 06F2 A895              wdr
 06F4                   .dbline -2
 06F4           L140:
 06F4                   .dbline 0 ; func end
 06F4 0895              ret
 06F6                   .dbend
 06F6                   .dbfunc e main _main fV
 06F6           ;           menu -> R20
                        .even
 06F6           _main::
 06F6                   .dbline -1
 06F6                   .dbline 211
 06F6           ; } 
 06F6           ; 
 06F6           ; 
 06F6           ; 
 06F6           ; void main()
 06F6           ; {
 06F6                   .dbline 212
 06F6           ; uchar menu=0;
 06F6 4427              clr R20
 06F8                   .dbline 214
 06F8           ; 
 06F8           ; OSCCAL=0x89;//EEPROMread(0x10);
 06F8 89E8              ldi R24,137
 06FA 81BF              out 0x31,R24
 06FC                   .dbline 215
 06FC           ; init_devices();
 06FC 3CDE              rcall _init_devices
 06FE                   .dbline 216
 06FE           ; delay(100);
 06FE 04E6              ldi R16,100
 0700 10E0              ldi R17,0
 0702 52DD              rcall _delay
 0704 07C0              rjmp L150
 0706           L149:
 0706                   .dbline 220
 0706                   .dbline 221
 0706 F894              cli
 0708                   .dbline 222
 0708 0DE9              ldi R16,4765
 070A 12E1              ldi R17,18
 070C 8FDD              rcall _show4
 070E                   .dbline 223
 070E 00E1              ldi R16,10000
 0710 17E2              ldi R17,39
 0712 4ADD              rcall _delay
 0714                   .dbline 224
 0714           L150:
 0714                   .dbline 219
 0714           ; 
 0714           ; 
 0714           ; while(1)
 0714 F8CF              rjmp L149
 0716           X2:
 0716                   .dbline 227
 0716           ; {
 0716           ; CLI();
 0716           ; show4(4765);
 0716           ; delay(10000);
 0716           ; }
 0716           ; 
 0716           ; 
 0716           ; read();
 0716 8DDF              rcall _read
 0718                   .dbline 228
 0718           ; if(EEPROMread(33)==255) 
 0718 01E2              ldi R16,33
 071A 10E0              ldi R17,0
 071C 00D0              rcall _EEPROMread
 071E 0F3F              cpi R16,255
 0720 09F0              breq X8
 0722 4AC1              rjmp L162
 0724           X8:
 0724                   .dbline 229
 0724           ;  {
 0724                   .dbline 230
 0724           ;  date[0]=1;
 0724 81E0              ldi R24,1
 0726 80931200          sts _date,R24
 072A                   .dbline 231
 072A           ;  date[1]=21;
 072A 85E1              ldi R24,21
 072C 80931300          sts _date+1,R24
 0730                   .dbline 232
 0730           ;  date[2]=3;
 0730 83E0              ldi R24,3
 0732 80931400          sts _date+2,R24
 0736                   .dbline 233
 0736           ;  date[3]=1;
 0736 81E0              ldi R24,1
 0738 80931500          sts _date+3,R24
 073C                   .dbline 234
 073C           ;  date[4]=0; 
 073C 2224              clr R2
 073E 20921600          sts _date+4,R2
 0742                   .dbline 235
 0742           ;  date[5]=20;
 0742 84E1              ldi R24,20
 0744 80931700          sts _date+5,R24
 0748                   .dbline 236
 0748           ;  date[6]=1; 
 0748 81E0              ldi R24,1
 074A 80931800          sts _date+6,R24
 074E                   .dbline 237
 074E           ;  date[7]=1;
 074E 80931900          sts _date+7,R24
 0752                   .dbline 238
 0752           ;  write();
 0752 A0DF              rcall _write
 0754                   .dbline 239
 0754           ;  }
 0754 31C1              rjmp L162
 0756           L161:
 0756                   .dbline 242
 0756           ;  
 0756           ; while(1)
 0756           ; {
 0756                   .dbline 243
 0756           ; if(1) 
 0756                   .dbline 244
 0756           ; {
 0756                   .dbline 245
 0756           ; s1=0;
 0756 2224              clr R2
 0758 20922700          sts _s1,R2
 075C 01C0              rjmp L167
 075E           L166:
 075E                   .dbline 246
 075E                   .dbline 246
 075E 8CDE              rcall _a
 0760                   .dbline 246
 0760           L167:
 0760                   .dbline 246
 0760           ; while(s1<5) {a();}
 0760 80912700          lds R24,_s1
 0764 8530              cpi R24,5
 0766 D8F3              brlo L166
 0768                   .dbline 247
 0768           ; }
 0768           L164:
 0768                   .dbline 248
 0768           ; WDR();
 0768 A895              wdr
 076A                   .dbline 250
 076A           ; 
 076A           ; if(start)
 076A 20902100          lds R2,_start
 076E 2220              tst R2
 0770 09F4              brne X9
 0772 59C0              rjmp L169
 0774           X9:
 0774                   .dbline 251
 0774           ;  {
 0774                   .dbline 252
 0774           ;  bee(300,400);
 0774 20E9              ldi R18,400
 0776 31E0              ldi R19,1
 0778 0CE2              ldi R16,300
 077A 11E0              ldi R17,1
 077C E0DC              rcall _bee
 077E                   .dbline 253
 077E           ;  s1=0;m1=0;out1;
 077E 2224              clr R2
 0780 20922700          sts _s1,R2
 0784                   .dbl

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -