AD5620在AD9834应用作用以及AD5620驱动控制研究
AD9834内置相位调制和频率调制功能。不过,为了调制输出信号的幅度,需要一个低功耗DAC或数字电位计来设置满量程电流。可以利用一个电压输出DAC,通过一个串联电阻驱动AD9834的FS ADJUST引脚,从而决定满量程DAC电流的幅度。
本例所用的DAC为nanoDAC系列的12位AD5620。它内置一个5 ppm/°C片内基准电压源,配有SPI接口,采用8引脚SOT-23或MSOP封装。低功耗(3.3 V电源时为2.2 mW)和小尺寸(8引脚SOT-23)的特点,使得AD5620非常适合从AD9834产生幅度调制输出。
电路描述
该电路采用3 V至5 V单电源供电。DAC和DDS均采用SPI接口工作。许多DDS器件的片内DAC都能为AD9834 DDS提供互补电流输出IOUT和IOUTB。
DAC的基准电流是内部基准电压VREF和外部电阻RSET的函数,该电阻一般从DAC FS ADJUST引脚接地。基准电流等于VREF/RSET,其中VREF是AD9834的内部基准电压,典型值为1.20 V。RSET电阻的典型值为6.8 kΩ。
DAC的满量程电流是基准电流的倍数。例如,AD9834的满量程电流为:
如果FS ADJUST连接到一个可变电压VDAC,则满量程电流为:
改变VDAC将改变满量程电流,从而改变DDS器件的电压输出。可以利用一个电压输出DAC提供该可变电压。
AD5620是一种适用的低功耗、小尺寸、高性价比解决方案。它属于nanoDAC 系列,内置一个5 ppm/°C片内基准电压源,采用8引脚SOT-23或MSOP封装,输出电压为0 V至+2.5 V。
当VDAC = 0 V (零电平)时,达到最大满量程输出电流,AD9834的电流在约0.16 mA至约3.12 mA之间变化。负载电阻为200 Ω时,AD9834的输出电压在约0.032 V至约0.624 V之间变化。AD9834 IOUT引脚上的输出电压如图2所示,其中DDS输出频率设为1 MHz。
图2. 幅度控制DAC设为0 V时的DDS输出(此时产生DDS最大满量程输出)
提高AD5620的电压输出将降低AD9834的满量程输出电流。当AD5620的输出电压等于VREF或1.20 V时,达到最小满量程电流。
图3显示1/4量程输出电流对应的AD9834输出电压,其中VDAC = 0.75 × VREF或0.9 V。
图3. 幅度控制DAC设为0.9 V时的DDS输出(此时产生1/4满量程DDS输出)
AD5620 不同信号内部所包括的参考电压源不同:AD5620/AD5640/AD5660-1内部参考电压1.25V。AD5620/AD5640/AD5660-2内部参考电压1.25V,内部参考电压可以在参考电压输出管脚上Vrefout上测到,此外,AD5620器件内部集成一个上电复位模块,确保DAC上电输出为0。AD5620提供12、14、16位数据可选的数字接口。AD5620 使用3线制串行接口,其最高时钟信号可以输入30MHZ.
上面图表示,AD5620系列芯片的数字接口时序图。AD5620/AD5640支持数据16位,而AD5640支持数据24位。同时时序图也反映了,数据输入在SYNC#低有效器件。数据开始输入依赖于SYNC# 同步信号脉冲高有效,串行时钟在脉冲的下降沿检查有效数据.
DAC工作原理如下:
DAC寄存器保持外部接口送入的数据,内部电路根据DAC数据积存器保持的值,打开不同模拟开关,给出模拟电压给后面的放大器.内部结构如图:
DAC输出模拟电压值由参考电压,数据宽度以及给定数字量大小确定!
需要说明:AD5620芯片,N=12;AD5640,N=14;AD5660=N=16. 这里的N表示有效数据宽度与实际寄存器宽度16与24无关!
数字接口:
该DAC芯片提供Sclk,SYNC#,DIN三线串行接口,兼容SPI,QSPI等标准接口。写数据操作:开始,拉低SYNC#,数据从DIN被16位寄存器或24位寄存器串行移入,时钟SCLK最高可达30MHz.在第16个时钟或24个时钟数据被时钟扇入完毕。数模转换开始,此时,SYNC#或继续保持或变高,都应该至少持续33ns,保证数模转换完成!在下一个写操作之前,SYNC#必需保持高,以准备下一个写操作。
上图,清楚描述操作数字接口时序图,以及不同的数据内容位表示含有。从上面图给出下面几点信息:
1.控制模式。PD1和PD0 表示DAC的工作模式。具体代表含义如下图:
正常情况下,PD0和PD1应该是00。如果考虑节能在空闲时间,可以考虑其他模式。
2.不同芯片数据格式。AD5620/AD5640格式最高位代表控制模式,其余表示数据宽度。AD5660最高钱6位空闲,后面紧跟两位表示控制模式,然后才是有效数据。
3.定义了成功读写的区别。就是确保SYNC#一定要在数据扇入完成(16或24时钟沿)才能变高。否则写入不成功!