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

📄 ultrawave.lst

📁 一个超声波测距的东西
💻 LST
📖 第 1 页 / 共 4 页
字号:
    03E3 7F8B      ANDI	R24,0xFB
    03E4 BF87      OUT	0x37,R24
    03E5 E48D      LDI	R24,0x4D
    03E6 E092      LDI	R25,2
    03E7 93900127  STS	time_counter+1,R25
    03E9 93800126  STS	time_counter,R24
    03EB 9189      LD	R24,Y+
    03EC BF8F      OUT	0x3F,R24
    03ED 91E9      LD	R30,Y+
    03EE 9199      LD	R25,Y+
    03EF 9189      LD	R24,Y+
    03F0 9518      RETI
_int2_init:
    03F1 988A      CBI	0x11,2
    03F2 9A92      SBI	0x12,2
    03F3 E280      LDI	R24,0x20
    03F4 9380006A  STS	0x6A,R24
    03F6 B789      IN	R24,0x39
    03F7 7F8B      ANDI	R24,0xFB
    03F8 BF89      OUT	0x39,R24
    03F9 9508      RET
_timer0_init:
    03FA 98BC      CBI	0x17,4
    03FB B780      IN	R24,0x30
    03FC 7F87      ANDI	R24,0xF7
    03FD BF80      OUT	0x30,R24
    03FE E189      LDI	R24,0x19
    03FF BF83      OUT	0x33,R24
    0400 EC87      LDI	R24,0xC7
    0401 BF81      OUT	0x31,R24
    0402 9508      RET
_timer1_init:
    0403 E081      LDI	R24,1
    0404 BD8E      OUT	0x2E,R24
    0405 EF8F      LDI	R24,0xFF
    0406 BD8D      OUT	0x2D,R24
    0407 E680      LDI	R24,0x60
    0408 BD8C      OUT	0x2C,R24
    0409 B787      IN	R24,0x37
    040A 7F8B      ANDI	R24,0xFB
    040B BF87      OUT	0x37,R24
    040C 9508      RET
_calculate_distance:
  value                --> Y+0
  time                 --> R20
    040D 940E0548  CALL	push_gset1
    040F 01A8      MOVW	R20,R16
    0410 9724      SBIW	R28,4
    0411 E900      LDI	R16,0x90
    0412 E010      LDI	R17,0
    0413 940E0568  CALL	lpm32
    0415 933A      ST	R19,-Y
    0416 932A      ST	R18,-Y
    0417 931A      ST	R17,-Y
    0418 930A      ST	R16,-Y
    0419 E80C      LDI	R16,0x8C
    041A E010      LDI	R17,0
    041B 940E0568  CALL	lpm32
    041D 933A      ST	R19,-Y
    041E 932A      ST	R18,-Y
    041F 931A      ST	R17,-Y
    0420 930A      ST	R16,-Y
    0421 018A      MOVW	R16,R20
    0422 9516      LSR	R17
    0423 9507      ROR	R16
    0424 940E05C4  CALL	int2fp
    0426 933A      ST	R19,-Y
    0427 932A      ST	R18,-Y
    0428 931A      ST	R17,-Y
    0429 930A      ST	R16,-Y
    042A 940E06B0  CALL	empy32fs
    042C 018A      MOVW	R16,R20
    042D 7001      ANDI	R16,1
    042E 7010      ANDI	R17,0
    042F 940E05C4  CALL	int2fp
    0431 933A      ST	R19,-Y
    0432 932A      ST	R18,-Y
    0433 931A      ST	R17,-Y
    0434 930A      ST	R16,-Y
    0435 940E061E  CALL	add32fs
    0437 940E06B3  CALL	empy32f
    0439 01FE      MOVW	R30,R28
    043A 8300      STD	Z+0,R16
    043B 8311      STD	Z+1,R17
    043C 8322      STD	Z+2,R18
    043D 8333      STD	Z+3,R19
    043E 01FE      MOVW	R30,R28
    043F 8100      LDD	R16,Z+0
    0440 8111      LDD	R17,Z+1
    0441 8122      LDD	R18,Z+2
    0442 8133      LDD	R19,Z+3
    0443 9624      ADIW	R28,4
    0444 940E054B  CALL	pop_gset1
    0446 9508      RET
_main:
    0447 9724      SBIW	R28,4
    0448 94F8      BCLR	7
    0449 EF8F      LDI	R24,0xFF
    044A BB8A      OUT	0x1A,R24
    044B DFA5      RCALL	_int2_init
    044C DFB6      RCALL	_timer1_init
    044D DFAC      RCALL	_timer0_init
    044E DF55      RCALL	_Init_12864
    044F DD9B      RCALL	_LcmClearTXT
    0450 E28B      LDI	R24,0x2B
    0451 E091      LDI	R25,1
    0452 8399      STD	Y+1,R25
    0453 8388      STD	Y+0,R24
    0454 2722      CLR	R18
    0455 2700      CLR	R16
    0456 DD3B      RCALL	_Display_x_y_data
    0457 E288      LDI	R24,0x28
    0458 E091      LDI	R25,1
    0459 8399      STD	Y+1,R25
    045A 8388      STD	Y+0,R24
    045B E027      LDI	R18,7
    045C 2700      CLR	R16
    045D DD34      RCALL	_Display_x_y_data
    045E 9478      BSET	7
    045F 9ABC      SBI	0x17,4
    0460 B787      IN	R24,0x37
    0461 6084      ORI	R24,4
    0462 BF87      OUT	0x37,R24
    0463 EC08      LDI	R16,0xC8
    0464 E010      LDI	R17,0
    0465 DC2B      RCALL	_delay_us
    0466 B789      IN	R24,0x39
    0467 6084      ORI	R24,4
    0468 BF89      OUT	0x39,R24
    0469 C051      RJMP	0x04BB
    046A 91800124  LDS	R24,flag
    046C 91900125  LDS	R25,flag+1
    046E 3081      CPI	R24,1
    046F E0E0      LDI	R30,0
    0470 079E      CPC	R25,R30
    0471 F009      BEQ	0x0473
    0472 C048      RJMP	0x04BB
    0473 2422      CLR	R2
    0474 2433      CLR	R3
    0475 92300125  STS	flag+1,R3
    0477 92200124  STS	flag,R2
    0479 DD71      RCALL	_LcmClearTXT
    047A E28B      LDI	R24,0x2B
    047B E091      LDI	R25,1
    047C 8399      STD	Y+1,R25
    047D 8388      STD	Y+0,R24
    047E 2722      CLR	R18
    047F 2700      CLR	R16
    0480 DD11      RCALL	_Display_x_y_data
    0481 E288      LDI	R24,0x28
    0482 E091      LDI	R25,1
    0483 8399      STD	Y+1,R25
    0484 8388      STD	Y+0,R24
    0485 E027      LDI	R18,7
    0486 2700      CLR	R16
    0487 DD0A      RCALL	_Display_x_y_data
    0488 91000126  LDS	R16,time_counter
    048A 91100127  LDS	R17,time_counter+1
    048C DF80      RCALL	_calculate_distance
    048D 93100121  STS	distance+1,R17
    048F 93000120  STS	distance,R16
    0491 93300123  STS	distance+3,R19
    0493 93200122  STS	distance+2,R18
    0495 E382      LDI	R24,0x32
    0496 E091      LDI	R25,1
    0497 839B      STD	Y+3,R25
    0498 838A      STD	Y+2,R24
    0499 E082      LDI	R24,2
    049A E090      LDI	R25,0
    049B 8399      STD	Y+1,R25
    049C 8388      STD	Y+0,R24
    049D DD77      RCALL	_Float_to_string
    049E E382      LDI	R24,0x32
    049F E091      LDI	R25,1
    04A0 8399      STD	Y+1,R25
    04A1 8388      STD	Y+0,R24
    04A2 E023      LDI	R18,3
    04A3 2700      CLR	R16
    04A4 DCED      RCALL	_Display_x_y_data
    04A5 2422      CLR	R2
    04A6 2433      CLR	R3
    04A7 92300127  STS	time_counter+1,R3
    04A9 92200126  STS	time_counter,R2
    04AB B38B      IN	R24,0x1B
    04AC 6780      ORI	R24,0x70
    04AD BB8B      OUT	0x1B,R24
    04AE EF04      LDI	R16,0xF4
    04AF E011      LDI	R17,1
    04B0 DBF4      RCALL	_delay_ms
    04B1 B38B      IN	R24,0x1B
    04B2 788F      ANDI	R24,0x8F
    04B3 BB8B      OUT	0x1B,R24
    04B4 9ABC      SBI	0x17,4
    04B5 B787      IN	R24,0x37
    04B6 6084      ORI	R24,4
    04B7 BF87      OUT	0x37,R24
    04B8 B789      IN	R24,0x39
    04B9 6084      ORI	R24,4
    04BA BF89      OUT	0x39,R24
    04BB CFAE      RJMP	0x046A
    04BC 9624      ADIW	R28,4
    04BD 9508      RET
push_arg4:
    04BE 933A      ST	R19,-Y
    04BF 932A      ST	R18,-Y
push_arg2:
    04C0 931A      ST	R17,-Y
    04C1 930A      ST	R16,-Y
    04C2 9508      RET
div32u:
    04C3 94E8      BCLR	6
    04C4 C001      RJMP	0x04C6
mod32u:
    04C5 9468      BSET	6
    04C6 D02F      RCALL	long_div_prolog
    04C7 24CC      CLR	R12
    04C8 C008      RJMP	0x04D1
div32s:
    04C9 94E8      BCLR	6
    04CA C001      RJMP	0x04CC
mod32s:
    04CB 9468      BSET	6
    04CC D029      RCALL	long_div_prolog
    04CD FD37      SBRC	R19,7
    04CE D053      RCALL	neg_R16_R19
    04CF FDB7      SBRC	R27,7
    04D0 D05A      RCALL	neg_R24_R27
    04D1 2477      CLR	R7
    04D2 2488      CLR	R8
    04D3 2499      CLR	R9
    04D4 24AA      CLR	R10
    04D5 24BB      CLR	R11
    04D6 D041      RCALL	tst_R16_R19
    04D7 F0C1      BEQ	0x04F0
    04D8 D044      RCALL	tst_R24_R27
    04D9 F0B1      BEQ	0x04F0
    04DA E2E8      LDI	R30,0x28
    04DB 0F00      LSL	R16
    04DC 1F11      ROL	R17
    04DD 1F22      ROL	R18
    04DE 1F33      ROL	R19
    04DF 1C77      ROL	R7
    04E0 1C88      ROL	R8
    04E1 1C99      ROL	R9
    04E2 1CAA      ROL	R10
    04E3 1CBB      ROL	R11
    04E4 1688      CP	R8,R24
    04E5 0699      CPC	R9,R25
    04E6 06AA      CPC	R10,R26
    04E7 06BB      CPC	R11,R27
    04E8 F028      BCS	0x04EE
    04E9 1A88      SUB	R8,R24
    04EA 0A99      SBC	R9,R25
    04EB 0AAA      SBC	R10,R26
    04EC 0ABB      SBC	R11,R27
    04ED 9503      INC	R16
    04EE 95EA      DEC	R30
    04EF F759      BNE	0x04DB
    04F0 F426      BRTC	0x04F5
    04F1 2D08      MOV	R16,R8
    04F2 2D19      MOV	R17,R9
    04F3 2D2A      MOV	R18,R10
    04F4 2D3B      MOV	R19,R11
    04F5 C013      RJMP	long_div_epilog
long_div_prolog:
    04F6 927A      ST	R7,-Y
    04F7 928A      ST	R8,-Y
    04F8 929A      ST	R9,-Y
    04F9 92AA      ST	R10,-Y
    04FA 92BA      ST	R11,-Y
    04FB 92CA      ST	R12,-Y
    04FC 93EA      ST	R30,-Y
    04FD 938A      ST	R24,-Y
    04FE 939A      ST	R25,-Y
    04FF 93AA      ST	R26,-Y
    0500 93BA      ST	R27,-Y
    0501 858B      LDD	R24,Y+11
    0502 859C      LDD	R25,Y+12
    0503 85AD      LDD	R26,Y+13
    0504 85BE      LDD	R27,Y+14
    0505 2EC3      MOV	R12,R19
    0506 F00E      BRTS	0x0508
    0507 26CB      EOR	R12,R27
    0508 9508      RET
long_div_epilog:
    0509 FCC7      SBRC	R12,7
    050A D017      RCALL	neg_R16_R19
    050B 91B9      LD	R27,Y+
    050C 91A9      LD	R26,Y+
    050D 9199      LD	R25,Y+
    050E 9189      LD	R24,Y+
    050F 91E9      LD	R30,Y+
    0510 90C9      LD	R12,Y+
    0511 90B9      LD	R11,Y+
    0512 90A9      LD	R10,Y+
    0513 9099      LD	R9,Y+
    0514 9089      LD	R8,Y+
    0515 9079      LD	R7,Y+
    0516 9624      ADIW	R28,4
    0517 9508      RET
tst_R16_R19:
    0518 2FE0      MOV	R30,R16
    0519 2BE1      OR	R30,R17
    051A 2BE2      OR	R30,R18
    051B 2BE3      OR	R30,R19
    051C 9508      RET
tst_R24_R27:
    051D 2FE8      MOV	R30,R24
    051E 2BE9      OR	R30,R25
    051F 2BEA      OR	R30,R26
    0520 2BEB      OR	R30,R27
    0521 9508      RET
neg_R16_R19:
    0522 9500      COM	R16
    0523 9510      COM	R17
    0524 9520      COM	R18
    0525 9530      COM	R19
    0526 5F0F      SUBI	R16,0xFF
    0527 4F1F      SBCI	R17,0xFF
    0528 4F2F      SBCI	R18,0xFF
    0529 4F3F      SBCI	R19,0xFF
    052A 9508      RET
neg_R24_R27:
    052B 9580      COM	R24
    052C 9590      COM	R25
    052D 95A0      COM	R26
    052E 95B0      COM	R27
    052F 5F8F      SUBI	R24,0xFF
    0530 4F9F      SBCI	R25,0xFF
    0531 4FAF      SBCI	R26,0xFF
    0532 4FBF      SBCI	R27,0xFF
    0533 9508      RET
pop_gset2:
    0534 E0E2      LDI	R30,2
    0535 940C054C  JMP	pop
pop_gset3:
    0537 E0E4      LDI	R30,4
    0538 940C054C  JMP	pop
pop_gset4:
    053A E0E8      LDI	R30,0x8
    053B 940C054C  JMP	pop
pop_gset5:
    053D 27EE      CLR	R30
    053E 940C054C  JMP	pop
push_gset5:
    0540 92FA      ST	R15,-Y
    0541 92EA      ST	R14,-Y
push_gset4:
    0542 92DA      ST	R13,-Y
    0543 92CA      ST	R12,-Y
push_gset3:
    0544 92BA      ST	R11,-Y
    0545 92AA      ST	R10,-Y
push_gset2:
    0546 937A      ST	R23,-Y
    0547 936A      ST	R22,-Y
push_gset1:
    0548 935A      ST	R21,-Y
    0549 934A      ST	R20,-Y
    054A 9508      RET
pop_gset1:
    054B E0E1      LDI	R30,1
pop:
    054C 9149      LD	R20,Y+
    054D 9159      LD	R21,Y+
    054E FDE0      SBRC	R30,0
    054F 9508      RET
    0550 9169      LD	R22,Y+
    0551 9179      LD	R23,Y+
    0552 FDE1      SBRC	R30,1
    0553 9508      RET
    0554 90A9      LD	R10,Y+
    0555 90B9      LD	R11,Y+
    0556 FDE2      SBRC	R30,2
    0557 9508      RET
    0558 90C9      LD	R12,Y+
    0559 90D9      LD	R13,Y+
    055A FDE3      SBRC	R30,3
    055B 9508      RET
    055C 90E9      LD	R14,Y+
    055D 90F9      LD	R15,Y+
    055E 9508      RET
neg32:
    055F 9500      COM	R16
    0560 9510      COM	R17
    0561 9520      COM	R18
    0562 9530      COM	R19
    0563 5F0F      SUBI	R16,0xFF
    0564 4F1F      SBCI	R17,0xFF
    0565 4F2F      SBCI	R18,0xFF
    0566 4F3F      SBCI	R19,0xFF
    0567 9508      RET
lpm32:
    0568 93EA      ST	R30,-Y
    0569 93FA      ST	R31,-Y
    056A 920A      ST	R0,-Y
    056B 2FE0      MOV	R30,R16
    056C 2FF1      MOV	R31,R17
    056D 95C8      LPM
    056E 2D00      MOV	R16,R0
    056F 9631      ADIW	R30,1
    0570 95C8      LPM
    0571 2D10      MOV	R17,R0
    0572 9631      ADIW	R30,1
    0573 95C8      LPM
    0574 2D20      MOV	R18,R0
    0575 9631      ADIW	R30,1
    0576 95C8      LPM
    0577 2D30      MOV	R19,R0
    0578 9009      LD	R0,Y+
    0579 91F9      LD	R31,Y+
    057A 91E9      LD	R30,Y+
    057B 9508      RET
fp2int:
    057C 940E0709  CALL	savfacc1
    057E D014      RCALL	FTOI
    057F 2F02      MOV	R16,R18
    0580 2F13      MOV	R17,R19
    0581 FD87      SBRC	R24,7
    0582 C002      RJMP	nojump1
    0583 940C070C  JMP	restorefacc1
nojump1:
    0585 9510      COM	R17
    0586 9501      NEG	R16
    0587 4F1F      SBCI	R17,0xFF
    0588 940C070C  JMP	restorefacc1
fp2long:
    058A 940E0709  CALL	savfacc1
    058C D008      RCALL	FTOL
    058D FF87      SBRS	R24,7
    058E C002      RJMP	nojump2
    058F 940E055F  CALL	neg32
nojump2:
    0591 940C070C  JMP	restorefacc1
FTOI:
    0593 E0BE      LDI	R27,0xE
    0594 C001      RJMP	0x0596
FTOL:
    0595 E1BE      LDI	R27,0x1E
    0596 940E070F  CALL	unpackfacc1
    0598 F069      BEQ	0x05A6
    0599 1BB3      SUB	R27,R19
    059A F009      BEQ	0x059C
    059B F472      BPL	0x05AA
    059C 2388      TST	R24
    059D F022      BMI	0x05A2
    059E E010      LDI	R17,0
    059F EA04      LDI	R16,0xA4
    05A0 940C0568  JMP	lpm32

⌨️ 快捷键说明

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