📄 test_1602.lst
字号:
0471 079E CPC R25,R30
0472 F409 BNE 0x0474
0473 C053 RJMP 0x04C7
0474 C054 RJMP 0x04C9
(0187) {
(0188) case 1:
(0189) time_s=1;
0475 E041 LDI R20,1
0476 E050 LDI R21,0
(0190) LCD_clear();
0477 DC2E RCALL _LCD_clear
(0191) LCD_write_str(6,6,"start...");
0478 E688 LDI R24,0x68
0479 E090 LDI R25,0
047A 8399 STD Y+1,R25
047B 8388 STD Y+0,R24
047C E026 LDI R18,6
047D E006 LDI R16,6
047E DC2D RCALL _LCD_write_str
(0192) delay_ms(500);
047F EF04 LDI R16,0xF4
0480 E011 LDI R17,1
0481 DBF2 RCALL _delay_ms
(0193) LCD_clear();
0482 DC23 RCALL _LCD_clear
(0194) disp_num1=get_ad();
0483 DD3E RCALL _get_ad
0484 93100077 STS disp_num1+1,R17
0486 93000076 STS disp_num1,R16
(0195) disp_num2=disp_num1*0.00322;
0488 E504 LDI R16,0x54
0489 E010 LDI R17,0
048A 940E0549 CALL lpm32
048C 933A ST R19,-Y
048D 932A ST R18,-Y
048E 931A ST R17,-Y
048F 930A ST R16,-Y
0490 91000076 LDS R16,disp_num1
0492 91100077 LDS R17,disp_num1+1
0494 940E05A5 CALL int2fp
0496 933A ST R19,-Y
0497 932A ST R18,-Y
0498 931A ST R17,-Y
0499 930A ST R16,-Y
049A 940E06F1 CALL empy32f
049C 93100073 STS disp_num2+1,R17
049E 93000072 STS disp_num2,R16
04A0 93300075 STS disp_num2+3,R19
04A2 93200074 STS disp_num2+2,R18
(0196) lcd_process();
04A4 DD44 RCALL _lcd_process
(0197)
(0198)
(0199) break;
04A5 C023 RJMP 0x04C9
(0200)
(0201) case 2:
(0202) time_s=2;
04A6 E042 LDI R20,2
04A7 E050 LDI R21,0
(0203) LCD_clear();
04A8 DBFD RCALL _LCD_clear
(0204) LCD_write_str(4,4,"over...");
04A9 E680 LDI R24,0x60
04AA E090 LDI R25,0
04AB 8399 STD Y+1,R25
04AC 8388 STD Y+0,R24
04AD E024 LDI R18,4
04AE E004 LDI R16,4
04AF DBFC RCALL _LCD_write_str
(0205) delay_ms(500);
04B0 EF04 LDI R16,0xF4
04B1 E011 LDI R17,1
04B2 DBC1 RCALL _delay_ms
(0206) LCD_clear();
04B3 DBF2 RCALL _LCD_clear
(0207) break;
04B4 C014 RJMP 0x04C9
(0208)
(0209) case 3:
(0210) time_s=3;
04B5 E043 LDI R20,3
04B6 E050 LDI R21,0
(0211) break;
04B7 C011 RJMP 0x04C9
(0212) case 4:
(0213) time_s=4;
04B8 E044 LDI R20,4
04B9 E050 LDI R21,0
(0214) break;
04BA C00E RJMP 0x04C9
(0215) case 5:
(0216) time_s=5;
04BB E045 LDI R20,5
04BC E050 LDI R21,0
(0217) break;
04BD C00B RJMP 0x04C9
(0218)
(0219) case 6:
(0220) time_s=6;
04BE E046 LDI R20,6
04BF E050 LDI R21,0
(0221) break;
04C0 C008 RJMP 0x04C9
(0222)
(0223) case 7:
(0224) time_s=7;
04C1 E047 LDI R20,7
04C2 E050 LDI R21,0
(0225) break;
04C3 C005 RJMP 0x04C9
(0226) case 8:
(0227) time_s=8;
04C4 E048 LDI R20,0x8
04C5 E050 LDI R21,0
(0228) break;
04C6 C002 RJMP 0x04C9
(0229) case 9:
(0230) time_s=9;
FILE: <library>
04C7 E049 LDI R20,0x9
04C8 E050 LDI R21,0
04C9 CF76 RJMP 0x0440
04CA 9622 ADIW R28,2
04CB 9508 RET
push_arg4:
04CC 933A ST R19,-Y
04CD 932A ST R18,-Y
push_arg2:
04CE 931A ST R17,-Y
04CF 930A ST R16,-Y
04D0 9508 RET
mod16s:
04D1 9468 BSET 6
04D2 92DA ST R13,-Y
04D3 2ED1 MOV R13,R17
04D4 C004 RJMP 0x04D9
div16s:
04D5 94E8 BCLR 6
04D6 92DA ST R13,-Y
04D7 2ED1 MOV R13,R17
04D8 26D3 EOR R13,R19
04D9 FF17 SBRS R17,7
04DA C004 RJMP 0x04DF
04DB 9510 COM R17
04DC 9500 COM R16
04DD 5F0F SUBI R16,0xFF
04DE 4F1F SBCI R17,0xFF
04DF FF37 SBRS R19,7
04E0 C004 RJMP 0x04E5
04E1 9530 COM R19
04E2 9520 COM R18
04E3 5F2F SUBI R18,0xFF
04E4 4F3F SBCI R19,0xFF
04E5 940E04F2 CALL xdiv16u
04E7 FED7 SBRS R13,7
04E8 C004 RJMP 0x04ED
04E9 9510 COM R17
04EA 9500 COM R16
04EB 5F0F SUBI R16,0xFF
04EC 4F1F SBCI R17,0xFF
04ED 90D9 LD R13,Y+
04EE 9508 RET
mod16u:
04EF 9468 BSET 6
04F0 C001 RJMP xdiv16u
div16u:
04F1 94E8 BCLR 6
xdiv16u:
04F2 92EA ST R14,-Y
04F3 92FA ST R15,-Y
04F4 938A ST R24,-Y
04F5 24EE CLR R14
04F6 24FF CLR R15
04F7 E180 LDI R24,0x10
04F8 0F00 LSL R16
04F9 1F11 ROL R17
04FA 1CEE ROL R14
04FB 1CFF ROL R15
04FC 16E2 CP R14,R18
04FD 06F3 CPC R15,R19
04FE F018 BCS 0x0502
04FF 1AE2 SUB R14,R18
0500 0AF3 SBC R15,R19
0501 9503 INC R16
0502 958A DEC R24
0503 F7A1 BNE 0x04F8
0504 F416 BRTC 0x0507
0505 2D0E MOV R16,R14
0506 2D1F MOV R17,R15
0507 9189 LD R24,Y+
0508 90F9 LD R15,Y+
0509 90E9 LD R14,Y+
050A 9508 RET
empy16s:
050B 920A ST R0,-Y
050C 921A ST R1,-Y
050D 938A ST R24,-Y
050E 939A ST R25,-Y
050F 9F02 MUL R16,R18
0510 01C0 MOVW R24,R0
0511 9F12 MUL R17,R18
0512 0D90 ADD R25,R0
0513 9F03 MUL R16,R19
0514 0D90 ADD R25,R0
0515 018C MOVW R16,R24
0516 9199 LD R25,Y+
0517 9189 LD R24,Y+
0518 9019 LD R1,Y+
0519 9009 LD R0,Y+
051A 9508 RET
pop_gset2:
051B E0E2 LDI R30,2
051C 940C052D JMP pop
pop_gset3:
051E E0E4 LDI R30,4
051F 940C052D JMP pop
push_gset5:
0521 92FA ST R15,-Y
0522 92EA ST R14,-Y
push_gset4:
0523 92DA ST R13,-Y
0524 92CA ST R12,-Y
push_gset3:
0525 92BA ST R11,-Y
0526 92AA ST R10,-Y
push_gset2:
0527 937A ST R23,-Y
0528 936A ST R22,-Y
push_gset1:
0529 935A ST R21,-Y
052A 934A ST R20,-Y
052B 9508 RET
pop_gset1:
052C E0E1 LDI R30,1
pop:
052D 9149 LD R20,Y+
052E 9159 LD R21,Y+
052F FDE0 SBRC R30,0
0530 9508 RET
0531 9169 LD R22,Y+
0532 9179 LD R23,Y+
0533 FDE1 SBRC R30,1
0534 9508 RET
0535 90A9 LD R10,Y+
0536 90B9 LD R11,Y+
0537 FDE2 SBRC R30,2
0538 9508 RET
0539 90C9 LD R12,Y+
053A 90D9 LD R13,Y+
053B FDE3 SBRC R30,3
053C 9508 RET
053D 90E9 LD R14,Y+
053E 90F9 LD R15,Y+
053F 9508 RET
neg32:
0540 9500 COM R16
0541 9510 COM R17
0542 9520 COM R18
0543 9530 COM R19
0544 5F0F SUBI R16,0xFF
0545 4F1F SBCI R17,0xFF
0546 4F2F SBCI R18,0xFF
0547 4F3F SBCI R19,0xFF
0548 9508 RET
lpm32:
0549 93EA ST R30,-Y
054A 93FA ST R31,-Y
054B 920A ST R0,-Y
054C 2FE0 MOV R30,R16
054D 2FF1 MOV R31,R17
054E 95C8 LPM
054F 2D00 MOV R16,R0
0550 9631 ADIW R30,1
0551 95C8 LPM
0552 2D10 MOV R17,R0
0553 9631 ADIW R30,1
0554 95C8 LPM
0555 2D20 MOV R18,R0
0556 9631 ADIW R30,1
0557 95C8 LPM
0558 2D30 MOV R19,R0
0559 9009 LD R0,Y+
055A 91F9 LD R31,Y+
055B 91E9 LD R30,Y+
055C 9508 RET
fp2int:
055D 940E073B CALL savfacc1
055F D014 RCALL FTOI
0560 2F02 MOV R16,R18
0561 2F13 MOV R17,R19
0562 FD87 SBRC R24,7
0563 C002 RJMP nojump1
0564 940C073E JMP restorefacc1
nojump1:
0566 9510 COM R17
0567 9501 NEG R16
0568 4F1F SBCI R17,0xFF
0569 940C073E JMP restorefacc1
fp2long:
056B 940E073B CALL savfacc1
056D D008 RCALL FTOL
056E FF87 SBRS R24,7
056F C002 RJMP nojump2
0570 940E0540 CALL neg32
nojump2:
0572 940C073E JMP restorefacc1
FTOI:
0574 E0BE LDI R27,0xE
0575 C001 RJMP 0x0577
FTOL:
0576 E1BE LDI R27,0x1E
0577 940E0741 CALL unpackfacc1
0579 F069 BEQ 0x0587
057A 1BB3 SUB R27,R19
057B F009 BEQ 0x057D
057C F472 BPL 0x058B
057D 2388 TST R24
057E F022 BMI 0x0583
057F E010 LDI R17,0
0580 E700 LDI R16,0x70
0581 940C0549 JMP lpm32
0583 E010 LDI R17,0
0584 E706 LDI R16,0x76
0585 940C0549 JMP lpm32
0587 E010 LDI R17,0
0588 E704 LDI R16,0x74
0589 940C0549 JMP lpm32
058B 9533 INC R19
058C F3D2 BMI 0x0587
058D E030 LDI R19,0
058E 50B8 SUBI R27,0x8
058F F452 BPL 0x059A
0590 5FB8 SUBI R27,0xF8
0591 2F32 MOV R19,R18
0592 2F21 MOV R18,R17
0593 2F10 MOV R17,R16
0594 E800 LDI R16,0x80
0595 C006 RJMP 0x059C
0596 2F01 MOV R16,R17
0597 2F12 MOV R17,R18
0598 E020 LDI R18,0
0599 50B8 SUBI R27,0x8
059A 30B8 CPI R27,0x8
059B F7D0 BCC 0x0596
059C 23BB TST R27
059D F031 BEQ 0x05A4
059E 9536 LSR R19
059F 9527 ROR R18
05A0 9517 ROR R17
05A1 9507 ROR R16
05A2 95BA DEC R27
05A3 F7D1 BNE 0x059E
05A4 9508 RET
int2fp:
05A5 2722 CLR R18
05A6 FD17 SBRC R17,7
05A7 9520 COM R18
05A8 2733 CLR R19
05A9 FD27 SBRC R18,7
05AA 9530 COM R19
long2fp:
05AB 940E073B CALL savfacc1
05AD D002 RCALL ITOF
05AE 940C073E JMP restorefacc1
ITOF:
05B0 2788 CLR R24
05B1 2333 TST R19
05B2 F41A BPL 0x05B6
05B3 940E0540 CALL neg32
05B5 9580 COM R24
05B6 2FB0 MOV R27,R16
05B7 2BB1 OR R27,R17
05B8 2BB2 OR R27,R18
05B9 2BB3 OR R27,R19
05BA F411 BNE 0x05BD
05BB 940C0757 JMP minres
05BD E1B6 LDI R27,0x16
05BE C005 RJMP itof2
05BF 95B3 INC R27
05C0 9536 LSR R19
05C1 9527 ROR R18
05C2 9517 ROR R17
05C3 9507 ROR R16
itof2:
05C4 2333 TST R19
05C5 F7C9 BNE 0x05BF
itof3:
05C6 2322 TST R18
05C7 F449 BNE 0x05D1
05C8 50B8 SUBI R27,0x8
05C9 2F21 MOV R18,R17
05CA 2F10 MOV R17,R16
05CB E000 LDI R16,0
05CC CFF9 RJMP itof3
05CD 95BA DEC R27
05CE 0F00 LSL R16
05CF 1F11 ROL R17
05D0 1F22 ROL R18
05D1 F7DA BPL 0x05CD
05D2 2F3B MOV R19,R27
05D3 940C0781 JMP repack
save_floatregs:
05D5 92DA ST R13,-Y
05D6 92EA ST R14,-Y
05D7 92FA ST R15,-Y
05D8 938A ST R24,-Y
05D9 922A ST R2,-Y
05DA 923A ST R3,-Y
05DB 924A ST R4,-Y
05DC 939A ST R25,-Y
05DD 93AA ST R26,-Y
05DE 93BA ST R27,-Y
05DF 9508 RET
restore_floatregs:
05E0 91B9 LD R27,Y+
05E1 91A9 LD R26,Y+
05E2 9199 LD R25,Y+
05E3 9049 LD R4,Y+
05E4 9039 LD R3,Y+
05E5 9029 LD R2,Y+
05E6 9189 LD R24,Y+
05E7 90F9 LD R15,Y+
05E8 90E9 LD R14,Y+
05E9 90D9 LD R13,Y+
05EA 9508 RET
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -