D/A转换就是要将数字量D转换成与之成正比的模拟量V,即:V= R×D ,其中R为比例系数。若D为二进制数,则按权展开后 : <?XML:NAMESPACE PREFIX = V />
例如:三位二进制数按位权展开:D=d2×22+d1×21+d0×20 。
数模转换(D/A)电路形式是多种多样的,多数采用T型电阻解码网络。现以三位二进制数的数模转换电路说明其工作原理,如图10-3所示。在T型解码网络中,有一个标准电源VREF 。二进制数的每一位di(i=0,1,2)对应一个电阻2R,并由该二进制值di控制一个双向电子开关Ki,当di=0时Ki接地,当di=1时Ki接通右边运算放大器求和点∑。下面分析输出电压V。
当D= d2d1d0=111时,所有开关Ki均接放大器求和点∑,由于∑是虚地点,从A点看,D点与∑点均为地,所以:
B点左边的网络电路(图10-3虚框中部分)可简化一个2R的等效电阻,与A点同样原理可得
再将C点左边网络电路简化为一个2R的等电阻,则有
最后将整个网络电路等效为一个阻值为R的电阻,则由C点:I =VREF/R
总电流:
输出电压:
上述公式,虽然是从D=d2d1d0=111的情况下推出的,但对D取其它值同样成立。如D=d2d1d0=000,由图10-3可知,电子开关Ki均接地,所以
此结果与公式推导V=VR0×D=0是完全相同。推广到一般情况,对于n位二进制数D, 其输出电压为:
由上式可见,输出电压与二进制数D成线性比例关系。调整运算放大器的反馈电阻R0和参考电压-VREF ,就可得到和n位二进制数成线性比例的输出电压V。
将(R-2R)T型电阻网络、二进制数码控制电子开关以其控制电路集成在一个芯片内,便形成了各种型号的D/A芯片。D/A转换芯片的输出方式有两种:电流输出与电压输出。实际使用时,常采用电流输出的D/A芯片外加运算放大器实现电压输出。从连接方式上看,D/A芯片可分为两类,一类是D/A芯片内设置有数据寄存器,具有数据写入选通信号和片选信号输入线,它们可以与80C51单片机直接接口,作为单片机的I/O扩展口。另一类D/A芯片内没有锁存器,输出信号随输入数据变化而变化,因此不能直接与CPU数据总线接口,必须通过并行口和系统连接。