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

📄 矩阵键盘.lis

📁 avr基础程序大全
💻 LIS
📖 第 1 页 / 共 2 页
字号:
 00C6           X5:
 00C6                   .dbline 63
 00C6           ;               switch(key)
 00C6 642F              mov R22,R20
 00C8 7727              clr R23
 00CA 673B              cpi R22,183
 00CC E0E0              ldi R30,0
 00CE 7E07              cpc R23,R30
 00D0 09F4              brne X25
 00D2 6BC0              xjmp L40
 00D4           X25:
 00D4           X6:
 00D4 6B3B              cpi R22,187
 00D6 E0E0              ldi R30,0
 00D8 7E07              cpc R23,R30
 00DA 09F4              brne X26
 00DC 5EC0              xjmp L36
 00DE           X26:
 00DE           X7:
 00DE 6D3B              cpi R22,189
 00E0 E0E0              ldi R30,0
 00E2 7E07              cpc R23,R30
 00E4 09F4              brne X27
 00E6 51C0              xjmp L32
 00E8           X27:
 00E8           X8:
 00E8 6E3B              cpi R22,190
 00EA E0E0              ldi R30,0
 00EC 7E07              cpc R23,R30
 00EE 09F4              brne X28
 00F0 44C0              xjmp L28
 00F2           X28:
 00F2           X9:
 00F2 8EEB              ldi R24,190
 00F4 90E0              ldi R25,0
 00F6 8617              cp R24,R22
 00F8 9707              cpc R25,R23
 00FA A4F0              brlt L43
 00FC           X10:
 00FC           L42:
 00FC 6737              cpi R22,119
 00FE E0E0              ldi R30,0
 0100 7E07              cpc R23,R30
 0102 09F4              brne X29
 0104 54C0              xjmp L41
 0106           X29:
 0106           X11:
 0106 6B37              cpi R22,123
 0108 E0E0              ldi R30,0
 010A 7E07              cpc R23,R30
 010C 09F4              brne X30
 010E 47C0              xjmp L37
 0110           X30:
 0110           X12:
 0110 6D37              cpi R22,125
 0112 E0E0              ldi R30,0
 0114 7E07              cpc R23,R30
 0116 09F4              brne X31
 0118 3AC0              xjmp L33
 011A           X31:
 011A           X13:
 011A 6E37              cpi R22,126
 011C E0E0              ldi R30,0
 011E 7E07              cpc R23,R30
 0120 71F1              breq L29
 0122           X14:
 0122 47C0              xjmp L23
 0124           L43:
 0124 673D              cpi R22,215
 0126 E0E0              ldi R30,0
 0128 7E07              cpc R23,R30
 012A 09F4              brne X32
 012C 3CC0              xjmp L39
 012E           X32:
 012E           X15:
 012E 6B3D              cpi R22,219
 0130 E0E0              ldi R30,0
 0132 7E07              cpc R23,R30
 0134 81F1              breq L35
 0136           X16:
 0136 6D3D              cpi R22,221
 0138 E0E0              ldi R30,0
 013A 7E07              cpc R23,R30
 013C 21F1              breq L31
 013E           X17:
 013E 6E3D              cpi R22,222
 0140 E0E0              ldi R30,0
 0142 7E07              cpc R23,R30
 0144 C1F0              breq L27
 0146           X18:
 0146 673D              cpi R22,215
 0148 E0E0              ldi R30,0
 014A 7E07              cpc R23,R30
 014C 0CF4              brge X33
 014E 31C0              xjmp L23
 0150           X33:
 0150           X19:
 0150           L44:
 0150 673E              cpi R22,231
 0152 E0E0              ldi R30,0
 0154 7E07              cpc R23,R30
 0156 29F1              breq L38
 0158           X20:
 0158 6B3E              cpi R22,235
 015A E0E0              ldi R30,0
 015C 7E07              cpc R23,R30
 015E C9F0              breq L34
 0160           X21:
 0160 6D3E              cpi R22,237
 0162 E0E0              ldi R30,0
 0164 7E07              cpc R23,R30
 0166 69F0              breq L30
 0168           X22:
 0168 6E3E              cpi R22,238
 016A E0E0              ldi R30,0
 016C 7E07              cpc R23,R30
 016E 09F0              breq L26
 0170           X23:
 0170 20C0              xjmp L23
 0172           L26:
 0172                   .dbline 66
 0172           ;               {
 0172           ;        case 0xEE:
 0172           ;                       key=0x0;
 0172 4427              clr R20
 0174                   .dbline 67
 0174           ;                       break;
 0174 21C0              xjmp L16
 0176           L27:
 0176                   .dbline 69
 0176           ;          case 0xDE:
 0176           ;                       key=0x1;
 0176 41E0              ldi R20,1
 0178                   .dbline 70
 0178           ;                       break; 
 0178 1FC0              xjmp L16
 017A           L28:
 017A                   .dbline 72
 017A           ;          case 0xBE:
 017A           ;                       key=0x2;
 017A 42E0              ldi R20,2
 017C                   .dbline 73
 017C           ;                       break;
 017C 1DC0              xjmp L16
 017E           L29:
 017E                   .dbline 75
 017E           ;          case 0x7E:
 017E           ;                       key=0x3;
 017E 43E0              ldi R20,3
 0180                   .dbline 76
 0180           ;                       break;
 0180 1BC0              xjmp L16
 0182           L30:
 0182                   .dbline 78
 0182           ;          case 0xED:
 0182           ;                       key=0x4;
 0182 44E0              ldi R20,4
 0184                   .dbline 79
 0184           ;                       break;
 0184 19C0              xjmp L16
 0186           L31:
 0186                   .dbline 81
 0186           ;          case 0xDD:
 0186           ;                       key=0x5;
 0186 45E0              ldi R20,5
 0188                   .dbline 82
 0188           ;                       break;
 0188 17C0              xjmp L16
 018A           L32:
 018A                   .dbline 84
 018A           ;          case 0xBD:
 018A           ;                       key=0x6;
 018A 46E0              ldi R20,6
 018C                   .dbline 85
 018C           ;                       break;
 018C 15C0              xjmp L16
 018E           L33:
 018E                   .dbline 87
 018E           ;          case 0x7D:
 018E           ;                       key=0x7;
 018E 47E0              ldi R20,7
 0190                   .dbline 88
 0190           ;                       break;
 0190 13C0              xjmp L16
 0192           L34:
 0192                   .dbline 90
 0192           ;          case 0xEB:
 0192           ;                       key=0x8;
 0192 48E0              ldi R20,8
 0194                   .dbline 91
 0194           ;                       break;
 0194 11C0              xjmp L16
 0196           L35:
 0196                   .dbline 93
 0196           ;          case 0xDB:
 0196           ;                       key=0x9;
 0196 49E0              ldi R20,9
 0198                   .dbline 94
 0198           ;                       break;
 0198 0FC0              xjmp L16
 019A           L36:
 019A                   .dbline 96
 019A           ;          case 0xBB:
 019A           ;                       key=0xA;
 019A 4AE0              ldi R20,10
 019C                   .dbline 97
 019C           ;                       break;
 019C 0DC0              xjmp L16
 019E           L37:
 019E                   .dbline 99
 019E           ;          case 0x7B:
 019E           ;                       key=0xB;
 019E 4BE0              ldi R20,11
 01A0                   .dbline 100
 01A0           ;                       break;
 01A0 0BC0              xjmp L16
 01A2           L38:
 01A2                   .dbline 102
 01A2           ;          case 0xE7:
 01A2           ;                       key=0xC;
 01A2 4CE0              ldi R20,12
 01A4                   .dbline 103
 01A4           ;                       break;
 01A4 09C0              xjmp L16
 01A6           L39:
 01A6                   .dbline 105
 01A6           ;          case 0xD7:
 01A6           ;                       key=0xD;
 01A6 4DE0              ldi R20,13
 01A8                   .dbline 106
 01A8           ;                       break;
 01A8 07C0              xjmp L16
 01AA           L40:
 01AA                   .dbline 108
 01AA           ;          case 0xB7:
 01AA           ;                       key=0xE;
 01AA 4EE0              ldi R20,14
 01AC                   .dbline 109
 01AC           ;                       break;
 01AC 05C0              xjmp L16
 01AE           L41:
 01AE                   .dbline 111
 01AE           ;          case 0x77:
 01AE           ;                       key=0xF;
 01AE 4FE0              ldi R20,15
 01B0                   .dbline 112
 01B0           ;                       break;
 01B0 03C0              xjmp L16
 01B2           L23:
 01B2                   .dbline 114
 01B2           ;          default:
 01B2           ;               key=16;         
 01B2 40E1              ldi R20,16
 01B4                   .dbline 115
 01B4           ;               }
 01B4                   .dbline 116
 01B4           ;        }
 01B4 01C0              xjmp L16
 01B6           L15:
 01B6                   .dbline 118
 01B6           ;        else
 01B6           ;        {
 01B6                   .dbline 119
 01B6           ;           key=16;
 01B6 40E1              ldi R20,16
 01B8                   .dbline 120
 01B8           ;        }
 01B8           L16:
 01B8                   .dbline 121
 01B8           ;        return key;
 01B8 042F              mov R16,R20
 01BA                   .dbline -2
 01BA           L14:
 01BA                   .dbline 0 ; func end
 01BA 0C940000          xjmp pop_xgsetF00C
 01BE                   .dbsym r j 10 c
 01BE                   .dbsym r key 20 c
 01BE                   .dbsym r i 22 c
 01BE                   .dbend
 01BE                   .dbfunc e main _main fV
 01BE           ;              l -> R10
                        .even
 01BE           _main::
 01BE                   .dbline -1
 01BE                   .dbline 124
 01BE           ; }
 01BE           ; void main()
 01BE           ; {
 01BE                   .dbline 126
 01BE           ;      uchar l;
 01BE           ;      DDRA=0xff;// 0001 1000
 01BE 8FEF              ldi R24,255
 01C0 8ABB              out 0x1a,R24
 01C2                   .dbline 127
 01C2           ;        DDRB=0XFF;
 01C2 87BB              out 0x17,R24
 01C4 07C0              xjmp L47
 01C6           L46:
 01C6                   .dbline 129
 01C6           ;        while(1)
 01C6           ;        {
 01C6                   .dbline 130
 01C6           ;          if(key_press())
 01C6 4BDF              xcall _key_press
 01C8 0023              tst R16
 01CA 21F0              breq L49
 01CC           X34:
 01CC                   .dbline 131
 01CC           ;          {
 01CC                   .dbline 132
 01CC           ;             l=key_scan();
 01CC 59DF              xcall _key_scan
 01CE A02E              mov R10,R16
 01D0                   .dbline 133
 01D0           ;                 show(l,0);
 01D0 2227              clr R18
 01D2 2BDF              xcall _show
 01D4                   .dbline 134
 01D4           ;          }
 01D4           L49:
 01D4                   .dbline 135
 01D4           ;        }
 01D4           L47:
 01D4                   .dbline 128
 01D4 F8CF              xjmp L46
 01D6           X35:
 01D6                   .dbline -2
 01D6           L45:
 01D6                   .dbline 0 ; func end
 01D6 0895              ret
 01D8                   .dbsym r l 10 c
 01D8                   .dbend
 01D8           ;        
 01D8           ; }

⌨️ 快捷键说明

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