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

📄 ad2543.lst

📁 在mega128上实现ad2543的驱动程序
💻 LST
📖 第 1 页 / 共 4 页
字号:
    0381 932A      ST	R18,-Y
    0382 931A      ST	R17,-Y
    0383 930A      ST	R16,-Y
    0384 91000100  LDS	R16,vol16bit
    0386 91100101  LDS	R17,vol16bit+1
    0388 9516      LSR	R17
    0389 9507      ROR	R16
    038A 940E04E5  CALL	int2fp
    038C 933A      ST	R19,-Y
    038D 932A      ST	R18,-Y
    038E 931A      ST	R17,-Y
    038F 930A      ST	R16,-Y
    0390 940E0609  CALL	empy32fs
    0392 91000100  LDS	R16,vol16bit
    0394 91100101  LDS	R17,vol16bit+1
    0396 7001      ANDI	R16,1
    0397 7010      ANDI	R17,0
    0398 940E04E5  CALL	int2fp
    039A 933A      ST	R19,-Y
    039B 932A      ST	R18,-Y
    039C 931A      ST	R17,-Y
    039D 930A      ST	R16,-Y
    039E 940E053F  CALL	add32fs
    03A0 E80C      LDI	R16,0x8C
    03A1 E010      LDI	R17,0
    03A2 940E0489  CALL	lpm32
    03A4 933A      ST	R19,-Y
    03A5 932A      ST	R18,-Y
    03A6 931A      ST	R17,-Y
    03A7 930A      ST	R16,-Y
    03A8 940E05A0  CALL	div32fs
    03AA 940E060C  CALL	empy32f
    03AC 93100112  STS	voltemp+1,R17
    03AE 93000111  STS	voltemp,R16
    03B0 93300114  STS	voltemp+3,R19
    03B2 93200113  STS	voltemp+2,R18
    03B4 940E049D  CALL	fp2int
    03B6 93100110  STS	vint+1,R17
    03B8 9300010F  STS	vint,R16
    03BA 0118      MOVW	R2,R16
    03BB 8239      STD	Y+1,R3
    03BC 8228      STD	Y+0,R2
    03BD E025      LDI	R18,5
    03BE E002      LDI	R16,2
    03BF DDD4      RCALL	_LCD_DisplayInt
    03C0 E001      LDI	R16,1
    03C1 E010      LDI	R17,0
    03C2 DCD5      RCALL	_delay_nms
    03C3 CFAB      RJMP	0x036F
    03C4 9622      ADIW	R28,2
    03C5 9508      RET
push_arg4:
    03C6 933A      ST	R19,-Y
    03C7 932A      ST	R18,-Y
push_arg2:
    03C8 931A      ST	R17,-Y
    03C9 930A      ST	R16,-Y
    03CA 9508      RET
mod16u:
    03CB 9468      BSET	6
    03CC C001      RJMP	xdiv16u
div16u:
    03CD 94E8      BCLR	6
xdiv16u:
    03CE 92EA      ST	R14,-Y
    03CF 92FA      ST	R15,-Y
    03D0 938A      ST	R24,-Y
    03D1 24EE      CLR	R14
    03D2 24FF      CLR	R15
    03D3 E180      LDI	R24,0x10
    03D4 0F00      LSL	R16
    03D5 1F11      ROL	R17
    03D6 1CEE      ROL	R14
    03D7 1CFF      ROL	R15
    03D8 16E2      CP	R14,R18
    03D9 06F3      CPC	R15,R19
    03DA F018      BCS	0x03DE
    03DB 1AE2      SUB	R14,R18
    03DC 0AF3      SBC	R15,R19
    03DD 9503      INC	R16
    03DE 958A      DEC	R24
    03DF F7A1      BNE	0x03D4
    03E0 F416      BRTC	0x03E3
    03E1 2D0E      MOV	R16,R14
    03E2 2D1F      MOV	R17,R15
    03E3 9189      LD	R24,Y+
    03E4 90F9      LD	R15,Y+
    03E5 90E9      LD	R14,Y+
    03E6 9508      RET
div32u:
    03E7 94E8      BCLR	6
    03E8 C001      RJMP	0x03EA
mod32u:
    03E9 9468      BSET	6
    03EA D02F      RCALL	long_div_prolog
    03EB 24CC      CLR	R12
    03EC C008      RJMP	0x03F5
div32s:
    03ED 94E8      BCLR	6
    03EE C001      RJMP	0x03F0
mod32s:
    03EF 9468      BSET	6
    03F0 D029      RCALL	long_div_prolog
    03F1 FD37      SBRC	R19,7
    03F2 D053      RCALL	neg_R16_R19
    03F3 FDB7      SBRC	R27,7
    03F4 D05A      RCALL	neg_R24_R27
    03F5 2477      CLR	R7
    03F6 2488      CLR	R8
    03F7 2499      CLR	R9
    03F8 24AA      CLR	R10
    03F9 24BB      CLR	R11
    03FA D041      RCALL	tst_R16_R19
    03FB F0C1      BEQ	0x0414
    03FC D044      RCALL	tst_R24_R27
    03FD F0B1      BEQ	0x0414
    03FE E2E8      LDI	R30,0x28
    03FF 0F00      LSL	R16
    0400 1F11      ROL	R17
    0401 1F22      ROL	R18
    0402 1F33      ROL	R19
    0403 1C77      ROL	R7
    0404 1C88      ROL	R8
    0405 1C99      ROL	R9
    0406 1CAA      ROL	R10
    0407 1CBB      ROL	R11
    0408 1688      CP	R8,R24
    0409 0699      CPC	R9,R25
    040A 06AA      CPC	R10,R26
    040B 06BB      CPC	R11,R27
    040C F028      BCS	0x0412
    040D 1A88      SUB	R8,R24
    040E 0A99      SBC	R9,R25
    040F 0AAA      SBC	R10,R26
    0410 0ABB      SBC	R11,R27
    0411 9503      INC	R16
    0412 95EA      DEC	R30
    0413 F759      BNE	0x03FF
    0414 F426      BRTC	0x0419
    0415 2D08      MOV	R16,R8
    0416 2D19      MOV	R17,R9
    0417 2D2A      MOV	R18,R10
    0418 2D3B      MOV	R19,R11
    0419 C013      RJMP	long_div_epilog
long_div_prolog:
    041A 927A      ST	R7,-Y
    041B 928A      ST	R8,-Y
    041C 929A      ST	R9,-Y
    041D 92AA      ST	R10,-Y
    041E 92BA      ST	R11,-Y
    041F 92CA      ST	R12,-Y
    0420 93EA      ST	R30,-Y
    0421 938A      ST	R24,-Y
    0422 939A      ST	R25,-Y
    0423 93AA      ST	R26,-Y
    0424 93BA      ST	R27,-Y
    0425 858B      LDD	R24,Y+11
    0426 859C      LDD	R25,Y+12
    0427 85AD      LDD	R26,Y+13
    0428 85BE      LDD	R27,Y+14
    0429 2EC3      MOV	R12,R19
    042A F00E      BRTS	0x042C
    042B 26CB      EOR	R12,R27
    042C 9508      RET
long_div_epilog:
    042D FCC7      SBRC	R12,7
    042E D017      RCALL	neg_R16_R19
    042F 91B9      LD	R27,Y+
    0430 91A9      LD	R26,Y+
    0431 9199      LD	R25,Y+
    0432 9189      LD	R24,Y+
    0433 91E9      LD	R30,Y+
    0434 90C9      LD	R12,Y+
    0435 90B9      LD	R11,Y+
    0436 90A9      LD	R10,Y+
    0437 9099      LD	R9,Y+
    0438 9089      LD	R8,Y+
    0439 9079      LD	R7,Y+
    043A 9624      ADIW	R28,4
    043B 9508      RET
tst_R16_R19:
    043C 2FE0      MOV	R30,R16
    043D 2BE1      OR	R30,R17
    043E 2BE2      OR	R30,R18
    043F 2BE3      OR	R30,R19
    0440 9508      RET
tst_R24_R27:
    0441 2FE8      MOV	R30,R24
    0442 2BE9      OR	R30,R25
    0443 2BEA      OR	R30,R26
    0444 2BEB      OR	R30,R27
    0445 9508      RET
neg_R16_R19:
    0446 9500      COM	R16
    0447 9510      COM	R17
    0448 9520      COM	R18
    0449 9530      COM	R19
    044A 5F0F      SUBI	R16,0xFF
    044B 4F1F      SBCI	R17,0xFF
    044C 4F2F      SBCI	R18,0xFF
    044D 4F3F      SBCI	R19,0xFF
    044E 9508      RET
neg_R24_R27:
    044F 9580      COM	R24
    0450 9590      COM	R25
    0451 95A0      COM	R26
    0452 95B0      COM	R27
    0453 5F8F      SUBI	R24,0xFF
    0454 4F9F      SBCI	R25,0xFF
    0455 4FAF      SBCI	R26,0xFF
    0456 4FBF      SBCI	R27,0xFF
    0457 9508      RET
pop_gset2:
    0458 E0E2      LDI	R30,2
    0459 940C046D  JMP	pop
pop_gset3:
    045B E0E4      LDI	R30,4
    045C 940C046D  JMP	pop
pop_gset5:
    045E 27EE      CLR	R30
    045F 940C046D  JMP	pop
push_gset5:
    0461 92FA      ST	R15,-Y
    0462 92EA      ST	R14,-Y
push_gset4:
    0463 92DA      ST	R13,-Y
    0464 92CA      ST	R12,-Y
push_gset3:
    0465 92BA      ST	R11,-Y
    0466 92AA      ST	R10,-Y
push_gset2:
    0467 937A      ST	R23,-Y
    0468 936A      ST	R22,-Y
push_gset1:
    0469 935A      ST	R21,-Y
    046A 934A      ST	R20,-Y
    046B 9508      RET
pop_gset1:
    046C E0E1      LDI	R30,1
pop:
    046D 9149      LD	R20,Y+
    046E 9159      LD	R21,Y+
    046F FDE0      SBRC	R30,0
    0470 9508      RET
    0471 9169      LD	R22,Y+
    0472 9179      LD	R23,Y+
    0473 FDE1      SBRC	R30,1
    0474 9508      RET
    0475 90A9      LD	R10,Y+
    0476 90B9      LD	R11,Y+
    0477 FDE2      SBRC	R30,2
    0478 9508      RET
    0479 90C9      LD	R12,Y+
    047A 90D9      LD	R13,Y+
    047B FDE3      SBRC	R30,3
    047C 9508      RET
    047D 90E9      LD	R14,Y+
    047E 90F9      LD	R15,Y+
    047F 9508      RET
neg32:
    0480 9500      COM	R16
    0481 9510      COM	R17
    0482 9520      COM	R18
    0483 9530      COM	R19
    0484 5F0F      SUBI	R16,0xFF
    0485 4F1F      SBCI	R17,0xFF
    0486 4F2F      SBCI	R18,0xFF
    0487 4F3F      SBCI	R19,0xFF
    0488 9508      RET
lpm32:
    0489 93EA      ST	R30,-Y
    048A 93FA      ST	R31,-Y
    048B 920A      ST	R0,-Y
    048C 2FE0      MOV	R30,R16
    048D 2FF1      MOV	R31,R17
    048E 95C8      LPM
    048F 2D00      MOV	R16,R0
    0490 9631      ADIW	R30,1
    0491 95C8      LPM
    0492 2D10      MOV	R17,R0
    0493 9631      ADIW	R30,1
    0494 95C8      LPM
    0495 2D20      MOV	R18,R0
    0496 9631      ADIW	R30,1
    0497 95C8      LPM
    0498 2D30      MOV	R19,R0
    0499 9009      LD	R0,Y+
    049A 91F9      LD	R31,Y+
    049B 91E9      LD	R30,Y+
    049C 9508      RET
fp2int:
    049D 940E0656  CALL	savfacc1
    049F D014      RCALL	FTOI
    04A0 2F02      MOV	R16,R18
    04A1 2F13      MOV	R17,R19
    04A2 FD87      SBRC	R24,7
    04A3 C002      RJMP	nojump1
    04A4 940C0659  JMP	restorefacc1
nojump1:
    04A6 9510      COM	R17
    04A7 9501      NEG	R16
    04A8 4F1F      SBCI	R17,0xFF
    04A9 940C0659  JMP	restorefacc1
fp2long:
    04AB 940E0656  CALL	savfacc1
    04AD D008      RCALL	FTOL
    04AE FF87      SBRS	R24,7
    04AF C002      RJMP	nojump2
    04B0 940E0480  CALL	neg32
nojump2:
    04B2 940C0659  JMP	restorefacc1
FTOI:
    04B4 E0BE      LDI	R27,0xE
    04B5 C001      RJMP	0x04B7
FTOL:
    04B6 E1BE      LDI	R27,0x1E
    04B7 940E065C  CALL	unpackfacc1
    04B9 F069      BEQ	0x04C7
    04BA 1BB3      SUB	R27,R19
    04BB F009      BEQ	0x04BD
    04BC F472      BPL	0x04CB
    04BD 2388      TST	R24
    04BE F022      BMI	0x04C3
    04BF E010      LDI	R17,0
    04C0 E908      LDI	R16,0x98
    04C1 940C0489  JMP	lpm32
    04C3 E010      LDI	R17,0
    04C4 E90E      LDI	R16,0x9E
    04C5 940C0489  JMP	lpm32
    04C7 E010      LDI	R17,0
    04C8 E90C      LDI	R16,0x9C
    04C9 940C0489  JMP	lpm32
    04CB 9533      INC	R19
    04CC F3D2      BMI	0x04C7
    04CD E030      LDI	R19,0
    04CE 50B8      SUBI	R27,0x8
    04CF F452      BPL	0x04DA
    04D0 5FB8      SUBI	R27,0xF8
    04D1 2F32      MOV	R19,R18
    04D2 2F21      MOV	R18,R17
    04D3 2F10      MOV	R17,R16
    04D4 E800      LDI	R16,0x80
    04D5 C006      RJMP	0x04DC
    04D6 2F01      MOV	R16,R17
    04D7 2F12      MOV	R17,R18
    04D8 E020      LDI	R18,0
    04D9 50B8      SUBI	R27,0x8
    04DA 30B8      CPI	R27,0x8
    04DB F7D0      BCC	0x04D6
    04DC 23BB      TST	R27
    04DD F031      BEQ	0x04E4
    04DE 9536      LSR	R19
    04DF 9527      ROR	R18
    04E0 9517      ROR	R17
    04E1 9507      ROR	R16
    04E2 95BA      DEC	R27
    04E3 F7D1      BNE	0x04DE
    04E4 9508      RET
int2fp:
    04E5 2722      CLR	R18
    04E6 FD17      SBRC	R17,7
    04E7 9520      COM	R18
    04E8 2733      CLR	R19
    04E9 FD27      SBRC	R18,7
    04EA 9530      COM	R19
long2fp:
    04EB 940E0656  CALL	savfacc1
    04ED D002      RCALL	ITOF
    04EE 940C0659  JMP	restorefacc1
ITOF:
    04F0 2788      CLR	R24
    04F1 2333      TST	R19
    04F2 F41A      BPL	0x04F6
    04F3 940E0480  CALL	neg32
    04F5 9580      COM	R24
    04F6 2FB0      MOV	R27,R16
    04F7 2BB1      OR	R27,R17
    04F8 2BB2      OR	R27,R18
    04F9 2BB3      OR	R27,R19
    04FA F411      BNE	0x04FD
    04FB 940C0672  JMP	minres
    04FD E1B6      LDI	R27,0x16
    04FE C005      RJMP	itof2
    04FF 95B3      INC	R27
    0500 9536      LSR	R19
    0501 9527      ROR	R18
    0502 9517      ROR	R17
    0503 9507      ROR	R16
itof2:
    0504 2333      TST	R19
    0505 F7C9      BNE	0x04FF
itof3:
    0506 2322      TST	R18
    0507 F449      BNE	0x0511
    0508 50B8      SUBI	R27,0x8
    0509 2F21      MOV	R18,R17
    050A 2F10      MOV	R17,R16
    050B E000      LDI	R16,0
    050C CFF9      RJMP	itof3
    050D 95BA      DEC	R27
    050E 0F00      LSL	R16
    050F 1F11      ROL	R17
    0510 1F22      ROL	R18
    0511 F7DA      BPL	0x050D
    0512 2F3B      MOV	R19,R27
    0513 940C069C  JMP	repack
save_floatregs:
    0515 92DA      ST	R13,-Y

⌨️ 快捷键说明

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