单片机属于数字芯片内部只有0和1表示的。无法表达一个模拟量。电压值 模拟量是随意变化的。数字量就2种变化没有变化表示。
如果是一个8位 D/A芯片
1 1 1 1 1 1 1
一、D/A转换器的原理
工作原理: Vref
工作原理:I0 最后有个2R
有此图可以看出D7---D0 ) 2的7次方
若Rfb 这块是一个电压转换我们先不管。只要知道就是电流转成电压就行了。其实内部就是电阻的分流再转换成电压产生一个变化的过程。流压转换就是一个成正比的关系就很简单了。好了咱们再看看D/A的性能指标:
1、分辨率
分辨率与输入数字量的位数有确定的关系,可以表示成F/2的N次幂 这个写不上去 。FS 表示满量程输入值,N
为二进制位数。对于5V 的满量程,采用8位的DAC时,分辨率为5V/256 = 19.5mv;当采用12位的DAC
时,分辨率为5V/4096 = 1.22mv
.显然,位数越多分辨率越高。当然位数越多对制作芯片的工艺要求越高,转换时间越慢,呵呵。也是制作上的瓶颈位数又高转换还快是相当不容易的,尤其是A/D
2、线性度
线性度(也称为非线性误差)是实际转换特性曲线与理想直线特性之间的最大偏差常以相对于满量程的百分数表示。如+/- 1%是指实际输出值与理论值之差在满刻度的 +/- 1%以内。当然线性度越好,D/A的性能越好。
3、绝对精度和相对精度
绝对精度:(简称精度)是指在整个刻度范围内,任一输入数码所对应的模拟量实际输出值与理论值之间的最大误差。绝度精度是由DAC的增益误差(当输入数码为全1时,实际输出值与理想输出值值之差)、零点误差(数码输入为全0时,DAC的非零输出值)、非线性误差和噪声等引起的。绝对精度(即最大误差)应小于1个LSB。
相对精度 :相对精度与绝对精度表示同一个含义,用最大误差相对于满刻度的百分比表示。(跟线性度差不多)。
4、建立时间
建立时间是指输入的数字量发生满刻度变化时,输出模拟信号达到满刻度值的+/-
1/2LSB所需的时间。是描述D/A转换速率的一个动态指标。(+/- 1/2LSB
电流输出型DAC的建立时间短。电压输出型DAC的建立时间主要决定放大器的响应时间根据建立时间的长短,可以将DAC分成超高速(<1us)、高速(10~1us)、中速(100~10us)、低速(>= 100 us)几档。
DAC0832是使用非常普遍的8位D/A转换器,由于其片内有输入数据寄存器,故可以直接与单片机接口。DAC0832以电流形式输出,当需要转换为电压输出时,可外接运算放大器。属于该系列的芯片还有DAC0830/DAC0831,它们可以相互代换。DAC0832主要特性:
- 分辨率8位
- 电流建立时间1us
- 数据输入可采用双缓冲、单缓冲或直通方式
- 输出电流线性度可在满量程下调节
- 逻辑电平输入与TTL电平兼容
- 单一电源供电(+5v
~ +15v) - 低功耗,20mW
目前我这里是直通方式,下图为DAC0832内部结构及引脚
一、单缓冲
当DAC0832芯片的片选信号,写信号及传送控制信号的引脚全部接地,允许输入锁存信号ILE引脚接+5V时,DAC0832芯片就处于直通工作方式,数字量一旦输入,就直接进入DAC寄存器,进行D/A转换。