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

📄 main.lis

📁 EPPROM应用,测试程序,AVR内核,供初学者参考
💻 LIS
📖 第 1 页 / 共 3 页
字号:
 0188           ;           delay(50);
 0188 02E3              ldi R16,50
 018A F2DF              rcall _delay
 018C                   .dbline 160
 018C           ;       }
 018C           L33:
 018C                   .dbline 157
 018C A394              inc R10
 018E           L35:
 018E                   .dbline 157
 018E AC14              cp R10,R12
 0190 D8F3              brlo L32
 0192           X10:
 0192                   .dbline -2
 0192           L31:
 0192                   .dbline 0 ; func end
 0192 C990              ld R12,y+
 0194 A990              ld R10,y+
 0196 0895              ret
 0198                   .dbsym r tim1 12 c
 0198                   .dbsym r i 10 c
 0198                   .dbsym r time 10 c
 0198                   .dbend
 0198                   .dbfunc e delays _delays fV
 0198           ;           tim2 -> R12
 0198           ;              j -> R10
 0198           ;          time1 -> R10
                        .even
 0198           _delays::
 0198 AA92              st -y,R10
 019A CA92              st -y,R12
 019C A02E              mov R10,R16
 019E                   .dbline -1
 019E                   .dbline 163
 019E           ; }
 019E           ; void delays(u08 time1)
 019E           ; {
 019E                   .dbline 165
 019E           ;     u08 tim2,j;
 019E           ;       tim2=time1;
 019E CA2C              mov R12,R10
 01A0                   .dbline 166
 01A0           ;       for(j=0;j<tim2;j++)
 01A0 AA24              clr R10
 01A2 03C0              rjmp L40
 01A4           L37:
 01A4                   .dbline 167
 01A4           ;       {
 01A4                   .dbline 168
 01A4           ;           delayms(250);
 01A4 0AEF              ldi R16,250
 01A6 EADF              rcall _delayms
 01A8                   .dbline 169
 01A8           ;       }
 01A8           L38:
 01A8                   .dbline 166
 01A8 A394              inc R10
 01AA           L40:
 01AA                   .dbline 166
 01AA AC14              cp R10,R12
 01AC D8F3              brlo L37
 01AE           X11:
 01AE                   .dbline -2
 01AE           L36:
 01AE                   .dbline 0 ; func end
 01AE C990              ld R12,y+
 01B0 A990              ld R10,y+
 01B2 0895              ret
 01B4                   .dbsym r tim2 12 c
 01B4                   .dbsym r j 10 c
 01B4                   .dbsym r time1 10 c
 01B4                   .dbend
 01B4                   .dbfunc e Icp_time0 _Icp_time0 fV
                        .even
 01B4           _Icp_time0::
 01B4 2A92              st -y,R2
 01B6 3A92              st -y,R3
 01B8 8A93              st -y,R24
 01BA 2FB6              in R2,0x3f
 01BC 2A92              st -y,R2
 01BE                   .dbline -1
 01BE                   .dbline 172
 01BE           ; }
 01BE           ; void Icp_time0(void)
 01BE           ; {
 01BE                   .dbline 173
 01BE           ;     SREG=0x00;
 01BE 2224              clr R2
 01C0 2FBE              out 0x3f,R2
 01C2                   .dbline 174
 01C2           ;     TIFR0=0x01;
 01C2 81E0              ldi R24,1
 01C4 85BB              out 0x15,R24
 01C6                   .dbline 175
 01C6           ;       data_temp2=data_temp1;
 01C6 20900200          lds R2,_data_temp1
 01CA 30900300          lds R3,_data_temp1+1
 01CE 30920100          sts _data_temp2+1,R3
 01D2 20920000          sts _data_temp2,R2
 01D6                   .dbline 176
 01D6           ;       data_temp1=0x0000;
 01D6 2224              clr R2
 01D8 3324              clr R3
 01DA 30920300          sts _data_temp1+1,R3
 01DE 20920200          sts _data_temp1,R2
 01E2                   .dbline 177
 01E2           ;       TCNT0=0xc0;
 01E2 80EC              ldi R24,192
 01E4 86BD              out 0x26,R24
 01E6                   .dbline 178
 01E6           ;       SREG|=0x80;
 01E6 7894              bset 7
 01E8                   .dbline -2
 01E8           L41:
 01E8                   .dbline 0 ; func end
 01E8 2990              ld R2,y+
 01EA 2FBE              out 0x3f,R2
 01EC 8991              ld R24,y+
 01EE 3990              ld R3,y+
 01F0 2990              ld R2,y+
 01F2 1895              reti
 01F4                   .dbend
 01F4                   .dbfunc e Int0 _Int0 fV
                        .even
 01F4           _Int0::
 01F4 8A93              st -y,R24
 01F6 9A93              st -y,R25
 01F8 8FB7              in R24,0x3f
 01FA 8A93              st -y,R24
 01FC                   .dbline -1
 01FC                   .dbline 181
 01FC           ; }
 01FC           ; void Int0(void)
 01FC           ; {
 01FC                   .dbline 183
 01FC           ;     //SREG=0x00;
 01FC           ;     data_temp1++;     
 01FC 80910200          lds R24,_data_temp1
 0200 90910300          lds R25,_data_temp1+1
 0204 0196              adiw R24,1
 0206 90930300          sts _data_temp1+1,R25
 020A 80930200          sts _data_temp1,R24
 020E                   .dbline -2
 020E           L42:
 020E                   .dbline 0 ; func end
 020E 8991              ld R24,y+
 0210 8FBF              out 0x3f,R24
 0212 9991              ld R25,y+
 0214 8991              ld R24,y+
 0216 1895              reti
 0218                   .dbend
 0218                   .dbfunc e sendData _sendData fV
 0218           ;           hbit -> R10
 0218           ;              k -> R20
 0218           ;           cbit -> R22
                        .even
 0218           _sendData::
 0218 00D0              rcall push_xgsetF00C
 021A 602F              mov R22,R16
 021C                   .dbline -1
 021C                   .dbline 187
 021C           ;       //SREG|=0x80;
 021C           ; }
 021C           ; void sendData(u08 cbit)
 021C           ; {
 021C                   .dbline 191
 021C           ;     u08 k;
 021C           ;       u08 hbit;
 021C           ;       //hbit=0x01;
 021C           ;       PORTC=0x02;
 021C 82E0              ldi R24,2
 021E 88B9              out 0x8,R24
 0220                   .dbline 192
 0220           ;       delay(180);
 0220 04EB              ldi R16,180
 0222 A6DF              rcall _delay
 0224                   .dbline 193
 0224           ;       PORTC=0x00;
 0224 2224              clr R2
 0226 28B8              out 0x8,R2
 0228                   .dbline 194
 0228           ;       delay(15);
 0228 0FE0              ldi R16,15
 022A A2DF              rcall _delay
 022C                   .dbline 198
 022C           ;       //delay(26);
 022C           ;       //PORTB=0x08;
 022C           ;       //buz(cbit);
 022C           ;       for(k=0;k<8;k++)
 022C 4427              clr R20
 022E 18C0              rjmp L47
 0230           L44:
 0230                   .dbline 199
 0230           ;       {
 0230                   .dbline 200
 0230           ;          hbit=(cbit&0x80);
 0230 862F              mov R24,R22
 0232 8078              andi R24,128
 0234 A82E              mov R10,R24
 0236                   .dbline 201
 0236           ;          if(hbit)
 0236 8823              tst R24
 0238 49F0              breq L48
 023A           X12:
 023A                   .dbline 202
 023A           ;          {  
 023A                   .dbline 203
 023A           ;             PORTC=0x02;
 023A 82E0              ldi R24,2
 023C 88B9              out 0x8,R24
 023E                   .dbline 204
 023E           ;             delay(16);
 023E 00E1              ldi R16,16
 0240 97DF              rcall _delay
 0242                   .dbline 205
 0242           ;                 PORTC=0x00;
 0242 2224              clr R2
 0244 28B8              out 0x8,R2
 0246                   .dbline 206
 0246           ;                 delay(50);
 0246 02E3              ldi R16,50
 0248 93DF              rcall _delay
 024A                   .dbline 208
 024A           ;                 //PORTB=0x00;
 024A           ;          }
 024A 08C0              rjmp L49
 024C           L48:
 024C                   .dbline 210
 024C           ;          else
 024C           ;          {
 024C                   .dbline 211
 024C           ;             PORTC=0x02;
 024C 82E0              ldi R24,2
 024E 88B9              out 0x8,R24
 0250                   .dbline 212
 0250           ;             delay(50);
 0250 02E3              ldi R16,50
 0252 8EDF              rcall _delay
 0254                   .dbline 213
 0254           ;                 PORTC=0x00;
 0254 2224              clr R2
 0256 28B8              out 0x8,R2
 0258                   .dbline 214
 0258           ;                 delay(16);
 0258 00E1              ldi R16,16
 025A 8ADF              rcall _delay
 025C                   .dbline 216
 025C           ;                 //PORTB=0x00;
 025C           ;          }
 025C           L49:
 025C                   .dbline 217
 025C           ;          cbit<<=1;
 025C 660F              lsl R22
 025E                   .dbline 218
 025E           ;       }
 025E           L45:
 025E                   .dbline 198
 025E 4395              inc R20
 0260           L47:
 0260                   .dbline 198
 0260 4830              cpi R20,8
 0262 30F3              brlo L44
 0264           X13:
 0264                   .dbline -2
 0264           L43:
 0264                   .dbline 0 ; func end
 0264 00C0              rjmp pop_xgsetF00C
 0266                   .dbsym r hbit 10 c
 0266                   .dbsym r k 20 c
 0266                   .dbsym r cbit 22 c
 0266                   .dbend
                        .area bss(ram, con, rel)
 0000                   .dbfile F:\AVRPRO~1\EEPROM\MAIN.C
 0000           _data_temp2::
 0000                   .blkb 2
 0002                   .dbsym e data_temp2 _data_temp2 i
 0002           _data_temp1::
 0002                   .blkb 2
 0004                   .dbsym e data_temp1 _data_temp1 i
 0004           ;       //buz(cbit);
 0004           ; }
 0004           ; 

⌨️ 快捷键说明

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