串行接口的D/A转换器通过串行接口输入数据。常用的串行接口有I2C、SPI等形式,数据信号通过串行的方式写入D/A转换器。串行接口减少了D/A转换器的引脚,可采用较小的封装,在设计体积小、重量轻的系统时,采用此类器件尤为合适。
图1为12位串行接口的数模转换器AD7233的结构图。片内的稳压管提供了参考电压,输入的数据格式为二进制补码,输出电压范围为-5V到+5V,其数模转换部分由R-2R梯形电阻网络和输出放大器组成。输入数字量与对应的输出电压如表1所示。如希望输入的为二进制原码,则可在输入数据之前将最高位为求反。
图1 12位串行接口的数模转换器AD7233的结构图
表1 输入数字量与对应的输出电压
输入数字量 |
输出电压 |
0111 1111 1111 |
5V•(2047/2048) |
0000 0000 0001 |
5V•(1/2048) |
0000 0000 0000 |
0V |
1111 1111 1111 |
-5V•(1/2048) |
1000 0000 0001 |
-5V•(2047/2048) |
1000 0000 0000 |
-5V•(2048/2048)=-5V |
AD7233的数据接口结构如图2所示,其接口信号为帧同步信号-SYNC、输入串行信号SDIN、串行时钟信号SCLK和数据装入DAC锁存器信号-LDAC。图3为AD7233的数据写入时序图,-SYNC由高变低表示一个新的数据将传送到AD7233,此时由16个SCLK信号的下降沿将SDIN端的数据串行地移入器件的输入移位寄存器。内部的门控信号保证了只有16位的数据能移入,在16位数据装入后-SYNC变高。16位数据的前4位为无效数据,后12位数据高位在前,低位在后。
图2 AD7233的数据接口结构
图3 AD7233的数据写入时序
将输入移位寄存器中的12位数据装入DAC锁存器有2个模式。在-SYNC信号变低后检查-LDAC的状态,如果-LDAC为0,采用自动装入模式,在最后一位的串行数据装入时,即第16个SCLK脉冲的下降沿,DAC锁存器数据更新,模拟输出信号也随之发生变化。在-SYNC信号变低后检查-LDAC的状态,如果-LDAC为1,由-LDAC信号控制数据的装入,当16个数据移入输入移位寄存器后,DAC锁存器数据的更新由-LDAC信号的下降沿同步。这种模式通常用在多个D/A转换器的系统中,可通过串行通信将数据分别装入D/A转换器的输入移位寄存器,然后通过同一个-LDAC信号同步地更新模拟输出信号。应注意的是,在传输下一个数据之前,必须将-LDAC信号置为高电平。
AD7233与微处理器的连接方式可参考SPI、I2C等内部总线接口,不同的是,AD7233增加了帧同步信号-SYNC和DAC锁存器信号-LDAC。