单通道串行输入DAC芯片AD5422
0赞这两天在看电路图时遇到了AD5422,一开始看到这个型号,我就以为这是一块模数转换器芯片,谁知我一查PDF文档,竟发现它DAC来的,感觉挺特殊的一块芯片,于是我对它进行了详细地学习,通过查看它的官方文档和应用文档,得出了以下总结,仅供大家参考。
AD5422是低成本、精密、完全集成、12/16位数模转换器,内置可编程电流源和可编程电压输出,非常适用于工业过程控制。
之所以说它是一块可编程电流源DAC,那是因为它的输出电流范围可以通过编程设置为4mA至20mA、0mA至20mA或者超量程的0mA至24mA。
而之所以说它是一块可编程电压源DAC,那是因为它的输出电压由一个独立引脚提供,该引脚可配置成提供0V至5V、0V至10V、±5 V或±10 V的输出范围,所有范围均提供百分之十的超量程。这两种功能都能通过后面的写寄存器时序来实现,通过控制控制寄存器的R0、R1、R2位来实现不同的电压电流输出范围。
其它先不说,下面先给出AD5422的芯片管脚图以及各个管脚的作用:



相信通过上面的管脚说明表,大家应该都能很清楚了知道AD5422芯片各个管脚的功能了吧,所以对于管脚功能我就不再多说啦。
前面说到AD5422是一块可编程的DAC,那么它又是怎么通过编程来实现控制的呢?下面我们将进行详细介绍:
AD5422通过一个多功能三线式串行接口受控,该接口以最高30MHz的时钟速率工作,与SPI标准兼容。先说一下它的输入移位寄存器:输入移位寄存器为24位宽。数据在串行时钟输入SCLK的控制下首先作为24位字载入器件MSB中。数据在SCLK的上升沿逐个输入。输入寄存器包括8个地址位和16个数据位,如下表所示:

而对于不同的地址字节,也对应着不同的功能,对应功能如下表:

下面说一下它的时序,如下图就是它的写入模式时序图:相对比较简单,24位数据在串行时钟输入SCLK的上升沿输入,然后在LATCH上升沿锁存,这样就完成了数据的写入。

接着是回读模式时序图,相对比较复杂一点:

首先是在时钟SCLK的上升沿下先写入24位数据,说明要读回的是哪个寄存器,这个可以通过上面的地址字节功能查得,然后在LATCH的上升沿锁存这24位数据。接着就回读SDO端口的数据,这时跟LATCH的状态无关,LATCH高低电平都行,只要在SCLK的上升沿读回24位数据,前8位可以弃掉,后面16位数为所读寄存器的内容,在读完24位数据后还是LATCH的上升沿,这样就完成了寄存器回读的整个过程了。
