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

📄 5619.s

📁 用avr调tlv5619的资料!它是一个12位的da!
💻 S
字号:
	.module _5619.c
	.area text(rom, con, rel)
	.dbfile E:\mcu\avr\test\tlv5619\5619.c
	.dbfunc e set_cs _set_cs fV
;              i -> R16
	.even
_set_cs::
	.dbline -1
	.dbline 10
; /*============tlv5619程序============*/ 
; /*=====cs.we=pc mlsb=pa==============*/   
; 	#include<iom128v.h>
; 	#include<macros.h>
; 	#define  uchar unsigned char
;     #define  uint  unsigned int
; /*==========位操作=============*/
;    //sbit cs=PD4
;    void set_cs(uchar i)
;    {
	.dbline 11
;     DDRD=0xff;
	ldi R24,255
	out 0x11,R24
	.dbline 12
;     if(i==1) PORTD=PORTD|0x10;
	cpi R16,1
	brne L2
	.dbline 12
	sbi 0x12,4
	xjmp L3
L2:
	.dbline 13
	in R24,0x12
	andi R24,239
	out 0x12,R24
L3:
	.dbline -2
	.dbline 14
; 	    else PORTD=PORTD&0xef;
;    } 
L1:
	.dbline 0 ; func end
	ret
	.dbsym r i 16 c
	.dbend
	.dbfunc e set_we _set_we fV
;              i -> R16
	.even
_set_we::
	.dbline -1
	.dbline 17
;    //sbit we=PD5
;    void set_we(uchar i)
;    {
	.dbline 18
;     DDRD=0xff;
	ldi R24,255
	out 0x11,R24
	.dbline 19
;     if(i==1) PORTD=PORTD|0x20;
	cpi R16,1
	brne L5
	.dbline 19
	sbi 0x12,5
	xjmp L6
L5:
	.dbline 20
	in R24,0x12
	andi R24,223
	out 0x12,R24
L6:
	.dbline -2
	.dbline 21
; 	    else PORTD=PORTD&0xdf;
;    }
L4:
	.dbline 0 ; func end
	ret
	.dbsym r i 16 c
	.dbend
	.dbfunc e tlv5619 _tlv5619 fV
	.even
_tlv5619::
	.dbline -1
	.dbline 24
; /*+++++++++++++++++++++++++++++++++++++*/
; void tlv5619()
; 	{
	.dbline 25
; 	 set_cs(1);
	ldi R16,1
	xcall _set_cs
	.dbline 26
; 	 set_we(1);
	ldi R16,1
	xcall _set_we
	.dbline 27
; 	 set_cs(0);  
	clr R16
	xcall _set_cs
	.dbline 28
; 	 set_we(0);
	clr R16
	xcall _set_we
	.dbline 29
; 	 PORTE=0Xf4;//接D0~D7
	ldi R24,244
	out 0x3,R24
	.dbline 30
; 	 PORTD&=0XF1;//输出1v,PD0~PD3接D8~D11
	in R24,0x12
	andi R24,241
	out 0x12,R24
	.dbline 31
; 	 set_we(1);
	ldi R16,1
	xcall _set_we
	.dbline 32
; 	 set_cs(1);
	ldi R16,1
	.dbline -2
	.dbline 33
; 	}
L7:
	.dbline 0 ; func end
	xjmp _set_cs
	.dbend
	.dbfunc e m128_init _m128_init fV
	.even
_m128_init::
	.dbline -1
	.dbline 35
; 	void m128_init()
; 	{
	.dbline 36
; 	 DDRA=0x00;
	clr R2
	out 0x1a,R2
	.dbline 37
; 	 PORTA=0xff;
	ldi R24,255
	out 0x1b,R24
	.dbline 38
; 	 DDRB=0x00;
	out 0x17,R2
	.dbline 39
; 	 PORTB=0xff;
	out 0x18,R24
	.dbline 40
; 	 DDRC=0x00;
	out 0x14,R2
	.dbline 41
; 	 PORTC=0xff;
	out 0x15,R24
	.dbline 42
; 	 DDRD=0x3f;
	ldi R24,63
	out 0x11,R24
	.dbline 43
; 	 PORTD=0xff;
	ldi R24,255
	out 0x12,R24
	.dbline 44
; 	 DDRE=0xff;
	out 0x2,R24
	.dbline 45
; 	 PORTE=0xff;
	out 0x3,R24
	.dbline -2
	.dbline 46
; 	}
L8:
	.dbline 0 ; func end
	ret
	.dbend
	.dbfunc e main _main fV
	.even
_main::
	.dbline -1
	.dbline 48
; 	void main()
; 	{
	.dbline 49
; 	 m128_init();
	xcall _m128_init
	xjmp L11
L10:
	.dbline 51
	.dbline 52
	xcall _tlv5619
	.dbline 53
L11:
	.dbline 50
	xjmp L10
X0:
	.dbline -2
	.dbline 54
; 	 while(1)
; 	 {
; 	 tlv5619();
; 	 }
; 	}
L9:
	.dbline 0 ; func end
	ret
	.dbend

⌨️ 快捷键说明

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