图1 DAC转换模块
图1第一部分中 D0-D7为输入的并行数据(数字量),输出为IOUTA、IOUTB为两路差分信号(模拟量)。为方便讲解,我基于FPGA写了一个可以输出正弦信号的代码,从fpga输出8位并行数据和时钟给DAC转换芯片(如图2所示),然后再通过DAC转换芯片中输出。
图2
输出到IOUTA的信号波形如图3所示:
图3
从数字量到模拟量的计算公式为:Vout=Verf * data(八位宽的数据转化为十进制)/256(八位宽的DA),从图中看出芯片内置的参考电压Verf大概为1V左右。
IOUTB的波形与IOUTA的波形相差相差为180度,幅值一样,偏置电压也相同(图没给出,可以脑补一下)。
第二部分:运放前的一堆电阻、电容起到滤波作用。运放(AD8065ART)的第4引脚的信号图如图4所示
图4
之后通过运放进行全差分运算,使得中心值为0,幅值的大小由R12去决定。如图5所示为全差分输出的信号。如图5所示。
图5
第三部分的主要目的是在运放中加了一个滑动变阻器,可以随意调整幅值的大小(范围在-5V到+5V之间)。因此最终输出的信号的偏置电压都为0V,无论你在第一部分生成怎样的信号。
最终的波形图如图6所示:
图6