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

📄 key5.lis

📁 本设计以ATMEL公司生产的AT90S8515作为控制核心
💻 LIS
📖 第 1 页 / 共 3 页
字号:
 014C 8083              std z+0,R24
 014E           L32:
 014E                   .dbline 89
 014E           ;                         ADC_GD=(*value)*K1;
 014E E42F              mov R30,R20
 0150 F52F              mov R31,R21
 0152 2080              ldd R2,z+0
 0154 3180              ldd R3,z+1
 0156 00E0              ldi R16,<L36
 0158 10E0              ldi R17,>L36
 015A 00D0              rcall lpm32
 015C 3A93              st -y,R19
 015E 2A93              st -y,R18
 0160 1A93              st -y,R17
 0162 0A93              st -y,R16
 0164 022D              mov R16,R2
 0166 132D              mov R17,R3
 0168 1695              lsr R17
 016A 0795              ror R16
 016C 00D0              rcall int2fp
 016E 3A93              st -y,R19
 0170 2A93              st -y,R18
 0172 1A93              st -y,R17
 0174 0A93              st -y,R16
 0176 00D0              rcall mpy32fs
 0178 022D              mov R16,R2
 017A 132D              mov R17,R3
 017C 0170              andi R16,1
 017E 1070              andi R17,0
 0180 00D0              rcall int2fp
 0182 3A93              st -y,R19
 0184 2A93              st -y,R18
 0186 1A93              st -y,R17
 0188 0A93              st -y,R16
 018A 00D0              rcall add32fs
 018C 40900200          lds R4,_K1+2
 0190 50900300          lds R5,_K1+2+1
 0194 20900000          lds R2,_K1
 0198 30900100          lds R3,_K1+1
 019C 5A92              st -y,R5
 019E 4A92              st -y,R4
 01A0 3A92              st -y,R3
 01A2 2A92              st -y,R2
 01A4 00D0              rcall mpy32f
 01A6 EC2F              mov R30,R28
 01A8 FD2F              mov R31,R29
 01AA 0683              std z+6,R16
 01AC 1783              std z+7,R17
 01AE 2087              std z+8,R18
 01B0 3187              std z+9,R19
 01B2 EC2F              mov R30,R28
 01B4 FD2F              mov R31,R29
 01B6 2680              ldd R2,z+6
 01B8 3780              ldd R3,z+7
 01BA 4084              ldd R4,z+8
 01BC 5184              ldd R5,z+9
 01BE 5A92              st -y,R5
 01C0 4A92              st -y,R4
 01C2 3A92              st -y,R3
 01C4 2A92              st -y,R2
 01C6 00E0              ldi R16,<L37
 01C8 10E0              ldi R17,>L37
 01CA 00D0              rcall lpm32
 01CC 3A93              st -y,R19
 01CE 2A93              st -y,R18
 01D0 1A93              st -y,R17
 01D2 0A93              st -y,R16
 01D4 00D0              rcall cmp32f
 01D6 D4F0              brlt L34
 01D8 EC2F              mov R30,R28
 01DA FD2F              mov R31,R29
 01DC 2680              ldd R2,z+6
 01DE 3780              ldd R3,z+7
 01E0 4084              ldd R4,z+8
 01E2 5184              ldd R5,z+9
 01E4 5A92              st -y,R5
 01E6 4A92              st -y,R4
 01E8 3A92              st -y,R3
 01EA 2A92              st -y,R2
 01EC 00E0              ldi R16,<L37
 01EE 10E0              ldi R17,>L37
 01F0 00D0              rcall lpm32
 01F2 3A93              st -y,R19
 01F4 2A93              st -y,R18
 01F6 1A93              st -y,R17
 01F8 0A93              st -y,R16
 01FA 00D0              rcall sub32f
 01FC 00D0              rcall fp2int
 01FE 802F              mov R24,R16
 0200 912F              mov R25,R17
 0202 8050              subi R24,0  ; offset = 32768
 0204 9048              sbci R25,128
 0206 A82E              mov R10,R24
 0208 B92E              mov R11,R25
 020A 09C0              rjmp L35
 020C           L34:
 020C EC2F              mov R30,R28
 020E FD2F              mov R31,R29
 0210 0681              ldd R16,z+6
 0212 1781              ldd R17,z+7
 0214 2085              ldd R18,z+8
 0216 3185              ldd R19,z+9
 0218 00D0              rcall fp2int
 021A A02E              mov R10,R16
 021C B12E              mov R11,R17
 021E           L35:
 021E B0920100          sts _ADC_GD+1,R11
 0222 A0920000          sts _ADC_GD,R10
 0226                   .dbline 90
 0226           ;                         LCD_display(2,0,4,*value);
 0226 E42F              mov R30,R20
 0228 F52F              mov R31,R21
 022A 2080              ldd R2,z+0
 022C 3180              ldd R3,z+1
 022E 4424              clr R4
 0230 5524              clr R5
 0232 2A82              std y+2,R2
 0234 3B82              std y+3,R3
 0236 4C82              std y+4,R4
 0238 5D82              std y+5,R5
 023A 84E0              ldi R24,4
 023C 8883              std y+0,R24
 023E 2227              clr R18
 0240 02E0              ldi R16,2
 0242 00D0              rcall _LCD_display
 0244                   .dbline 91
 0244           ;                         break;
 0244 D6C1              rjmp L25
 0246           L38:
 0246                   .dbline 93
 0246           ;                case KEY_DEC:
 0246           ;                         (*value)--;
 0246 E42F              mov R30,R20
 0248 F52F              mov R31,R21
 024A 8081              ldd R24,z+0
 024C 9181              ldd R25,z+1
 024E 0197              sbiw R24,1
 0250 9183              std z+1,R25
 0252 8083              std z+0,R24
 0254                   .dbline 94
 0254           ;                         if(*value>2000) (*value)=0;
 0254 80ED              ldi R24,2000
 0256 97E0              ldi R25,7
 0258 2080              ldd R2,z+0
 025A 3180              ldd R3,z+1
 025C 8215              cp R24,R2
 025E 9305              cpc R25,R3
 0260 20F4              brsh L39
 0262                   .dbline 94
 0262 2224              clr R2
 0264 3324              clr R3
 0266 3182              std z+1,R3
 0268 2082              std z+0,R2
 026A           L39:
 026A                   .dbline 95
 026A           ;                         ADC_GD=(*value)*K1;
 026A E42F              mov R30,R20
 026C F52F              mov R31,R21
 026E 2080              ldd R2,z+0
 0270 3180              ldd R3,z+1
 0272 00E0              ldi R16,<L36
 0274 10E0              ldi R17,>L36
 0276 00D0              rcall lpm32
 0278 3A93              st -y,R19
 027A 2A93              st -y,R18
 027C 1A93              st -y,R17
 027E 0A93              st -y,R16
 0280 022D              mov R16,R2
 0282 132D              mov R17,R3
 0284 1695              lsr R17
 0286 0795              ror R16
 0288 00D0              rcall int2fp
 028A 3A93              st -y,R19
 028C 2A93              st -y,R18
 028E 1A93              st -y,R17
 0290 0A93              st -y,R16
 0292 00D0              rcall mpy32fs
 0294 022D              mov R16,R2
 0296 132D              mov R17,R3
 0298 0170              andi R16,1
 029A 1070              andi R17,0
 029C 00D0              rcall int2fp
 029E 3A93              st -y,R19
 02A0 2A93              st -y,R18
 02A2 1A93              st -y,R17
 02A4 0A93              st -y,R16
 02A6 00D0              rcall add32fs
 02A8 40900200          lds R4,_K1+2
 02AC 50900300          lds R5,_K1+2+1
 02B0 20900000          lds R2,_K1
 02B4 30900100          lds R3,_K1+1
 02B8 5A92              st -y,R5
 02BA 4A92              st -y,R4
 02BC 3A92              st -y,R3
 02BE 2A92              st -y,R2
 02C0 00D0              rcall mpy32f
 02C2 EC2F              mov R30,R28
 02C4 FD2F              mov R31,R29
 02C6 0287              std z+10,R16
 02C8 1387              std z+11,R17
 02CA 2487              std z+12,R18
 02CC 3587              std z+13,R19
 02CE EC2F              mov R30,R28
 02D0 FD2F              mov R31,R29
 02D2 2284              ldd R2,z+10
 02D4 3384              ldd R3,z+11
 02D6 4484              ldd R4,z+12
 02D8 5584              ldd R5,z+13
 02DA 5A92              st -y,R5
 02DC 4A92              st -y,R4
 02DE 3A92              st -y,R3
 02E0 2A92              st -y,R2
 02E2 00E0              ldi R16,<L37
 02E4 10E0              ldi R17,>L37
 02E6 00D0              rcall lpm32
 02E8 3A93              st -y,R19
 02EA 2A93              st -y,R18
 02EC 1A93              st -y,R17
 02EE 0A93              st -y,R16
 02F0 00D0              rcall cmp32f
 02F2 D4F0              brlt L41
 02F4 EC2F              mov R30,R28
 02F6 FD2F              mov R31,R29
 02F8 2284              ldd R2,z+10
 02FA 3384              ldd R3,z+11
 02FC 4484              ldd R4,z+12
 02FE 5584              ldd R5,z+13
 0300 5A92              st -y,R5
 0302 4A92              st -y,R4
 0304 3A92              st -y,R3
 0306 2A92              st -y,R2
 0308 00E0              ldi R16,<L37
 030A 10E0              ldi R17,>L37
 030C 00D0              rcall lpm32
 030E 3A93              st -y,R19
 0310 2A93              st -y,R18
 0312 1A93              st -y,R17
 0314 0A93              st -y,R16
 0316 00D0              rcall sub32f
 0318 00D0              rcall fp2int
 031A 802F              mov R24,R16
 031C 912F              mov R25,R17
 031E 8050              subi R24,0  ; offset = 32768
 0320 9048              sbci R25,128
 0322 A82E              mov R10,R24
 0324 B92E              mov R11,R25
 0326 09C0              rjmp L42
 0328           L41:
 0328 EC2F              mov R30,R28
 032A FD2F              mov R31,R29
 032C 0285              ldd R16,z+10
 032E 1385              ldd R17,z+11
 0330 2485              ldd R18,z+12
 0332 3585              ldd R19,z+13
 0334 00D0              rcall fp2int
 0336 A02E              mov R10,R16
 0338 B12E              mov R11,R17
 033A           L42:
 033A B0920100          sts _ADC_GD+1,R11
 033E A0920000          sts _ADC_GD,R10
 0342                   .dbline 96
 0342           ;                         LCD_display(2,0,4,*value);
 0342 E42F              mov R30,R20
 0344 F52F              mov R31,R21
 0346 2080              ldd R2,z+0
 0348 3180              ldd R3,z+1
 034A 4424              clr R4
 034C 5524              clr R5
 034E 2A82              std y+2,R2
 0350 3B82              std y+3,R3
 0352 4C82              std y+4,R4
 0354 5D82              std y+5,R5
 0356 84E0              ldi R24,4
 0358 8883              std y+0,R24
 035A 2227              clr R18
 035C 02E0              ldi R16,2
 035E 00D0              rcall _LCD_display
 0360                   .dbline 97
 0360           ;                         break;
 0360                   .dbline 99
 0360           ;                }
 0360           ;        }
 0360 48C1              rjmp L25
 0362           L24:
 0362                   .dbline 101
 0362           ;        else
 0362           ;        {
 0362                   .dbline 102
 0362           ;                switch (temp)
 0362 7727              clr R23
 0364 6130              cpi R22,1
 0366 E0E0              ldi R30,0
 0368 7E07              cpc R23,R30
 036A 09F4              brne X5
 036C 29C1              rjmp L70
 036E           X5:
 036E 6230              cpi R22,2
 0370 E0E0              ldi R30,0
 0372 7E07              cpc R23,R30
 0374 09F4              brne X6
 0376 73C0              rjmp L60
 0378           X6:
 0378 6330              cpi R22,3
 037A E0E0              ldi R30,0
 037C 7E07              cpc R23,R30
 037E 59F0              breq L46
 0380 6430              cpi R22,4
 0382 E0E0              ldi R30,0
 0384 7E07              cpc R23,R30
 0386 09F4              brne X7
 0388 38C0              rjmp L53
 038A           X7:
 038A 6530              cpi R22,5
 038C E0E0              ldi R30,0
 038E 7E07              cpc R23,R30
 0390 09F4              brne X8
 0392 80C0              rjmp L61
 0394           X8:
 0394 2EC1              rjmp L43
 0396           X2:
 0396                   .dbline 103
 0396           ;                {
 0396           L46:
 0396                   .dbline 105
 0396           ;                case KEY_INC:
 0396           ;                         value_table[j+1]++;
 0396 80E0              ldi R24,<_value_table+1
 0398 90E0              ldi R25,>_value_table+1
 039A 20900000          lds R2,_j
 039E 3324              clr R3
 03A0 280E              add R2,R24
 03A2 391E              adc R3,R25
 03A4 E22D              mov R30,R2
 03A6 F32D              mov R31,R3
 03A8 8081              ldd R24,z+0
 03AA 8F5F              subi R24,255    ; addi 1
 03AC 8083              std z+0,R24
 03AE                   .dbline 106
 03AE           ;                         if(value_table[j+1]>9) value_table[j+1]=0;
 03AE 80E0              ldi R24,<_value_table+1
 03B0 90E0              ldi R25,>_value_table+1
 03B2 E0910000          lds R30,_j
 03B6 FF27              clr R31
 03B8 E80F              add R30,R24
 03BA F91F              adc R31,R25
 03BC 2080              ldd R2,z+0
 03BE 89E0              ldi R24,9
 03C0 8215              cp R24,R2
 03C2 48F4              brsh L48
 03C4                   .dbline 106
 03C4 80E0              ldi R24,<_value_table+1

⌨️ 快捷键说明

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