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

📄 dac8534.asm

📁 本人编写的TI 16为DAC功能测试程序
💻 ASM
字号:
;-------------------------------------------------------
;-----PROGRAM FOR TEST DAC8534IPW-----------------------
;-----DATE:20060515-------------------------------------
;-------------------------------------------------------

;-----I/O DEFINATION------------------------------------
	DA_A0		EQU	P3.0
	DA_A1		EQU	P3.1
	
	DA_ENABLE	EQU	P1.3
	
	DA_LDAC		EQU	P1.4
	DA_DIN		EQU	P1.5
	DA_SCLK		EQU	P1.6
	DA_SYNC		EQU	P1.7

;-------------------------------------------------------	
;-----REFENCE SET FOR 2.048V----------------------------
	DA_COMMAND	EQU	30H
	DA_DATA_H	EQU	31H
	DA_DATA_L	EQU	32H
	
	DA_OUTA_COM	EQU	00H
	DA_OUTB_COM	EQU	22H
	
;-------------------------------------------------------
	DA_5MV_H	EQU	00H
	DA_5MV_L	EQU	0A0H	
	
	;DA_25MV_H	EQU	03H
	;DA_25MV_L	EQU	20H
	DA_25MV_H	EQU	02H
	DA_25MV_L	EQU	0CAH

	DA_420MV_H	EQU	34H
	DA_420MV_L	EQU	80H
	
	DA_422MV_H	EQU	34H
	DA_422MV_L	EQU	0C0H
	
	DA_425MV_H	EQU	35H
	DA_425MV_L	EQU	20H
	
	DA_450MV_H	EQU	38H
	DA_450MV_L	EQU	40H
	
	;DA_560MV_H	EQU	46H
	;DA_560MV_L	EQU	00H
	DA_560MV_H	EQU	38H
	DA_560MV_L	EQU	8CH
;-------------------------------------------------------		
	TEMP_H		EQU	40H
	TEMP_M		EQU	41H	
	TEMP_L		EQU	42H
		
	STACK		EQU	70H
;-------------------------------------------------------	
	ORG	0000H			
	LJMP	MAIN		
;--------------------------------------------------------		
		
	ORG	0030H
MAIN:
	MOV	R7,#00H
	DJNZ	R7,$
	MOV	R7,#00H
	DJNZ	R7,$
	;MOV	SP,#STACK	
	LCALL	RAM_CLR
	MOV	SP,#STACK	
	NOP
	LCALL	IO_INIT
	NOP
	LCALL	DA_CONV
	NOP
	SJMP	$
	
;--------------------------------------------------------	
RAM_CLR:
	NOP
	NOP	
	MOV	R0,#20H
	CLR	A
RAM_CLR_1:
	MOV	@R0,A
	INC	R0
	CJNE	R0,#80H,RAM_CLR_1
	NOP
	RET
	
;--------------------------------------------------------	
IO_INIT:
	NOP
	MOV	A,#0FFH       		;I/O INTIALIZA
    	MOV   	P1,A
    	MOV   	A,#0FFH
    	MOV   	P3,A	
	NOP
	RET
	
;--------------------------------------------------------
DA_CONV:
	NOP
	CLR	DA_LDAC
	CLR	DA_ENABLE
	NOP
	NOP
	SETB	DA_SCLK
	CLR	DA_SYNC
	CLR	DA_DIN
	NOP
	LCALL	DA_OUTA_CONV
	NOP
	LCALL	DA_OUTB_CONV
	NOP
	RET
	
;--------------------------------------------------------	
DA_OUTA_CONV:	
	MOV	R7,#08H		;8 BITS
	CLR	C
	NOP
	MOV	DA_COMMAND,#DA_OUTA_COM
	MOV	A,DA_COMMAND
	NOP
	SETB	DA_SYNC
	NOP
	NOP
	CLR	DA_SYNC
	NOP
	NOP
	LCALL	DATA_TRANS
	
	MOV	R7,#08H
	CLR	C
	MOV	DA_DATA_H,#DA_25MV_H
	MOV	DA_DATA_L,#DA_25MV_L
	MOV	R0,#DA_DATA_H
	MOV	A,@R0
	LCALL	DATA_TRANS
	
	CLR	C
	MOV	R7,#08H
	INC	R0
	MOV	A,@R0
	LCALL	DATA_TRANS
	NOP
	RET
	
;--------------------------------------------------------	
DA_OUTB_CONV:
	MOV	R7,#08H		;8 BITS
	CLR	C
	NOP
	MOV	DA_COMMAND,#DA_OUTB_COM
	MOV	A,DA_COMMAND
	NOP
	SETB	DA_SYNC
	NOP
	NOP
	CLR	DA_SYNC
	NOP
	NOP
	LCALL	DATA_TRANS
	
	MOV	R7,#08H
	CLR	C
	MOV	DA_DATA_H,#DA_560MV_H
	MOV	DA_DATA_L,#DA_560MV_L
	MOV	R0,#DA_DATA_H
	MOV	A,@R0
	LCALL	DATA_TRANS
	
	CLR	C
	MOV	R7,#08H
	INC	R0
	MOV	A,@R0
	LCALL	DATA_TRANS
	NOP
	RET
	
;--------------------------------------------------------
DATA_TRANS:	
	NOP
	NOP
	SETB	DA_SCLK
	NOP
	RLC	A
	MOV	DA_DIN,C
	NOP
	NOP
	CLR	DA_SCLK
	NOP		
	NOP
	DJNZ	R7,DATA_TRANS
	NOP
	RET
	
;--------------------------------------------------------
	NOP
;--------------------------------------------------------
	END
;--------------------------------------------------------

⌨️ 快捷键说明

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