|
TLC5615带有3线串行接口,具有缓冲输入的10位DAC,可输出2倍REF的变化范围,其特点如下:
● 5V单电源工作;
● 3线串行接口;
● 高阻抗基准输入;
● 电压输出可达基准电压的2倍;
● 内部复位。
各引脚含义如下:
DIN: 串行数据输入端
SCLK:串行时钟输入端
/CS: 片选信号
DOUT:串行数据输出端,用于级联
AGND:模拟地
REFIN:基准电压输入
OUT:DAC模拟电压输出端
VDD:电源端


参数:R1,R2中分别存放待转换数据的高2位和底8位;
资源占用:R1,R2,R3,A;
出口:无
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DADIN bit P1.0
DASCLK bit P1.1
DACS bit P1.2
DAConv:
SETB DACS ;拉高/CS端
NOP
NOP
CLR DADIN
CLR DASCLK
CLR DACS ;拉低时钟、数据和片选端
NOP
NOP
MOV A,R1 ;取得待输出数据高2位
MOV R3,#02H ;准备循环2次
DA_1:
RLC A
MOV DADIN,C ;送出数据
NOP
NOP
SETB DASCLK
NOP
NOP
CLR DASCLK ;形成时钟脉冲
DJNZ R3,DA_1
MOV R3,#08H
MOV A,R2 ;取得待输出数据低8位
DA_2:
RLC A
MOV DADIN,C ;送出数据
NOP
NOP
SETB DASCLK ;形成时钟脉冲
NOP
NOP
CLR DASCLK
DJNZ R3,DA_2
SETB DACS
CLR DASCLK
CLR DADIN ;拉高片选端,拉低时钟端与数据端,回到初始状态
RET
END
|