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

📄 tlv5619.lst

📁 用avr调tlv5619的资料!它是一个12位的da!
💻 LST
字号:
__start:
__text_start:
    0046 EFCF      LDI	R28,0xFF
    0047 E1D0      LDI	R29,0x10
    0048 BFCD      OUT	0x3D,R28
    0049 BFDE      OUT	0x3E,R29
    004A 51C0      SUBI	R28,0x10
    004B 40D0      SBCI	R29,0
    004C EA0A      LDI	R16,0xAA
    004D 8308      STD	Y+0,R16
    004E 2400      CLR	R0
    004F E0E0      LDI	R30,0
    0050 E0F1      LDI	R31,1
    0051 E011      LDI	R17,1
    0052 30E0      CPI	R30,0
    0053 07F1      CPC	R31,R17
    0054 F011      BEQ	0x0057
    0055 9201      ST	R0,Z+
    0056 CFFB      RJMP	0x0052
    0057 8300      STD	Z+0,R16
    0058 E8EC      LDI	R30,0x8C
    0059 E0F0      LDI	R31,0
    005A E0A0      LDI	R26,0
    005B E0B1      LDI	R27,1
    005C E010      LDI	R17,0
    005D 38EC      CPI	R30,0x8C
    005E 07F1      CPC	R31,R17
    005F F021      BEQ	0x0064
    0060 95C8      LPM
    0061 9631      ADIW	R30,1
    0062 920D      ST	R0,X+
    0063 CFF9      RJMP	0x005D
    0064 940E009B  CALL	_main
_exit:
    0066 CFFF      RJMP	_exit
FILE: E:\mcu\avr\test\tlv5619\5619.c
(0001) /*============tlv5619程序============*/ 
(0002) /*=====cs.we=pc mlsb=pa==============*/   
(0003) 	#include<iom128v.h>
(0004) 	#include<macros.h>
(0005) 	#define  uchar unsigned char
(0006)     #define  uint  unsigned int
(0007) /*==========位操作=============*/
(0008)    //sbit cs=PD4
(0009)    void set_cs(uchar i)
(0010)    {
(0011)     DDRD=0xff;
_set_cs:
  i                    --> R16
    0067 EF8F      LDI	R24,0xFF
    0068 BB81      OUT	0x11,R24
(0012)     if(i==1) PORTD=PORTD|0x10;
    0069 3001      CPI	R16,1
    006A F411      BNE	0x006D
    006B 9A94      SBI	0x12,4
    006C C003      RJMP	0x0070
(0013) 	    else PORTD=PORTD&0xef;
    006D B382      IN	R24,0x12
    006E 7E8F      ANDI	R24,0xEF
    006F BB82      OUT	0x12,R24
(0014)    } 
    0070 9508      RET
(0015)    //sbit we=PD5
(0016)    void set_we(uchar i)
(0017)    {
(0018)     DDRD=0xff;
_set_we:
  i                    --> R16
    0071 EF8F      LDI	R24,0xFF
    0072 BB81      OUT	0x11,R24
(0019)     if(i==1) PORTD=PORTD|0x20;
    0073 3001      CPI	R16,1
    0074 F411      BNE	0x0077
    0075 9A95      SBI	0x12,5
    0076 C003      RJMP	0x007A
(0020) 	    else PORTD=PORTD&0xdf;
    0077 B382      IN	R24,0x12
    0078 7D8F      ANDI	R24,0xDF
    0079 BB82      OUT	0x12,R24
(0021)    }
    007A 9508      RET
(0022) /*+++++++++++++++++++++++++++++++++++++*/
(0023) void tlv5619()
(0024) 	{
(0025) 	 set_cs(1);
_tlv5619:
    007B E001      LDI	R16,1
    007C DFEA      RCALL	_set_cs
(0026) 	 set_we(1);
    007D E001      LDI	R16,1
    007E DFF2      RCALL	_set_we
(0027) 	 set_cs(0);  
    007F 2700      CLR	R16
    0080 DFE6      RCALL	_set_cs
(0028) 	 set_we(0);
    0081 2700      CLR	R16
    0082 DFEE      RCALL	_set_we
(0029) 	 PORTE=0Xf4;//接D0~D7
    0083 EF84      LDI	R24,0xF4
    0084 B983      OUT	0x03,R24
(0030) 	 PORTD&=0XF1;//输出1v,PD0~PD3接D8~D11
    0085 B382      IN	R24,0x12
    0086 7F81      ANDI	R24,0xF1
    0087 BB82      OUT	0x12,R24
(0031) 	 set_we(1);
    0088 E001      LDI	R16,1
    0089 DFE7      RCALL	_set_we
(0032) 	 set_cs(1);
    008A E001      LDI	R16,1
(0033) 	}
    008B CFDB      RJMP	_set_cs
(0034) 	void m128_init()
(0035) 	{
(0036) 	 DDRA=0x00;
_m128_init:
    008C 2422      CLR	R2
    008D BA2A      OUT	0x1A,R2
(0037) 	 PORTA=0xff;
    008E EF8F      LDI	R24,0xFF
    008F BB8B      OUT	0x1B,R24
(0038) 	 DDRB=0x00;
    0090 BA27      OUT	0x17,R2
(0039) 	 PORTB=0xff;
    0091 BB88      OUT	0x18,R24
(0040) 	 DDRC=0x00;
    0092 BA24      OUT	0x14,R2
(0041) 	 PORTC=0xff;
    0093 BB85      OUT	0x15,R24
(0042) 	 DDRD=0x3f;
    0094 E38F      LDI	R24,0x3F
    0095 BB81      OUT	0x11,R24
(0043) 	 PORTD=0xff;
    0096 EF8F      LDI	R24,0xFF
    0097 BB82      OUT	0x12,R24
(0044) 	 DDRE=0xff;
    0098 B982      OUT	0x02,R24
(0045) 	 PORTE=0xff;
    0099 B983      OUT	0x03,R24
(0046) 	}
    009A 9508      RET
(0047) 	void main()
(0048) 	{
(0049) 	 m128_init();
_main:
    009B DFF0      RCALL	_m128_init
    009C C001      RJMP	0x009E
(0050) 	 while(1)
(0051) 	 {
(0052) 	 tlv5619();
    009D DFDD      RCALL	_tlv5619
    009E CFFE      RJMP	0x009D
(0053) 	 }
(0054) 	}
FILE: <library>
    009F 9508      RET

⌨️ 快捷键说明

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