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

📄 kb.lis

📁 单片机开发资料光盘-双龙-686M.zip
💻 LIS
📖 第 1 页 / 共 3 页
字号:
 019A 002D              mov R16,R0
 019C 31DF              xcall _put_kbbuff
 019E                   .dbline 80
                       ;                      }
 019E 33C0              xjmp L33
 01A0                 L32:
 01A0                   .dbline 82
                       ;                   else
                       ;                      {
 01A0                   .dbline 83
 01A0 4427              clr R20
 01A2 01C0              xjmp L45
 01A4                 L42:
 01A4                   .dbline 83
 01A4                 L43:
 01A4                   .dbline 83
 01A4 4395              inc R20
 01A6                 L45:
 01A6                   .dbline 83
                       ;                      for(i = 0;shifted[i][0]!=sc && shifted[i][0]; i++);
 01A6 80E0              ldi R24,<_shifted
 01A8 90E0              ldi R25,>_shifted
 01AA 242E              mov R2,R20
 01AC 3324              clr R3
 01AE 220C              lsl R2
 01B0 331C              rol R3
 01B2 280E              add R2,R24
 01B4 391E              adc R3,R25
 01B6 E22D              mov R30,R2
 01B8 F32D              mov R31,R3
 01BA C895              lpm
 01BC 202C              mov R2,R0
 01BE 3324              clr R3
 01C0 462E              mov R4,R22
 01C2 5524              clr R5
 01C4 2414              cp R2,R4
 01C6 3504              cpc R3,R5
 01C8 21F0              breq L46
 01CA 2220              tst R2
 01CC 59F7              brne L42
 01CE 3320              tst R3
 01D0 49F7              brne L42
 01D2                 L46:
 01D2                   .dbline 84
                       ;                      if (shifted[i][0] == sc)
 01D2 80E0              ldi R24,<_shifted
 01D4 90E0              ldi R25,>_shifted
 01D6 242E              mov R2,R20
 01D8 3324              clr R3
 01DA 220C              lsl R2
 01DC 331C              rol R3
 01DE 280E              add R2,R24
 01E0 391E              adc R3,R25
 01E2 E22D              mov R30,R2
 01E4 F32D              mov R31,R3
 01E6 C895              lpm
 01E8 0616              cp R0,R22
 01EA 69F4              brne L47
 01EC                   .dbline 85
                       ;                          {
 01EC                   .dbline 86
                       ;                           put_kbbuff(shifted[i][1]);                          
 01EC 80E0              ldi R24,<_shifted+1
 01EE 90E0              ldi R25,>_shifted+1
 01F0 242E              mov R2,R20
 01F2 3324              clr R3
 01F4 220C              lsl R2
 01F6 331C              rol R3
 01F8 280E              add R2,R24
 01FA 391E              adc R3,R25
 01FC E22D              mov R30,R2
 01FE F32D              mov R31,R3
 0200 C895              lpm
 0202 002D              mov R16,R0
 0204 FDDE              xcall _put_kbbuff
 0206                   .dbline 87
                       ;                          }                               
 0206                 L47:
 0206                   .dbline 88
                       ;                      } 
 0206                 L33:
 0206                   .dbline 89
                       ;                  }               
 0206                   .dbline 90
                       ;         } 
 0206                   .dbline -2
 0206                   .dbline 96
                       ;         /*debug
                       ;      kb_buffer[1]=ascii[sc%16];
                       ;      sc=sc/16;
                       ;      kb_buffer[0]=ascii[sc%16];
                       ;         debug*/ 
                       ;     }
 0206                 L10:
 0206 2296              adiw R28,2
 0208 0E940000          xcall pop_gset3
 020C                   .dbline 0 ; func end
 020C 0895              ret
 020E                   .dbsym r i 20 c
 020E                   .dbsym r sc 22 c
                         .area vector(rom, abs)
                         .org 20
 0014 0C940701          jmp _int4_isr
                         .area text(rom, con, rel)
 020E                   .dbfile D:\ICC-AVR\Pc_At\kb.c
                         .area bss(ram, con, rel)
 0003                   .dbfile D:\ICC-AVR\Pc_At\kb.c
 0003                 L52:
 0003                   .blkb 1
                         .area text(rom, con, rel)
 020E                   .dbfile D:\ICC-AVR\Pc_At\kb.c
 020E                   .dbfunc s int4_isr _int4_isr fI
 020E                   .dbsym s data L52 c
                         .even
 020E                 _int4_isr::
 020E 0E940000          xcall push_lset
 0212 0E940000          xcall push_gset1
 0216                   .dbline -1
 0216                   .dbline 99
                       ; #pragma interrupt_handler int4_isr:6
                       ; void int4_isr(void)
                       ;    {
 0216                   .dbline 112
                       ;     static unsigned char data;   
                       ;     /*if((bitcount < 11)&(bitcount > 2))
                       ;        {
                       ;         data = (data >> 1);
                       ;         if((PINE&0x20)!=0)
                       ;            data|=0x80;
                       ;        }   
                       ;     if (--bitcount==0)
                       ;          {
                       ;           bitcount=11;
                       ;           decode(data);
                       ;          }*/
                       ;     switch (bitcount)
 0216 40914400          lds R20,_bitcount
 021A 5527              clr R21
 021C 4130              cpi R20,1
 021E E0E0              ldi R30,0
 0220 5E07              cpc R21,R30
 0222 E1F0              breq L60
 0224 4230              cpi R20,2
 0226 E0E0              ldi R30,0
 0228 5E07              cpc R21,R30
 022A 91F0              breq L59
 022C 4130              cpi R20,1
 022E E0E0              ldi R30,0
 0230 5E07              cpc R21,R30
 0232 34F1              brlt L53
 0234                 L65:
 0234 4B30              cpi R20,11
 0236 E0E0              ldi R30,0
 0238 5E07              cpc R21,R30
 023A 09F0              breq L56
 023C 21C0              xjmp L53
 023E                 X5:
 023E                   .dbline 113
                       ;       {
 023E                 L56:
 023E                   .dbline 114
                       ;        case 11:{
 023E                   .dbline 115
                       ;                 if ((PINE&0x20)!=0)
 023E 0D9B              sbis 0x1,5
 0240 01C0              rjmp L57
 0242                   .dbline 116
                       ;                      return;
 0242 2EC0              xjmp L51
 0244                 L57:
 0244                   .dbline 118
                       ;                 else         
                       ;                     bitcount--;
 0244 80914400          lds R24,_bitcount
 0248 8150              subi R24,1
 024A 80934400          sts _bitcount,R24
 024E                   .dbline 119
                       ;                 break;}
 024E 28C0              xjmp L54
 0250                 L59:
 0250                   .dbline 120
                       ;        case 2:{
 0250                   .dbline 121
                       ;                 bitcount--;            
 0250 80914400          lds R24,_bitcount
 0254 8150              subi R24,1
 0256 80934400          sts _bitcount,R24
 025A                   .dbline 122
                       ;                 break;}
 025A 22C0              xjmp L54
 025C                 L60:
 025C                   .dbline 123
                       ;        case 1:{
 025C                   .dbline 124
                       ;                 bitcount--;  
 025C 80914400          lds R24,_bitcount
 0260 8150              subi R24,1
 0262 80934400          sts _bitcount,R24
 0266                   .dbline 125
                       ;                 if ((PINE&0x20)==0)
 0266 0D99              sbic 0x1,5
 0268 04C0              rjmp L61
 026A                   .dbline 126
                       ;                     {
 026A                   .dbline 127
                       ;                      bitcount=11;
 026A 8BE0              ldi R24,11
 026C 80934400          sts _bitcount,R24
 0270                   .dbline 128
                       ;                      return;
 0270 17C0              xjmp L51
 0272                 L61:
 0272                   .dbline 131
                       ;                     }
                       ;                 else
                       ;                    {
 0272                   .dbline 132
                       ;                     bitcount=11;
 0272 8BE0              ldi R24,11
 0274 80934400          sts _bitcount,R24
 0278                   .dbline 133
                       ;                     decode(data);
 0278 00910300          lds R16,L52
 027C F9DE              xcall _decode
 027E                   .dbline 134
                       ;                    }      
 027E                   .dbline 135
                       ;                 break;}
 027E 10C0              xjmp L54
 0280                 L53:
 0280                   .dbline 136
                       ;        default:{
 0280                   .dbline 137
                       ;                 data = (data >> 1);
 0280 20900300          lds R2,L52
 0284 2694              lsr R2
 0286 20920300          sts L52,R2
 028A                   .dbline 138
                       ;                 if((PINE&0x20)!=0)
 028A 0D9B              sbis 0x1,5
 028C 04C0              rjmp L63
 028E                   .dbline 139
                       ;                     data|=0x80;
 028E 822D              mov R24,R2
 0290 8068              ori R24,128
 0292 80930300          sts L52,R24
 0296                 L63:
 0296                   .dbline 140
 0296 80914400          lds R24,_bitcount
 029A 8150              subi R24,1
 029C 80934400          sts _bitcount,R24
 02A0                   .dbline 141
 02A0                   .dbline 142
 02A0                 L54:
 02A0                   .dbline -2
 02A0                   .dbline 143
                       ;                 bitcount--;
                       ;                 }       
                       ;       }                     
                       ;     } 
 02A0                 L51:
 02A0 0E940000          xcall pop_gset1
 02A4 0E940000          xcall pop_lset
 02A8                   .dbline 0 ; func end
 02A8 1895              reti
                         .area bss(ram, con, rel)
 0004                   .dbfile D:\ICC-AVR\Pc_At\kb.c
 0004                 _kb_buffer::
 0004                   .blkb 64
 0044                   .dbsym s kb_buffer _kb_buffer A[64:64]c
 0044                 _bitcount::
 0044                   .blkb 1
 0045                   .dbsym s bitcount _bitcount c
                         .area data(ram, con, rel)
 0002                   .dbfile D:\ICC-AVR\Pc_At\kb.c
 0002                 L26:
 0002                   .blkb 13
                         .area idata
 0002 BDABD2AAD6D8D0C2C6F4B6AF00     .byte 189,171,210,170,214,216,208,194,198,244,182,175,0
                         .area data(ram, con, rel)
 000F                   .dbfile D:\ICC-AVR\Pc_At\kb.c

⌨️ 快捷键说明

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