📄 adc.lst
字号:
0317 931A ST R17,-Y
0318 930A ST R16,-Y
0319 01FE MOVW R30,R28
031A 8424 LDD R2,Z+12
031B 8435 LDD R3,Z+13
031C 8446 LDD R4,Z+14
031D 8457 LDD R5,Z+15
031E 925A ST R5,-Y
031F 924A ST R4,-Y
0320 923A ST R3,-Y
0321 922A ST R2,-Y
0322 940E05FA CALL empy32f
0324 01FE MOVW R30,R28
0325 8300 STD Z+0,R16
0326 8311 STD Z+1,R17
0327 8322 STD Z+2,R18
0328 8333 STD Z+3,R19
0329 01FE MOVW R30,R28
032A 8020 LDD R2,Z+0
032B 8031 LDD R3,Z+1
032C 8042 LDD R4,Z+2
032D 8053 LDD R5,Z+3
032E 925A ST R5,-Y
032F 924A ST R4,-Y
0330 923A ST R3,-Y
0331 922A ST R2,-Y
0332 EB01 LDI R16,0xB1
0333 E010 LDI R17,0
0334 940E0452 CALL lpm32
0336 933A ST R19,-Y
0337 932A ST R18,-Y
0338 931A ST R17,-Y
0339 930A ST R16,-Y
033A 940E05C6 CALL cmp32f
033C F0CC BLT 0x0356
033D 01FE MOVW R30,R28
033E 8020 LDD R2,Z+0
033F 8031 LDD R3,Z+1
0340 8042 LDD R4,Z+2
0341 8053 LDD R5,Z+3
0342 925A ST R5,-Y
0343 924A ST R4,-Y
0344 923A ST R3,-Y
0345 922A ST R2,-Y
0346 EB01 LDI R16,0xB1
0347 E010 LDI R17,0
0348 940E0452 CALL lpm32
034A 933A ST R19,-Y
034B 932A ST R18,-Y
034C 931A ST R17,-Y
034D 930A ST R16,-Y
034E 940E0513 CALL sub32f
0350 940E0466 CALL fp2int
0352 01B8 MOVW R22,R16
0353 5060 SUBI R22,0
0354 4870 SBCI R23,0x80
0355 C008 RJMP 0x035E
0356 01FE MOVW R30,R28
0357 8100 LDD R16,Z+0
0358 8111 LDD R17,Z+1
0359 8122 LDD R18,Z+2
035A 8133 LDD R19,Z+3
035B 940E0466 CALL fp2int
035D 01B8 MOVW R22,R16
035E 01AB MOVW R20,R22
(0177) point_pos=2;
035F E082 LDI R24,2
0360 93800101 STS point_pos,R24
(0178) Seg7_Led_Buf[3]=temp/1000;
0362 EE28 LDI R18,0xE8
0363 E033 LDI R19,3
0364 018A MOVW R16,R20
0365 940E040D CALL div16u
0367 93000109 STS Seg7_Led_Buf+3,R16
(0179) Seg7_Led_Buf[2]=(temp%1000)/100;
0369 EE28 LDI R18,0xE8
036A E033 LDI R19,3
036B 018A MOVW R16,R20
036C 940E040B CALL mod16u
036E E624 LDI R18,0x64
036F E030 LDI R19,0
0370 940E040D CALL div16u
0372 93000108 STS Seg7_Led_Buf+2,R16
(0180) Seg7_Led_Buf[1]=(temp%100)/10;
0374 E624 LDI R18,0x64
0375 E030 LDI R19,0
0376 018A MOVW R16,R20
0377 940E040B CALL mod16u
0379 E02A LDI R18,0xA
037A E030 LDI R19,0
037B 940E040D CALL div16u
037D 93000107 STS Seg7_Led_Buf+1,R16
(0181) Seg7_Led_Buf[0]=temp%10;
037F E02A LDI R18,0xA
0380 E030 LDI R19,0
0381 018A MOVW R16,R20
0382 940E040B CALL mod16u
0384 93000106 STS Seg7_Led_Buf,R16
(0182) Seg7_Led_Update();
0386 DDA4 RCALL _Seg7_Led_Update
(0183) }
0387 C076 RJMP 0x03FE
(0184) else
(0185) {
(0186) temp=data*1000;
0388 EA05 LDI R16,0xA5
0389 E010 LDI R17,0
038A 940E0452 CALL lpm32
038C 933A ST R19,-Y
038D 932A ST R18,-Y
038E 931A ST R17,-Y
038F 930A ST R16,-Y
0390 01FE MOVW R30,R28
0391 8424 LDD R2,Z+12
0392 8435 LDD R3,Z+13
0393 8446 LDD R4,Z+14
0394 8457 LDD R5,Z+15
0395 925A ST R5,-Y
0396 924A ST R4,-Y
0397 923A ST R3,-Y
0398 922A ST R2,-Y
0399 940E05FA CALL empy32f
039B 01FE MOVW R30,R28
039C 8300 STD Z+0,R16
039D 8311 STD Z+1,R17
039E 8322 STD Z+2,R18
039F 8333 STD Z+3,R19
03A0 01FE MOVW R30,R28
03A1 8020 LDD R2,Z+0
03A2 8031 LDD R3,Z+1
03A3 8042 LDD R4,Z+2
03A4 8053 LDD R5,Z+3
03A5 925A ST R5,-Y
03A6 924A ST R4,-Y
03A7 923A ST R3,-Y
03A8 922A ST R2,-Y
03A9 EB01 LDI R16,0xB1
03AA E010 LDI R17,0
03AB 940E0452 CALL lpm32
03AD 933A ST R19,-Y
03AE 932A ST R18,-Y
03AF 931A ST R17,-Y
03B0 930A ST R16,-Y
03B1 940E05C6 CALL cmp32f
03B3 F0CC BLT 0x03CD
03B4 01FE MOVW R30,R28
03B5 8020 LDD R2,Z+0
03B6 8031 LDD R3,Z+1
03B7 8042 LDD R4,Z+2
03B8 8053 LDD R5,Z+3
03B9 925A ST R5,-Y
03BA 924A ST R4,-Y
03BB 923A ST R3,-Y
03BC 922A ST R2,-Y
03BD EB01 LDI R16,0xB1
03BE E010 LDI R17,0
03BF 940E0452 CALL lpm32
03C1 933A ST R19,-Y
03C2 932A ST R18,-Y
03C3 931A ST R17,-Y
03C4 930A ST R16,-Y
03C5 940E0513 CALL sub32f
03C7 940E0466 CALL fp2int
03C9 01B8 MOVW R22,R16
03CA 5060 SUBI R22,0
03CB 4870 SBCI R23,0x80
03CC C008 RJMP 0x03D5
03CD 01FE MOVW R30,R28
03CE 8100 LDD R16,Z+0
03CF 8111 LDD R17,Z+1
03D0 8122 LDD R18,Z+2
03D1 8133 LDD R19,Z+3
03D2 940E0466 CALL fp2int
03D4 01B8 MOVW R22,R16
03D5 01AB MOVW R20,R22
(0187) point_pos=3;
03D6 E083 LDI R24,3
03D7 93800101 STS point_pos,R24
(0188) Seg7_Led_Buf[3]=temp/1000;
03D9 EE28 LDI R18,0xE8
03DA E033 LDI R19,3
03DB 018A MOVW R16,R20
03DC 940E040D CALL div16u
03DE 93000109 STS Seg7_Led_Buf+3,R16
(0189) Seg7_Led_Buf[2]=(temp%1000)/100;
03E0 EE28 LDI R18,0xE8
03E1 E033 LDI R19,3
03E2 018A MOVW R16,R20
03E3 940E040B CALL mod16u
03E5 E624 LDI R18,0x64
03E6 E030 LDI R19,0
03E7 940E040D CALL div16u
03E9 93000108 STS Seg7_Led_Buf+2,R16
(0190) Seg7_Led_Buf[1]=(temp%100)/10;
03EB E624 LDI R18,0x64
03EC E030 LDI R19,0
03ED 018A MOVW R16,R20
03EE 940E040B CALL mod16u
03F0 E02A LDI R18,0xA
03F1 E030 LDI R19,0
03F2 940E040D CALL div16u
03F4 93000107 STS Seg7_Led_Buf+1,R16
(0191) Seg7_Led_Buf[0]=temp%10;
03F6 E02A LDI R18,0xA
03F7 E030 LDI R19,0
03F8 018A MOVW R16,R20
03F9 940E040B CALL mod16u
03FB 93000106 STS Seg7_Led_Buf,R16
(0192) Seg7_Led_Update();
03FD DD2D RCALL _Seg7_Led_Update
(0193) }
(0194) point=0;
FILE: <library>
03FE 2422 CLR R2
03FF 92200100 STS point,R2
0401 9624 ADIW R28,4
0402 940E0427 CALL pop_gset2
0404 9624 ADIW R28,4
0405 9508 RET
push_arg4:
0406 933A ST R19,-Y
0407 932A ST R18,-Y
push_arg2:
0408 931A ST R17,-Y
0409 930A ST R16,-Y
040A 9508 RET
mod16u:
040B 9468 BSET 6
040C C001 RJMP xdiv16u
div16u:
040D 94E8 BCLR 6
xdiv16u:
040E 92EA ST R14,-Y
040F 92FA ST R15,-Y
0410 938A ST R24,-Y
0411 24EE CLR R14
0412 24FF CLR R15
0413 E180 LDI R24,0x10
0414 0F00 LSL R16
0415 1F11 ROL R17
0416 1CEE ROL R14
0417 1CFF ROL R15
0418 16E2 CP R14,R18
0419 06F3 CPC R15,R19
041A F018 BCS 0x041E
041B 1AE2 SUB R14,R18
041C 0AF3 SBC R15,R19
041D 9503 INC R16
041E 958A DEC R24
041F F7A1 BNE 0x0414
0420 F416 BRTC 0x0423
0421 2D0E MOV R16,R14
0422 2D1F MOV R17,R15
0423 9189 LD R24,Y+
0424 90F9 LD R15,Y+
0425 90E9 LD R14,Y+
0426 9508 RET
pop_gset2:
0427 E0E2 LDI R30,2
0428 940C0436 JMP pop
push_gset5:
042A 92FA ST R15,-Y
042B 92EA ST R14,-Y
push_gset4:
042C 92DA ST R13,-Y
042D 92CA ST R12,-Y
push_gset3:
042E 92BA ST R11,-Y
042F 92AA ST R10,-Y
push_gset2:
0430 937A ST R23,-Y
0431 936A ST R22,-Y
push_gset1:
0432 935A ST R21,-Y
0433 934A ST R20,-Y
0434 9508 RET
pop_gset1:
0435 E0E1 LDI R30,1
pop:
0436 9149 LD R20,Y+
0437 9159 LD R21,Y+
0438 FDE0 SBRC R30,0
0439 9508 RET
043A 9169 LD R22,Y+
043B 9179 LD R23,Y+
043C FDE1 SBRC R30,1
043D 9508 RET
043E 90A9 LD R10,Y+
043F 90B9 LD R11,Y+
0440 FDE2 SBRC R30,2
0441 9508 RET
0442 90C9 LD R12,Y+
0443 90D9 LD R13,Y+
0444 FDE3 SBRC R30,3
0445 9508 RET
0446 90E9 LD R14,Y+
0447 90F9 LD R15,Y+
0448 9508 RET
neg32:
0449 9500 COM R16
044A 9510 COM R17
044B 9520 COM R18
044C 9530 COM R19
044D 5F0F SUBI R16,0xFF
044E 4F1F SBCI R17,0xFF
044F 4F2F SBCI R18,0xFF
0450 4F3F SBCI R19,0xFF
0451 9508 RET
lpm32:
0452 93EA ST R30,-Y
0453 93FA ST R31,-Y
0454 920A ST R0,-Y
0455 2FE0 MOV R30,R16
0456 2FF1 MOV R31,R17
0457 95C8 LPM
0458 2D00 MOV R16,R0
0459 9631 ADIW R30,1
045A 95C8 LPM
045B 2D10 MOV R17,R0
045C 9631 ADIW R30,1
045D 95C8 LPM
045E 2D20 MOV R18,R0
045F 9631 ADIW R30,1
0460 95C8 LPM
0461 2D30 MOV R19,R0
0462 9009 LD R0,Y+
0463 91F9 LD R31,Y+
0464 91E9 LD R30,Y+
0465 9508 RET
fp2int:
0466 940E0644 CALL savfacc1
0468 D014 RCALL FTOI
0469 2F02 MOV R16,R18
046A 2F13 MOV R17,R19
046B FD87 SBRC R24,7
046C C002 RJMP nojump1
046D 940C0647 JMP restorefacc1
nojump1:
046F 9510 COM R17
0470 9501 NEG R16
0471 4F1F SBCI R17,0xFF
0472 940C0647 JMP restorefacc1
fp2long:
0474 940E0644 CALL savfacc1
0476 D008 RCALL FTOL
0477 FF87 SBRS R24,7
0478 C002 RJMP nojump2
0479 940E0449 CALL neg32
nojump2:
047B 940C0647 JMP restorefacc1
FTOI:
047D E0BE LDI R27,0xE
047E C001 RJMP 0x0480
FTOL:
047F E1BE LDI R27,0x1E
0480 940E064A CALL unpackfacc1
0482 F069 BEQ 0x0490
0483 1BB3 SUB R27,R19
0484 F009 BEQ 0x0486
0485 F472 BPL 0x0494
0486 2388 TST R24
0487 F022 BMI 0x048C
0488 E010 LDI R17,0
0489 EC05 LDI R16,0xC5
048A 940C0452 JMP lpm32
048C E010 LDI R17,0
048D EC0B LDI R16,0xCB
048E 940C0452 JMP lpm32
0490 E010 LDI R17,0
0491 EC09 LDI R16,0xC9
0492 940C0452 JMP lpm32
0494 9533 INC R19
0495 F3D2 BMI 0x0490
0496 E030 LDI R19,0
0497 50B8 SUBI R27,0x8
0498 F452 BPL 0x04A3
0499 5FB8 SUBI R27,0xF8
049A 2F32 MOV R19,R18
049B 2F21 MOV R18,R17
049C 2F10 MOV R17,R16
049D E800 LDI R16,0x80
049E C006 RJMP 0x04A5
049F 2F01 MOV R16,R17
04A0 2F12 MOV R17,R18
04A1 E020 LDI R18,0
04A2 50B8 SUBI R27,0x8
04A3 30B8 CPI R27,0x8
04A4 F7D0 BCC 0x049F
04A5 23BB TST R27
04A6 F031 BEQ 0x04AD
04A7 9536 LSR R19
04A8 9527 ROR R18
04A9 9517 ROR R17
04AA 9507 ROR R16
04AB 95BA DEC R27
04AC F7D1 BNE 0x04A7
04AD 9508 RET
int2fp:
04AE 2722 CLR R18
04AF FD17 SBRC R17,7
04B0 9520 COM R18
04B1 2733 CLR R19
04B2 FD27 SBRC R18,7
04B3 9530 COM R19
long2fp:
04B4 940E0644 CALL savfacc1
04B6 D002 RCALL ITOF
04B7 940C0647 JMP restorefacc1
ITOF:
04B9 2788 CLR R24
04BA 2333 TST R19
04BB F41A BPL 0x04BF
04BC 940E0449 CALL neg32
04BE 9580 COM R24
04BF 2FB0 MOV R27,R16
04C0 2BB1 OR R27,R17
04C1 2BB2 OR R27,R18
04C2 2BB3 OR R27,R19
04C3 F411 BNE 0x04C6
04C4 940C0660 JMP minres
04C6 E1B6 LDI R27,0x16
04C7 C005 RJMP itof2
04C8 95B3 INC R27
04C9 9536 LSR R19
04CA 9527 ROR R18
04CB 9517 ROR R17
04CC 9507 ROR R16
itof2:
04CD 2333 TST R19
04CE F7C9 BNE 0x04C8
itof3:
04CF 2322 TST R18
04D0 F449 BNE 0x04DA
04D1 50B8 SUBI R27,0x8
04D2 2F21 MOV R18,R17
04D3 2F10 MOV R17,R16
04D4 E000 LDI R16,0
04D5 CFF9 RJMP itof3
04D6 95BA DEC R27
04D7 0F00 LSL R16
04D8 1F11 ROL R17
04D9 1F22 ROL R18
04DA F7DA BPL 0x04D6
04DB 2F3B MOV R19,R27
04DC 940C068A JMP repack
save_floatregs:
04DE 92DA ST R13,-Y
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -