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

📄 main.lis

📁 数控电压源程序数控电压源程序数控电压源程序数控电压源程序
💻 LIS
📖 第 1 页 / 共 5 页
字号:
 0276 E0E0              ldi R30,0
 0278 9E07              cpc R25,R30
 027A 71F4              brne L20
 027C                   .dbline 134
 027C           ;      key_line<<=1;
 027C 20900200          lds R2,L17
 0280 30900300          lds R3,L17+1
 0284 220C              lsl R2
 0286 331C              rol R3
 0288 30920300          sts L17+1,R3
 028C 20920200          sts L17,R2
 0290                   .dbline 136
 0290           ;      else
 0290           ;        break;
 0290           L23:
 0290                   .dbline 137
 0290           L19:
 0290                   .dbline 128
 0290 6395              inc R22
 0292           L21:
 0292                   .dbline 128
 0292 84E0              ldi R24,4
 0294 8617              cp R24,R22
 0296 C0F6              brsh L18
 0298           L20:
 0298                   .dbline 138
 0298           ;    }
 0298           ;       delay_nms(5);
 0298 05E0              ldi R16,5
 029A 10E0              ldi R17,0
 029C 0E940000          xcall _delay_nms
 02A0                   .dbline 139
 02A0           ;   if(key_value==(key_mask&PIND))
 02A0 80B3              in R24,0x10
 02A2 9927              clr R25
 02A4 8F70              andi R24,15
 02A6 9070              andi R25,0
 02A8 20900000          lds R2,L16
 02AC 30900100          lds R3,L16+1
 02B0 2816              cp R2,R24
 02B2 3906              cpc R3,R25
 02B4 09F0              breq X1
 02B6 8DC0              xjmp L24
 02B8           X1:
 02B8                   .dbline 140
 02B8           ;    {
 02B8                   .dbline 142
 02B8           ;     
 02B8           ;     switch(key_line|key_value)
 02B8 60910200          lds R22,L17
 02BC 70910300          lds R23,L17+1
 02C0 6229              or R22,R2
 02C2 7329              or R23,R3
 02C4 6732              cpi R22,39
 02C6 E0E0              ldi R30,0
 02C8 7E07              cpc R23,R30
 02CA 09F4              brne X2
 02CC 68C0              xjmp L36
 02CE           X2:
 02CE 6B32              cpi R22,43
 02D0 E0E0              ldi R30,0
 02D2 7E07              cpc R23,R30
 02D4 09F4              brne X3
 02D6 60C0              xjmp L35
 02D8           X3:
 02D8 6D32              cpi R22,45
 02DA E0E0              ldi R30,0
 02DC 7E07              cpc R23,R30
 02DE 09F4              brne X4
 02E0 58C0              xjmp L34
 02E2           X4:
 02E2 6E32              cpi R22,46
 02E4 E0E0              ldi R30,0
 02E6 7E07              cpc R23,R30
 02E8 09F4              brne X5
 02EA 50C0              xjmp L33
 02EC           X5:
 02EC 8EE2              ldi R24,46
 02EE 90E0              ldi R25,0
 02F0 8617              cp R24,R22
 02F2 9707              cpc R25,R23
 02F4 A4F0              brlt L46
 02F6           L45:
 02F6 6731              cpi R22,23
 02F8 E0E0              ldi R30,0
 02FA 7E07              cpc R23,R30
 02FC 09F4              brne X6
 02FE 43C0              xjmp L32
 0300           X6:
 0300 6B31              cpi R22,27
 0302 E0E0              ldi R30,0
 0304 7E07              cpc R23,R30
 0306 09F4              brne X7
 0308 3BC0              xjmp L31
 030A           X7:
 030A 6D31              cpi R22,29
 030C E0E0              ldi R30,0
 030E 7E07              cpc R23,R30
 0310 09F4              brne X8
 0312 33C0              xjmp L30
 0314           X8:
 0314 6E31              cpi R22,30
 0316 E0E0              ldi R30,0
 0318 7E07              cpc R23,R30
 031A 61F1              breq L29
 031C 5AC0              xjmp L26
 031E           L46:
 031E 6734              cpi R22,71
 0320 E0E0              ldi R30,0
 0322 7E07              cpc R23,R30
 0324 09F4              brne X9
 0326 47C0              xjmp L40
 0328           X9:
 0328 6B34              cpi R22,75
 032A E0E0              ldi R30,0
 032C 7E07              cpc R23,R30
 032E 09F4              brne X10
 0330 3FC0              xjmp L39
 0332           X10:
 0332 6D34              cpi R22,77
 0334 E0E0              ldi R30,0
 0336 7E07              cpc R23,R30
 0338 09F4              brne X11
 033A 37C0              xjmp L38
 033C           X11:
 033C 6E34              cpi R22,78
 033E E0E0              ldi R30,0
 0340 7E07              cpc R23,R30
 0342 81F1              breq L37
 0344 6734              cpi R22,71
 0346 E0E0              ldi R30,0
 0348 7E07              cpc R23,R30
 034A 0CF4              brge X12
 034C 42C0              xjmp L26
 034E           X12:
 034E           L47:
 034E 6738              cpi R22,135
 0350 E0E0              ldi R30,0
 0352 7E07              cpc R23,R30
 0354 09F4              brne X13
 0356 3BC0              xjmp L44
 0358           X13:
 0358 6B38              cpi R22,139
 035A E0E0              ldi R30,0
 035C 7E07              cpc R23,R30
 035E 09F4              brne X14
 0360 33C0              xjmp L43
 0362           X14:
 0362 6D38              cpi R22,141
 0364 E0E0              ldi R30,0
 0366 7E07              cpc R23,R30
 0368 61F1              breq L42
 036A 6E38              cpi R22,142
 036C E0E0              ldi R30,0
 036E 7E07              cpc R23,R30
 0370 29F1              breq L41
 0372 2FC0              xjmp L26
 0374           X0:
 0374                   .dbline 143
 0374           ;     {
 0374           L29:
 0374                   .dbline 144
 0374           ;     case 0b00011110:key_return=7;
 0374 47E0              ldi R20,7
 0376 50E0              ldi R21,0
 0378                   .dbline 145
 0378           ;                       break;
 0378 2CC0              xjmp L27
 037A           L30:
 037A                   .dbline 146
 037A           ;       case 0b00011101:key_return=8;
 037A 48E0              ldi R20,8
 037C 50E0              ldi R21,0
 037E                   .dbline 147
 037E           ;                       break;
 037E 29C0              xjmp L27
 0380           L31:
 0380                   .dbline 148
 0380           ;       case 0b00011011:key_return=9;
 0380 49E0              ldi R20,9
 0382 50E0              ldi R21,0
 0384                   .dbline 149
 0384           ;                       break;  
 0384 26C0              xjmp L27
 0386           L32:
 0386                   .dbline 150
 0386           ;       case 0b00010111:key_return=11;
 0386 4BE0              ldi R20,11
 0388 50E0              ldi R21,0
 038A                   .dbline 151
 038A           ;                       break;  
 038A 23C0              xjmp L27
 038C           L33:
 038C                   .dbline 152
 038C           ;       case 0b00101110:key_return=4;
 038C 44E0              ldi R20,4
 038E 50E0              ldi R21,0
 0390                   .dbline 153
 0390           ;                       break;  
 0390 20C0              xjmp L27
 0392           L34:
 0392                   .dbline 154
 0392           ;       case 0b00101101:key_return=5;
 0392 45E0              ldi R20,5
 0394 50E0              ldi R21,0
 0396                   .dbline 155
 0396           ;                       break;
 0396 1DC0              xjmp L27
 0398           L35:
 0398                   .dbline 156
 0398           ;     case 0b00101011:key_return=6;
 0398 46E0              ldi R20,6
 039A 50E0              ldi R21,0
 039C                   .dbline 157
 039C           ;                       break;  
 039C 1AC0              xjmp L27
 039E           L36:
 039E                   .dbline 158
 039E           ;       case 0b00100111:key_return=10;
 039E 4AE0              ldi R20,10
 03A0 50E0              ldi R21,0
 03A2                   .dbline 159
 03A2           ;                       break;          
 03A2 17C0              xjmp L27
 03A4           L37:
 03A4                   .dbline 160
 03A4           ;       case 0b01001110:key_return=1;
 03A4 41E0              ldi R20,1
 03A6 50E0              ldi R21,0
 03A8                   .dbline 161
 03A8           ;                       break;  
 03A8 14C0              xjmp L27
 03AA           L38:
 03AA                   .dbline 162
 03AA           ;       case 0b01001101:key_return=2;
 03AA 42E0              ldi R20,2
 03AC 50E0              ldi R21,0
 03AE                   .dbline 163
 03AE           ;                       break;
 03AE 11C0              xjmp L27
 03B0           L39:
 03B0                   .dbline 164
 03B0           ;       case 0b01001011:key_return=3;
 03B0 43E0              ldi R20,3
 03B2 50E0              ldi R21,0
 03B4                   .dbline 165
 03B4           ;                       break;  
 03B4 0EC0              xjmp L27
 03B6           L40:
 03B6                   .dbline 166
 03B6           ;       case 0b01000111:key_return=12;
 03B6 4CE0              ldi R20,12
 03B8 50E0              ldi R21,0
 03BA                   .dbline 167
 03BA           ;                       break;          
 03BA 0BC0              xjmp L27
 03BC           L41:
 03BC                   .dbline 168
 03BC           ;       case 0b10001110:key_return=0;
 03BC 4427              clr R20
 03BE 5527              clr R21
 03C0                   .dbline 169
 03C0           ;                       break;  
 03C0 08C0              xjmp L27
 03C2           L42:
 03C2                   .dbline 170
 03C2           ;       case 0b10001101:key_return=13;//小数点
 03C2 4DE0              ldi R20,13
 03C4 50E0              ldi R21,0
 03C6                   .dbline 171
 03C6           ;                       break;          
 03C6 05C0              xjmp L27
 03C8           L43:
 03C8                   .dbline 172
 03C8           ;       case 0b10001011:key_return=14;//ENTER
 03C8 4EE0              ldi R20,14
 03CA 50E0              ldi R21,0
 03CC                   .dbline 173
 03CC           ;                       break;          
 03CC 02C0              xjmp L27
 03CE           L44:
 03CE                   .dbline 174
 03CE           ;       case 0b10000111:key_return=15;//启动自动扫描
 03CE 4FE0              ldi R20,15
 03D0 50E0              ldi R21,0
 03D2                   .dbline 175
 03D2           ;                       break;                                                                                                                                                                                                                                                          
 03D2           L26:
 03D2           L27:
 03D2                   .dbline 177
 03D2           ;      }
 03D2           ;   }
 03D2           L24:
 03D2                   .dbline 178
 03D2           ;     return key_return;
 03D2 8A01              movw R16,R20
 03D4                   .dbline -2
 03D4           L15:
 03D4 0E940000          xcall pop_gset2
 03D8                   .dbline 0 ; func end
 03D8 0895              ret
 03DA                   .dbsym r key_return 20 i
 03DA                   .dbsym r i 22 c
 03DA                   .dbend
 03DA                   .dbfunc e read_keyvalue _read_keyvalue fV
 03DA           ;              i -> R22,R23
 03DA           ;           temp -> R20,R21
 03DA           ;        keycode -> R22
                        .even
 03DA           _read_keyvalue::
 03DA 0E940000          xcall push_gset2
 03DE                   .dbline -1
 03DE                   .dbline 183
 03DE           ; }
 03DE           ; 
 03DE           ; 
 03DE           ; void read_keyvalue()
 03DE           ; {  
 03DE                   .dbline 184
 03DE           ;    uint temp=0;
 03DE 4427              clr R20
 03E0 5527              clr R21
 03E2                   .dbline 185
 03E2           ;    uint i=0;
 03E2 6627              clr R22
 03E4 7727              clr R23
 03E6                   .dbline 186
 03E6           ;    uchar  keycode=16;
 03E6 60E1              ldi R22,16
 03E8                   .dbline 187
 03E8           ;    keycode=KeyScan();
 03E8 21DF              xcall _KeyScan
 03EA 602F              mov R22,R16
 03EC                   .dbline 188
 03EC           ;    if(((keycode >=0)&&(keycode <=9)&&(cn < 4))||((keycode ==13)&&(cn == 1)))
 03EC 0030              cpi R16,0
 03EE 38F0              brlo L53
 03F0 89E0              ldi R24,9
 03F2 8017              cp R24,R16
 03F4 20F0              brlo L53
 03F6 80912700          lds R24,_cn
 03FA 8430              cpi R24,4
 03FC 40F0              brlo L51
 03FE           L53:
 03FE 6D30              cpi R22,13
 0400 09F0              breq X17

⌨️ 快捷键说明

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