1.特点:
双通道 16位 串行输入 单/双极性
三线SPI 24bit的数据给入接口
四线SPI SDO脚用于回读数据 输出电压正负5/10/10.8V可选
串行配置最高30Mhz
输入数据格式二进制和偏移二进制可选(Pin BIN/2sComp)
2.配置:
采用SPI串行配置,配置模式下一共24bit的位宽。主要的结构包括:R/W、默认的0bit位、三个寄存器位REG0~2、三个地址位A0~A2用来代表操作的DAC、16位的数据位Data0~15。一共24比特的数据。在时钟的下降沿有效。
R/W:代表读写指令
REG0、REG1、REG2:和地址位相关联,代表了本次串行操作的寄存器类型。具体就是选择本次操作是对所选地址芯片进行(DAC register) DAC数据控制,还是(output range select register) 输出范围控制,还是(Power control register) 电源控制,还是(Control register) 控制寄存器控制。
A0A1A2:地址线,代表了不同DAC芯片。
DATA:SPI操作的数据。
对于DAC模拟输出,当需要输出的数据在进行寄存器配置完成后,还需根据不同模式进行相应操作才能最终控制模拟输出。加载数据分为了两种方案,一个是自主加载,一个是时钟同步加载。两种模式都是LDAC这个管脚来控制。
当该引脚设为永久低,DAC在同步信号SYNC的上升沿进行更新输出寄存器的值。如果在写周期期间,LDAC一直是高,DAC也会更新输出寄存器的值,但更新输出被推迟,直到LDAC的下降沿发生才进行更新。在这种模式下,可以在LDAC的下降沿上同时更新所有模拟输出。该LDAC脚不能不接。
具体来说:
DAC register:
output range select register:
Control register:
当REG0~3是001的时候,是控制模式。此时地址位和数据位共同决定了具体的控制功能。具体看下图的表格,使用的事宜暂时没有看懂。
Power control register:
当REG0~3是010的时候,是电源控制模式。可以控制各个DAC电源和参考电源的开关,以及能够查看过流检测标志位,以此协助操作者控制功耗。默认下两个DAC都是没有上电的,参考电源也没有上电。当某个通道是下电模式的时候,输出端口是以4k欧的下拉电阻到地的。
对于过流保护,有两种方法,一是连续的电流clamp,这个方式是在Control register里面有介绍,直接将电流控制恒定在20mA。另外一种就是自动将通道断电。这两种靠Clamp Enable来选择。
其他使用特性:
在温度高于150度的时候自动将设备断电。这个是默认关闭的,开启的话,则通过control register。
内置的参考电压。默认内置的片上参考电压是默认关的。如果采用了外部的参数电压,内部的参考源要一直关闭。
3.使用总结:
想让DAC正常工作,除了本身对管脚进行相关控制外(BIN/2sCOMP控制数据格式,LDAC控制更新模式)一般还需要依次进行以下寄存器操作:
1.输出范围选择。
配置DAC器件输出的范围。一般可以选择输出正负5或者10或者10.8V。
具体操作:SPI总线进行寄存器写操作。以5V为例,操作
0 0 001 100 xxxxxxxxxxxxx011
划线处可以根据实际情况更改值。
2.控制寄存器。控制量本案例中未用,都是默认值。
3.电源使能控制。
将DAC的不同通道上电。具体写操作是(参考电压外接,使能A/B两个通道):
0 0 010 000 XXXXX XXXX0X1X1X1
4.将不同的DAC模拟输出。
给出DAC的数字量,输出给DAC进行模拟输出。具体的操作是:
0 0 000 DAC地址(3bit) DAC_data(16bit)