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

📄 adc_port.lst

📁 AVR单片机做的数字电压表
💻 LST
📖 第 1 页 / 共 4 页
字号:
    04D5 904000C7  LDS	R4,adc_data+2
    04D7 905000C8  LDS	R5,adc_data+3
    04D9 902000C5  LDS	R2,adc_data
    04DB 903000C6  LDS	R3,adc_data+1
    04DD 925A      ST	R5,-Y
    04DE 924A      ST	R4,-Y
    04DF 923A      ST	R3,-Y
    04E0 922A      ST	R2,-Y
    04E1 E800      LDI	R16,0x80
    04E2 E014      LDI	R17,4
    04E3 940E0606  CALL	lpm32
    04E5 933A      ST	R19,-Y
    04E6 932A      ST	R18,-Y
    04E7 931A      ST	R17,-Y
    04E8 930A      ST	R16,-Y
    04E9 940E077A  CALL	cmp32f
    04EB F41C      BGE	0x04EF
(0047)    PORTB=~0B010;
    04EC EF8D      LDI	R24,0xFD
    04ED BB88      OUT	0x18,R24
    04EE C002      RJMP	0x04F1
(0048)  else
(0049)    PORTB=~0B100;  //0.5~3V PB2亮
    04EF EF8B      LDI	R24,0xFB
    04F0 BB88      OUT	0x18,R24
(0050)  ADCSRA |= 0X40;
    04F1 9A36      SBI	0x06,6
    04F2 9009      LD	R0,Y+
    04F3 BE0F      OUT	0x3F,R0
    04F4 91B9      LD	R27,Y+
    04F5 91A9      LD	R26,Y+
    04F6 9199      LD	R25,Y+
    04F7 9189      LD	R24,Y+
    04F8 9139      LD	R19,Y+
    04F9 9129      LD	R18,Y+
    04FA 9119      LD	R17,Y+
    04FB 9109      LD	R16,Y+
    04FC 9059      LD	R5,Y+
    04FD 9049      LD	R4,Y+
    04FE 9039      LD	R3,Y+
    04FF 9029      LD	R2,Y+
    0500 9019      LD	R1,Y+
    0501 9009      LD	R0,Y+
    0502 9518      RETI
_main:
  i                    --> R20
    0503 9726      SBIW	R28,6
(0051) }
(0052)  
(0053) 
(0054) 
(0055)  void main(void) 
(0056)  {
(0057)  uchar i=0;
    0504 2744      CLR	R20
(0058)  DDRA=0X00;
    0505 2422      CLR	R2
    0506 BA2A      OUT	0x1A,R2
(0059)  PORTA=0XFF;
    0507 EF8F      LDI	R24,0xFF
    0508 BB8B      OUT	0x1B,R24
(0060)  DDRB=0XFF;
    0509 BB87      OUT	0x17,R24
(0061)  PORTB=0XFF;
    050A BB88      OUT	0x18,R24
(0062)  DDRC=0X00;
    050B BA24      OUT	0x14,R2
(0063)  PORTC=0X00;
    050C BA25      OUT	0x15,R2
(0064)  /**************配置LCD12864*********************/
(0065)  DDRC |=BIT(6);  //设置输出
    050D 9AA6      SBI	0x14,6
(0066)  PORTC &= ~BIT(6);  //L:serial mode 串行
    050E 98AE      CBI	0x15,6
(0067)  DDRC &= ~BIT(7);  //设置输入
    050F 98A7      CBI	0x14,7
(0068)  PORTC &= ~BIT(7); //LCD的NC脚悬空
    0510 98AF      CBI	0x15,7
(0069)  DDRD &= ~BIT(7);  //设置输入
    0511 988F      CBI	0x11,7
(0070)  PORTD &= ~BIT(7);  //RST复位低电平有效
    0512 9897      CBI	0x12,7
(0071)  /*****************************************/ 
(0072)  DDRD=0X00;
    0513 BA21      OUT	0x11,R2
(0073)  PORTD=0XFF;
    0514 BB82      OUT	0x12,R24
(0074)  LCD_Init();
    0515 DE2D      RCALL	_LCD_Init
(0075)  ADMUX=0X61;  //PA1为AD电压采样通道
    0516 E681      LDI	R24,0x61
    0517 B987      OUT	0x07,R24
(0076)  ADCSRA=0XCB;
    0518 EC8B      LDI	R24,0xCB
    0519 B986      OUT	0x06,R24
(0077)  SEI();
    051A 9478      BSET	7
    051B C074      RJMP	0x0590
(0078)  while(1)
(0079)     {   
(0080)         //strcatenate(str20,str2);	
(0081) 		//sprintf(str2,"%f",vcc); // 转换float 到 char 
(0082) 		vcc=(uint)(adc_data*5000/1024);
    051C E70C      LDI	R16,0x7C
    051D E014      LDI	R17,4
    051E 940E0606  CALL	lpm32
    0520 933A      ST	R19,-Y
    0521 932A      ST	R18,-Y
    0522 931A      ST	R17,-Y
    0523 930A      ST	R16,-Y
    0524 904000C7  LDS	R4,adc_data+2
    0526 905000C8  LDS	R5,adc_data+3
    0528 902000C5  LDS	R2,adc_data
    052A 903000C6  LDS	R3,adc_data+1
    052C 925A      ST	R5,-Y
    052D 924A      ST	R4,-Y
    052E 923A      ST	R3,-Y
    052F 922A      ST	R2,-Y
    0530 940E07AB  CALL	empy32fs
    0532 E708      LDI	R16,0x78
    0533 E014      LDI	R17,4
    0534 940E0606  CALL	lpm32
    0536 933A      ST	R19,-Y
    0537 932A      ST	R18,-Y
    0538 931A      ST	R17,-Y
    0539 930A      ST	R16,-Y
    053A 940E0720  CALL	div32f
    053C 01FE      MOVW	R30,R28
    053D 8302      STD	Z+2,R16
    053E 8313      STD	Z+3,R17
    053F 8324      STD	Z+4,R18
    0540 8335      STD	Z+5,R19
    0541 01FE      MOVW	R30,R28
    0542 8022      LDD	R2,Z+2
    0543 8033      LDD	R3,Z+3
    0544 8044      LDD	R4,Z+4
    0545 8055      LDD	R5,Z+5
    0546 925A      ST	R5,-Y
    0547 924A      ST	R4,-Y
    0548 923A      ST	R3,-Y
    0549 922A      ST	R2,-Y
    054A E704      LDI	R16,0x74
    054B E014      LDI	R17,4
    054C 940E0606  CALL	lpm32
    054E 933A      ST	R19,-Y
    054F 932A      ST	R18,-Y
    0550 931A      ST	R17,-Y
    0551 930A      ST	R16,-Y
    0552 940E077A  CALL	cmp32f
    0554 F0CC      BLT	0x056E
    0555 01FE      MOVW	R30,R28
    0556 8022      LDD	R2,Z+2
    0557 8033      LDD	R3,Z+3
    0558 8044      LDD	R4,Z+4
    0559 8055      LDD	R5,Z+5
    055A 925A      ST	R5,-Y
    055B 924A      ST	R4,-Y
    055C 923A      ST	R3,-Y
    055D 922A      ST	R2,-Y
    055E E704      LDI	R16,0x74
    055F E014      LDI	R17,4
    0560 940E0606  CALL	lpm32
    0562 933A      ST	R19,-Y
    0563 932A      ST	R18,-Y
    0564 931A      ST	R17,-Y
    0565 930A      ST	R16,-Y
    0566 940E06C7  CALL	sub32f
    0568 940E061A  CALL	fp2int
    056A 01A8      MOVW	R20,R16
    056B 5040      SUBI	R20,0
    056C 4850      SBCI	R21,0x80
    056D C008      RJMP	0x0576
    056E 01FE      MOVW	R30,R28
    056F 8102      LDD	R16,Z+2
    0570 8113      LDD	R17,Z+3
    0571 8124      LDD	R18,Z+4
    0572 8135      LDD	R19,Z+5
    0573 940E061A  CALL	fp2int
    0575 01A8      MOVW	R20,R16
    0576 935000C4  STS	vcc+1,R21
    0578 934000C3  STS	vcc,R20
(0083) 		change( vcc ,str2)	;	 //显示处理
    057A EC29      LDI	R18,0xC9
    057B E030      LDI	R19,0
    057C 018A      MOVW	R16,R20
    057D DEDF      RCALL	_change
(0084) 		delay_ms(20);
    057E E104      LDI	R16,0x14
    057F DECE      RCALL	_delay_ms
(0085)       //  LCD_ClearTXT( );
(0086) 		LCD_PutStr(0,0,str); 
    0580 EB82      LDI	R24,0xB2
    0581 E090      LDI	R25,0
    0582 8399      STD	Y+1,R25
    0583 8388      STD	Y+0,R24
    0584 2722      CLR	R18
    0585 2700      CLR	R16
    0586 DE0E      RCALL	_LCD_PutStr
(0087)         LCD_PutStr(0,3,str2);  
    0587 EC89      LDI	R24,0xC9
    0588 E090      LDI	R25,0
    0589 8399      STD	Y+1,R25
    058A 8388      STD	Y+0,R24
    058B E023      LDI	R18,3
    058C 2700      CLR	R16
    058D DE07      RCALL	_LCD_PutStr
(0088) 		delay_ms(2);
FILE: <library>
    058E E002      LDI	R16,2
    058F DEBE      RCALL	_delay_ms
    0590 CF8B      RJMP	0x051C
    0591 9626      ADIW	R28,6
    0592 9508      RET
push_arg4:
    0593 933A      ST	R19,-Y
    0594 932A      ST	R18,-Y
push_arg2:
    0595 931A      ST	R17,-Y
    0596 930A      ST	R16,-Y
    0597 9508      RET
mod16s:
    0598 9468      BSET	6
    0599 92DA      ST	R13,-Y
    059A 2ED1      MOV	R13,R17
    059B C004      RJMP	0x05A0
div16s:
    059C 94E8      BCLR	6
    059D 92DA      ST	R13,-Y
    059E 2ED1      MOV	R13,R17
    059F 26D3      EOR	R13,R19
    05A0 FF17      SBRS	R17,7
    05A1 C004      RJMP	0x05A6
    05A2 9510      COM	R17
    05A3 9500      COM	R16
    05A4 5F0F      SUBI	R16,0xFF
    05A5 4F1F      SBCI	R17,0xFF
    05A6 FF37      SBRS	R19,7
    05A7 C004      RJMP	0x05AC
    05A8 9530      COM	R19
    05A9 9520      COM	R18
    05AA 5F2F      SUBI	R18,0xFF
    05AB 4F3F      SBCI	R19,0xFF
    05AC 940E05B9  CALL	xdiv16u
    05AE FED7      SBRS	R13,7
    05AF C004      RJMP	0x05B4
    05B0 9510      COM	R17
    05B1 9500      COM	R16
    05B2 5F0F      SUBI	R16,0xFF
    05B3 4F1F      SBCI	R17,0xFF
    05B4 90D9      LD	R13,Y+
    05B5 9508      RET
mod16u:
    05B6 9468      BSET	6
    05B7 C001      RJMP	xdiv16u
div16u:
    05B8 94E8      BCLR	6
xdiv16u:
    05B9 92EA      ST	R14,-Y
    05BA 92FA      ST	R15,-Y
    05BB 938A      ST	R24,-Y
    05BC 24EE      CLR	R14
    05BD 24FF      CLR	R15
    05BE E180      LDI	R24,0x10
    05BF 0F00      LSL	R16
    05C0 1F11      ROL	R17
    05C1 1CEE      ROL	R14
    05C2 1CFF      ROL	R15
    05C3 16E2      CP	R14,R18
    05C4 06F3      CPC	R15,R19
    05C5 F018      BCS	0x05C9
    05C6 1AE2      SUB	R14,R18
    05C7 0AF3      SBC	R15,R19
    05C8 9503      INC	R16
    05C9 958A      DEC	R24
    05CA F7A1      BNE	0x05BF
    05CB F416      BRTC	0x05CE
    05CC 2D0E      MOV	R16,R14
    05CD 2D1F      MOV	R17,R15
    05CE 9189      LD	R24,Y+
    05CF 90F9      LD	R15,Y+
    05D0 90E9      LD	R14,Y+
    05D1 9508      RET
pop_gset2:
    05D2 E0E2      LDI	R30,2
    05D3 940C05EA  JMP	pop
pop_gset3:
    05D5 E0E4      LDI	R30,4
    05D6 940C05EA  JMP	pop
pop_gset4:
    05D8 E0E8      LDI	R30,0x8
    05D9 940C05EA  JMP	pop
pop_gset5:
    05DB 27EE      CLR	R30
    05DC 940C05EA  JMP	pop
push_gset5:
    05DE 92FA      ST	R15,-Y
    05DF 92EA      ST	R14,-Y
push_gset4:
    05E0 92DA      ST	R13,-Y
    05E1 92CA      ST	R12,-Y
push_gset3:
    05E2 92BA      ST	R11,-Y
    05E3 92AA      ST	R10,-Y
push_gset2:
    05E4 937A      ST	R23,-Y
    05E5 936A      ST	R22,-Y
push_gset1:
    05E6 935A      ST	R21,-Y
    05E7 934A      ST	R20,-Y
    05E8 9508      RET
pop_gset1:
    05E9 E0E1      LDI	R30,1
pop:
    05EA 9149      LD	R20,Y+
    05EB 9159      LD	R21,Y+
    05EC FDE0      SBRC	R30,0
    05ED 9508      RET
    05EE 9169      LD	R22,Y+
    05EF 9179      LD	R23,Y+
    05F0 FDE1      SBRC	R30,1
    05F1 9508      RET
    05F2 90A9      LD	R10,Y+
    05F3 90B9      LD	R11,Y+
    05F4 FDE2      SBRC	R30,2
    05F5 9508      RET
    05F6 90C9      LD	R12,Y+
    05F7 90D9      LD	R13,Y+
    05F8 FDE3      SBRC	R30,3
    05F9 9508      RET
    05FA 90E9      LD	R14,Y+
    05FB 90F9      LD	R15,Y+
    05FC 9508      RET
neg32:
    05FD 9500      COM	R16
    05FE 9510      COM	R17
    05FF 9520      COM	R18
    0600 9530      COM	R19
    0601 5F0F      SUBI	R16,0xFF
    0602 4F1F      SBCI	R17,0xFF
    0603 4F2F      SBCI	R18,0xFF
    0604 4F3F      SBCI	R19,0xFF
    0605 9508      RET
lpm32:
    0606 93EA      ST	R30,-Y
    0607 93FA      ST	R31,-Y
    0608 920A      ST	R0,-Y
    0609 2FE0      MOV	R30,R16
    060A 2FF1      MOV	R31,R17
    060B 95C8      LPM
    060C 2D00      MOV	R16,R0
    060D 9631      ADIW	R30,1
    060E 95C8      LPM
    060F 2D10      MOV	R17,R0
    0610 9631      ADIW	R30,1
    0611 95C8      LPM
    0612 2D20      MOV	R18,R0
    0613 9631      ADIW	R30,1
    0614 95C8      LPM
    0615 2D30      MOV	R19,R0
    0616 9009      LD	R0,Y+
    0617 91F9      LD	R31,Y+
    0618 91E9      LD	R30,Y+
    0619 9508      RET
fp2int:
    061A 940E07F8  CALL	savfacc1
    061C D014      RCALL	FTOI
    061D 2F02      MOV	R16,R18
    061E 2F13      MOV	R17,R19
    061F FD87      SBRC	R24,7
    0620 C002      RJMP	nojump1
    0621 940C07FB  JMP	restorefacc1
nojump1:
    0623 9510      COM	R17
    0624 9501      NEG	R16
    0625 4F1F      SBCI	R17,0xFF
    0626 940C07FB  JMP	restorefacc1
fp2long:
    0628 940E07F8  CALL	savfacc1
    062A D008      RCALL	FTOL
    062B FF87      SBRS	R24,7
    062C C002      RJMP	nojump2
    062D 940E05FD  CALL	neg32
nojump2:
    062F 940C07FB  JMP	restorefacc1
FTOI:
    0631 E0BE      LDI	R27,0xE
    0632 C001      RJMP	0x0634
FTOL:
    0633 E1BE      LDI	R27,0x1E
    0634 940E07FE  CALL	unpackfacc1
    0636 F069      BEQ	0x0644
    0637 1BB3      SUB	R27,R19
    0638 F009      BEQ	0x063A
    0639 F472      BPL	0x0648
    063A 2388      TST	R24
    063B F022      BMI	0x0640
    063C E014      LDI	R17,4
    063D E808      LDI	R16,0x88
    063E 940C0606  JMP	lpm32
    0640 E014      LDI	R17,4
    0641 E80E      LDI	R16,0x8E
    0642 940C0606  JMP	lpm32
    0644 E014      LDI	R17,4
    0645 E80C      LDI	R16,0x8C
    0646 940C0606  JMP	lpm32
    0648 9533      INC	R19
    0649 F3D2      BMI	0x0644
    064A E030      LDI	R19,0
    064B 50B8      SUBI	R27,0x8
    064C F452      BPL	0x0657
    064D 5FB8      SUBI	R27,0xF8
    064E 2F32      MOV	R19,R18
    064F 2F21      MOV	R18,R17
    0650 2F10      MOV	R17,R16
    0651 E800      LDI	R16,0x80
    0652 C006      RJMP	0x0659
    0653 2F01      MOV	R16,R17
    0654 2F12      MOV	R17,R18
    0655 E020      LDI	R18,0
    0656 50B8      SUBI	R27,0x8
    0657 30B8      CPI	R27,0x8
    0658 F7D0      BCC	0x0653
    0659 23BB      TST	R27
    065A F031      BEQ	0x0661
    065B 9536      LSR	R19
    065C 9527      ROR	R18
    065D 9517      ROR	R17
    065E 9507      ROR	R16
    065F 95BA      DEC	R27
    0660 F7D1      BNE	0x065B
    0661 9508      RET
int2fp:
    0662 2722      CLR	R18
    0663 FD17      SBRC	R17,7
    0664 9520      COM	R18
    0665 2733      CLR	R19
    0666 FD27      SBRC	R18,7
    0667 9530      COM	R19
long2fp:
    0668 940E07F8  CALL	savfacc1
    066A D002      RCALL	ITOF
    066B 940C07FB  JMP	restorefacc1
ITOF:
    066D 2788      CLR	R24
    066E 2333      TST	R19
    066F F41A      BPL	0x0673
    0670 940E05FD  CALL	neg32
    0672 9580      COM	R24
    0673 2FB0      MOV	R27,R16
    0674 2BB1      OR	R27,R17
    0675 2BB2      OR	R27,R18
    0676 2BB3      OR	R27,R19
    0677 F411      BNE	0x067A
    0678 940C0814  JMP	minres
    067A E1B6      LDI	R27,0x16
    067B C005      RJMP	itof2
    067C 95B3      INC	R27
    067D 9536      LSR	R19
    067E 9527      ROR	R18
    067F 9517      ROR	R17
    0680 9507      ROR	R16
itof2:
    0681 2333      TST	R19
    0682 F7C9      BNE	0x067C

⌨️ 快捷键说明

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