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

📄 lc.lst

📁 ICC-AVR环境,用ATmage16做的LC表
💻 LST
📖 第 1 页 / 共 5 页
字号:
    0307 940E05CC  CALL	int2fp
    0309 933A      ST	R19,-Y
    030A 932A      ST	R18,-Y
    030B 931A      ST	R17,-Y
    030C 930A      ST	R16,-Y
    030D 940E0626  CALL	add32fs
    030F 940E0631  CALL	sub32f
    0311 01FE      MOVW	R30,R28
    0312 8306      STD	Z+6,R16
    0313 8317      STD	Z+7,R17
    0314 8720      STD	Z+8,R18
    0315 8731      STD	Z+9,R19
    0316 01FE      MOVW	R30,R28
    0317 8026      LDD	R2,Z+6
    0318 8037      LDD	R3,Z+7
    0319 8440      LDD	R4,Z+8
    031A 8451      LDD	R5,Z+9
    031B 925A      ST	R5,-Y
    031C 924A      ST	R4,-Y
    031D 923A      ST	R3,-Y
    031E 922A      ST	R2,-Y
    031F E508      LDI	R16,0x58
    0320 E010      LDI	R17,0
    0321 940E0542  CALL	lpm32
    0323 933A      ST	R19,-Y
    0324 932A      ST	R18,-Y
    0325 931A      ST	R17,-Y
    0326 930A      ST	R16,-Y
    0327 940E06E4  CALL	cmp32f
    0329 F0D4      BLT	0x0344
    032A 01FE      MOVW	R30,R28
    032B 8026      LDD	R2,Z+6
    032C 8037      LDD	R3,Z+7
    032D 8440      LDD	R4,Z+8
    032E 8451      LDD	R5,Z+9
    032F 925A      ST	R5,-Y
    0330 924A      ST	R4,-Y
    0331 923A      ST	R3,-Y
    0332 922A      ST	R2,-Y
    0333 E508      LDI	R16,0x58
    0334 E010      LDI	R17,0
    0335 940E0542  CALL	lpm32
    0337 933A      ST	R19,-Y
    0338 932A      ST	R18,-Y
    0339 931A      ST	R17,-Y
    033A 930A      ST	R16,-Y
    033B 940E0631  CALL	sub32f
    033D 940E0584  CALL	fp2int
    033F 01C8      MOVW	R24,R16
    0340 5080      SUBI	R24,0
    0341 4890      SBCI	R25,0x80
    0342 015C      MOVW	R10,R24
    0343 C008      RJMP	0x034C
    0344 01FE      MOVW	R30,R28
    0345 8106      LDD	R16,Z+6
    0346 8117      LDD	R17,Z+7
    0347 8520      LDD	R18,Z+8
    0348 8531      LDD	R19,Z+9
    0349 940E0584  CALL	fp2int
    034B 0158      MOVW	R10,R16
    034C 92B00099  STS	Cx+1,R11
    034E 92A00098  STS	Cx,R10
(0139) 	
(0140) 	LCD_write_string(3,1,itoa(buf,Cn,10));
    0350 E08A      LDI	R24,0xA
    0351 E090      LDI	R25,0
    0352 8399      STD	Y+1,R25
    0353 8388      STD	Y+0,R24
    0354 91200094  LDS	R18,Cn
    0356 91300095  LDS	R19,Cn+1
    0358 E600      LDI	R16,0x60
    0359 E010      LDI	R17,0
    035A 940E07B0  CALL	_itoa
    035C 8319      STD	Y+1,R17
    035D 8308      STD	Y+0,R16
    035E E021      LDI	R18,1
    035F E003      LDI	R16,3
    0360 DD92      RCALL	_LCD_write_string
(0141) 	LCD_write_char(0,'p');
    0361 E720      LDI	R18,0x70
    0362 E030      LDI	R19,0
    0363 2700      CLR	R16
    0364 2711      CLR	R17
    0365 DD15      RCALL	_LCD_write_char
(0142) 	LCD_write_char(0,'F');
    0366 E426      LDI	R18,0x46
    0367 E030      LDI	R19,0
    0368 2700      CLR	R16
    0369 2711      CLR	R17
    036A DD10      RCALL	_LCD_write_char
    036B 962A      ADIW	R28,0xA
    036C 940E04EC  CALL	pop_gset3
    036E 9508      RET
_calc_Lx:
  f                    --> Y+2
    036F 940E04F9  CALL	push_gset3
    0371 972A      SBIW	R28,0xA
(0143) }
(0144) 
(0145) 
(0146) void calc_Lx(void)
(0147) {
(0148) 	float f=1/(last_TCNT1*4)*1000000;
    0372 9120009A  LDS	R18,last_TCNT1
    0374 9130009B  LDS	R19,last_TCNT1+1
    0376 E004      LDI	R16,4
    0377 E010      LDI	R17,0
    0378 940E04A9  CALL	empy16s
    037A 0198      MOVW	R18,R16
    037B E001      LDI	R16,1
    037C E010      LDI	R17,0
    037D 940E048F  CALL	div16u
    037F 0118      MOVW	R2,R16
    0380 2444      CLR	R4
    0381 2455      CLR	R5
    0382 E440      LDI	R20,0x40
    0383 E452      LDI	R21,0x42
    0384 E06F      LDI	R22,0xF
    0385 E070      LDI	R23,0
    0386 925A      ST	R5,-Y
    0387 924A      ST	R4,-Y
    0388 923A      ST	R3,-Y
    0389 922A      ST	R2,-Y
    038A 018A      MOVW	R16,R20
    038B 019B      MOVW	R18,R22
    038C 940E04B9  CALL	empy32u
    038E 940E05D2  CALL	long2fp
    0390 01FE      MOVW	R30,R28
    0391 8302      STD	Z+2,R16
    0392 8313      STD	Z+3,R17
    0393 8324      STD	Z+4,R18
    0394 8335      STD	Z+5,R19
(0149) 	Lx=1/(39.4384*f*f*(C1+Cn*1000000));
    0395 E608      LDI	R16,0x68
    0396 E010      LDI	R17,0
    0397 940E0542  CALL	lpm32
    0399 933A      ST	R19,-Y
    039A 932A      ST	R18,-Y
    039B 931A      ST	R17,-Y
    039C 930A      ST	R16,-Y
    039D E600      LDI	R16,0x60
    039E E010      LDI	R17,0
    039F 940E0542  CALL	lpm32
    03A1 933A      ST	R19,-Y
    03A2 932A      ST	R18,-Y
    03A3 931A      ST	R17,-Y
    03A4 930A      ST	R16,-Y
    03A5 01FE      MOVW	R30,R28
    03A6 8422      LDD	R2,Z+10
    03A7 8433      LDD	R3,Z+11
    03A8 8444      LDD	R4,Z+12
    03A9 8455      LDD	R5,Z+13
    03AA 925A      ST	R5,-Y
    03AB 924A      ST	R4,-Y
    03AC 923A      ST	R3,-Y
    03AD 922A      ST	R2,-Y
    03AE 940E0715  CALL	empy32fs
    03B0 01FE      MOVW	R30,R28
    03B1 8422      LDD	R2,Z+10
    03B2 8433      LDD	R3,Z+11
    03B3 8444      LDD	R4,Z+12
    03B4 8455      LDD	R5,Z+13
    03B5 925A      ST	R5,-Y
    03B6 924A      ST	R4,-Y
    03B7 923A      ST	R3,-Y
    03B8 922A      ST	R2,-Y
    03B9 940E0715  CALL	empy32fs
    03BB 90200094  LDS	R2,Cn
    03BD 90300095  LDS	R3,Cn+1
    03BF 2444      CLR	R4
    03C0 2455      CLR	R5
    03C1 E440      LDI	R20,0x40
    03C2 E452      LDI	R21,0x42
    03C3 E06F      LDI	R22,0xF
    03C4 E070      LDI	R23,0
    03C5 925A      ST	R5,-Y
    03C6 924A      ST	R4,-Y
    03C7 923A      ST	R3,-Y
    03C8 922A      ST	R2,-Y
    03C9 018A      MOVW	R16,R20
    03CA 019B      MOVW	R18,R22
    03CB 940E04B9  CALL	empy32u
    03CD E041      LDI	R20,1
    03CE E050      LDI	R21,0
    03CF E060      LDI	R22,0
    03D0 E070      LDI	R23,0
    03D1 0F04      ADD	R16,R20
    03D2 1F15      ADC	R17,R21
    03D3 1F26      ADC	R18,R22
    03D4 1F37      ADC	R19,R23
    03D5 940E05D2  CALL	long2fp
    03D7 933A      ST	R19,-Y
    03D8 932A      ST	R18,-Y
    03D9 931A      ST	R17,-Y
    03DA 930A      ST	R16,-Y
    03DB 940E0715  CALL	empy32fs
    03DD 940E068A  CALL	div32f
    03DF 01FE      MOVW	R30,R28
    03E0 8306      STD	Z+6,R16
    03E1 8317      STD	Z+7,R17
    03E2 8720      STD	Z+8,R18
    03E3 8731      STD	Z+9,R19
    03E4 01FE      MOVW	R30,R28
    03E5 8026      LDD	R2,Z+6
    03E6 8037      LDD	R3,Z+7
    03E7 8440      LDD	R4,Z+8
    03E8 8451      LDD	R5,Z+9
    03E9 925A      ST	R5,-Y
    03EA 924A      ST	R4,-Y
    03EB 923A      ST	R3,-Y
    03EC 922A      ST	R2,-Y
    03ED E508      LDI	R16,0x58
    03EE E010      LDI	R17,0
    03EF 940E0542  CALL	lpm32
    03F1 933A      ST	R19,-Y
    03F2 932A      ST	R18,-Y
    03F3 931A      ST	R17,-Y
    03F4 930A      ST	R16,-Y
    03F5 940E06E4  CALL	cmp32f
    03F7 F0D4      BLT	0x0412
    03F8 01FE      MOVW	R30,R28
    03F9 8026      LDD	R2,Z+6
    03FA 8037      LDD	R3,Z+7
    03FB 8440      LDD	R4,Z+8
    03FC 8451      LDD	R5,Z+9
    03FD 925A      ST	R5,-Y
    03FE 924A      ST	R4,-Y
    03FF 923A      ST	R3,-Y
    0400 922A      ST	R2,-Y
    0401 E508      LDI	R16,0x58
    0402 E010      LDI	R17,0
    0403 940E0542  CALL	lpm32
    0405 933A      ST	R19,-Y
    0406 932A      ST	R18,-Y
    0407 931A      ST	R17,-Y
    0408 930A      ST	R16,-Y
    0409 940E0631  CALL	sub32f
    040B 940E0584  CALL	fp2int
    040D 01C8      MOVW	R24,R16
    040E 5080      SUBI	R24,0
    040F 4890      SBCI	R25,0x80
    0410 015C      MOVW	R10,R24
    0411 C008      RJMP	0x041A
    0412 01FE      MOVW	R30,R28
    0413 8106      LDD	R16,Z+6
    0414 8117      LDD	R17,Z+7
    0415 8520      LDD	R18,Z+8
    0416 8531      LDD	R19,Z+9
    0417 940E0584  CALL	fp2int
    0419 0158      MOVW	R10,R16
    041A 92B00097  STS	Lx+1,R11
    041C 92A00096  STS	Lx,R10
(0150) 	
(0151) 	LCD_write_string(3,1,itoa(buf,Cn,10));
    041E E08A      LDI	R24,0xA
    041F E090      LDI	R25,0
    0420 8399      STD	Y+1,R25
    0421 8388      STD	Y+0,R24
    0422 91200094  LDS	R18,Cn
    0424 91300095  LDS	R19,Cn+1
    0426 E600      LDI	R16,0x60
    0427 E010      LDI	R17,0
    0428 940E07B0  CALL	_itoa
    042A 8319      STD	Y+1,R17
    042B 8308      STD	Y+0,R16
    042C E021      LDI	R18,1
    042D E003      LDI	R16,3
    042E DCC4      RCALL	_LCD_write_string
(0152) 	LCD_write_char(0,'u');
    042F E725      LDI	R18,0x75
    0430 E030      LDI	R19,0
    0431 2700      CLR	R16
    0432 2711      CLR	R17
    0433 DC47      RCALL	_LCD_write_char
(0153) 	LCD_write_char(0,'H');
    0434 E428      LDI	R18,0x48
    0435 E030      LDI	R19,0
    0436 2700      CLR	R16
    0437 2711      CLR	R17
    0438 DC42      RCALL	_LCD_write_char
    0439 962A      ADIW	R28,0xA
    043A 940E04EC  CALL	pop_gset3
    043C 9508      RET
(0154) }
(0155) 
(0156) /*--------------------------------延时函数--------------------------------*/
(0157) void delay_nus(unsigned char n)       //N us延时函数
(0158) {
_delay_nus:
  n                    --> R16
    043D C001      RJMP	0x043F
(0159) 	while (--n)
(0160) 	{
(0161) 		asm("nop");
    043E 0000      NOP
    043F 2F80      MOV	R24,R16
    0440 5081      SUBI	R24,1
    0441 2F08      MOV	R16,R24
    0442 2388      TST	R24
    0443 F7D1      BNE	0x043E
    0444 9508      RET
(0162) 	}
(0163) }
(0164) 
(0165) void delay_1ms(void)                 //1ms延时函数
(0166) {
(0167) 	unsigned char i=10,j=100;
_delay_1ms:
  i                    --> R16
  j                    --> R18
    0445 E00A      LDI	R16,0xA
    0446 E624      LDI	R18,0x64
    0447 C006      RJMP	0x044E
(0168) 	while (--i)
(0169) 		while (--j)
(0170) 			asm("nop");
    0448 0000      NOP
    0449 2F82      MOV	R24,R18
    044A 5081      SUBI	R24,1
    044B 2F28      MOV	R18,R24
    044C 2388      TST	R24
    044D F7D1      BNE	0x0448
    044E 2F80      MOV	R24,R16
    044F 5081      SUBI	R24,1
    0450 2F08      MOV	R16,R24
    0451 2388      TST	R24
    0452 F7B1      BNE	0x0449
    0453 9508      RET
_delay_nms:
  n                    --> R20
    0454 940E04FD  CALL	push_gset1
    0456 2F40      MOV	R20,R16
(0171) }
(0172) 
(0173) void delay_nms(unsigned char n)       //N ms延时函数
(0174) {
    0457 C001      RJMP	0x0459
(0175) 	while (--n)
(0176) 		delay_1ms();
FILE: <library>
    0458 DFEC      RCALL	_delay_1ms
    0459 2F84      MOV	R24,R20
    045A 5081      SUBI	R24,1
    045B 2F48      MOV	R20,R24
    045C 2388      TST	R24
    045D F7D1      BNE	0x0458
    045E 940E0500  CALL	pop_gset1
    0460 9508      RET
_strcpy:
    0461 2FA0      MOV	R26,R16
    0462 2FB1      MOV	R27,R17
    0463 2FE2      MOV	R30,R18
    0464 2FF3      MOV	R31,R19
    0465 9001      LD	R0,Z+
    0466 920D      ST	R0,X+
    0467 2000      TST	R0
    0468 F7E1      BNE	0x0465
    0469 9508      RET
push_arg4:
    046A 933A      ST	R19,-Y
    046B 932A      ST	R18,-Y
push_arg2:
    046C 931A      ST	R17,-Y
    046D 930A      ST	R16,-Y
    046E 9508      RET
mod16s:
    046F 9468      BSET	6
    0470 92DA      ST	R13,-Y
    0471 2ED1      MOV	R13,R17
    0472 C004      RJMP	0x0477
div16s:
    0473 94E8      BCLR	6
    0474 92DA      ST	R13,-Y
    0475 2ED1      MOV	R13,R17
    0476 26D3      EOR	R13,R19
    0477 FF17      SBRS	R17,7
    0478 C004      RJMP	0x047D
    0479 9510      COM	R17
    047A 9500      COM	R16
    047B 5F0F      SUBI	R16,0xFF
    047C 4F1F      SBCI	R17,0xFF
    047D FF37      SBRS	R19,7
    047E C004      RJMP	0x0483
    047F 9530      COM	R19
    0480 9520      COM	R18
    0481 5F2F      SUBI	R18,0xFF
    0482 4F3F      SBCI	R19,0xFF
    0483 940E0490  CALL	xdiv16u
    0485 FED7      SBRS	R13,7
    0486 C004      RJMP	0x048B
    0487 9510      COM	R17
    0488 9500      COM	R16
    0489 5F0F      SUBI	R16,0xFF
    048A 4F1F      SBCI	R17,0xFF
    048B 90D9      LD	R13,Y+
    048C 9508      RET
mod16u:
    048D 9468      BSET	6
    048E C001      RJMP	xdiv16u
div16u:
    048F 94E8      BCLR	6
xdiv16u:
    0490 92EA      ST	R14,-Y
    0491 92FA      ST	R15,-Y
    0492 938A      ST	R24,-Y
    0493 24EE      CLR	R14
    0494 24FF      CLR	R15
    0495 E180      LDI	R24,0x10
    0496 0F00      LSL	R16
    0497 1F11      ROL	R17
    0498 1CEE      ROL	R14
    0499 1CFF      ROL	R15
    049A 16E2      CP	R14,R18
    049B 06F3      CPC	R15,R19
    049C F018      BCS	0x04A0
    049D 1AE2      SUB	R14,R18
    049E 0AF3      SBC	R15,R19
    049F 9503      INC	R16
    04A0 958A      DEC	R24
    04A1 F7A1      BNE	0x0496
    04A2 F416      BRTC	0x04A5
    04A3 2D0E      MOV	R16,R14
    04A4 2D1F      MOV	R17,R15
    04A5 9189      LD	R24,Y+
    04A6 90F9      LD	R15,Y+
    04A7 90E9      LD	R14,Y+
    04A8 9508      RET
empy16s:
    04A9 920A      ST	R0,-Y
    04AA 921A      ST	R1,-Y
    04AB 938A      ST	R24,-Y
    04AC 939A      ST	R25,-Y
    04AD 9F02      MUL	R16,R18
    04AE 01C0      MOVW	R24,R0
    04AF 9F12      MUL	R17,R18
    04B0 0D90      ADD	R25,R0

⌨️ 快捷键说明

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