概述
非电物理量(温度、压力、流量、速度等),须经传感器转换成模拟电信号(电压或电流),必须转换成数字量,才能在单片机中处理。
数字量,也常常需要转换为模拟信号。
A/D转换器(ADC):模拟量->数字量的器件;
D/A转换器(DAC):数字量->模拟量的器件。
只需合理选用商品化的大规模ADC、DAC芯片,了解引脚及功能以及与单片机的接口设计。
ADC的基本原理及性能指标
1.A/D转换器的分类
根据转换原理可将A/D转换器分成两大类。
(1)直接型A/D转换器
(2)间接型A/D转换器
逐次逼近式A/D转换器
将输入模拟信号与推测信号比较,调节推测信号逼近输入信号,直至两者相等。精度、速度和价格都适中,是最常用的A/D转换器件。
双积分式A/D转换器
采用输入模拟信号与标准电压反向积分的方法,完成模拟信号的转换。精度高、抗干扰性好、价格低廉,单转换速度慢,得到广泛应用。
V/F变换式A/D转换器
将输入模拟信号转化为线性对应的频率信号,通过测量频率实现模拟信号的转化。适用于转换速度要求不太高,远距离信号传输。
2.A/D转换器的主要技术指标
(1)转换时间和转换速率
完成一次转换所需要的时间。转换时间的倒数为转换速率。
并行式:20~50ns,速率为50~20M次/s(1M=10^6)
逐次比较式:0.4us,速率为2.5M次/s。
(2)分辨率
用输出二进制位数或BCD码位数表示。例如AD574,二进制12位,即用2^12个数进行量化,分辨率为1LSB,百分数表示1/2^12 = 0.24%.
又如双积分式A/D转换器MC14433,分辨率为三位半。若满字位为1999,其分辨率为1/1999=0.05%。
量化误差
量化过程引起的误差为量化误差,是由于有限位数字对模拟量进行量化而引起的误差。量化误差理论上规定为1个单位分辨率,提高分辨率可减少量化误差。
(3)转换精度
定义为一个实际ADC与一个理想ADC在量化值上的差值。可用绝对误差或相对误差表示。
绝对精度
在转换器中,任何数码所对应的实际模拟电压与其理想电压值之差的最大值称为绝对精度。
相对精度
绝对精度的百分数表示。
3. A/D转换器的选择
按输出代码的有效位数分:8位、10位、12位等。
按转换速度分为超高速(≤1ns)、高速(≤1us)、中速(≤1ms)、低速(≤1s)等。
A/D转换器的发展趋势:为适应系统集成需要,将多路转换开关、时钟电路、基准电压源、二/十进制译码器和转换电路集成在一个芯片内,为用户提供方便。
(1)A/D转换器位数的确定
系统总精度涉及的环节较多:传感器变换精度、信号预处理电路精度和A/D转换器及输出电路、控制机构精度,还包括软件控制算法。
A/D转换器的位数至少要比系统总精度要求的最低分辨率高1位,位数应与其他环节所能达到的精度相适应。
只要不低于它们就行,太高无意义,且价高。
8位以下:低分辨率,9~12位:中分辨率,13位以上:高分辨率。
(2)A/D转换器转换速率的确定
从启动转换到转换结束,输出稳定的数字量,需要一定的时间,这就是A/D转换器的转换时间。
低速:转换时间从几ms到几十ms。
中速:逐次比较型的A/D转换器的转换时间可从几us~100us左右。
高速:转换时间仅20~100us.适用于雷达、数字通讯、实时光谱分析、实时瞬态记录、视频数字转换系统等。
AD转换时间对模拟信号的要求
如用转换时间为100us的集成A/D转换器,其转换速率为10千次/秒。根据采样定理和实际需要,一个周期的波形需采10个点,最高也只能处理1KHz的信号。
把转换时间减小到10us,信号频率可提高到10KHz。
(3)是否加采样保持器
直流和变化非常缓慢的信号可不用采样保持器。其他情况都要加采样保持器。
根据分辨率、转换时间、信号带宽关系,决定是否要加采样保持器:
如果是8位ADC,转换时间100ms,无采样保持器,信号的允许频率是0.12Hz;
如果是12位ADC,该频率为0.0077Hz。如果转换时间是100us,ADC是8位时,该频率为12Hz,12位时是0.77Hz。
(4)工作电压和基准电压
选择使用单一+5v工作电压的芯片,与单片机系统共用一个电源比较方便。
基准电压源是提供给A/D转换器在转换时所需要的参考电压,在要求较高精度时,基准电压要单独用高精度稳压电源供给。
A/D转换的实现(ADC0809)
MCS-51与ADC 0809的接口
逐次逼近式A/D转换器基本原理:推测信号由D/A转换器输出获得,比较器输出决定每一位的锁存状态,完成所有位的比较后,D/A转换器输入即为A/D转换器的输出。
ADC0809功能特点为:
--分辨率为8位
--ADC0808最大不可调误差1/2LSB,ADC0809最大不可调误差1LSB
--模拟输入电压范围为0~5V,单电源供电
--锁存控制的8路模拟开关
--转换速度取决于芯片的时钟频率,其范围10~1280KHz,当频率为500KHz时,转换速度位128us。
逐次逼近式8路模拟输入、8位输出的A/D转换器 管脚图
共28脚,双列直插式封装。主要引脚功能如下:
(1)IN0~IN7:8路模拟信号输入端
(2)D0~D7:8位数字量输出端
(3)C、B、A:控制8路模拟通道的切换,C、B、A=000~111分别对应IN0~IN7通道。
(4)OE、START、CLK:控制信号端,OE为输出允许端,START为启动信号输入端,CLK为时钟信号输入端。
(5)Vr(+)和Vr(-):参考电压输入端
ADC0809结构框图
ADC0809编程要点
选通模拟量输入通道
发出启动信号
用查询或中断方法等待转换结束
初学阶段建议采用延时的方法
读取转换结果
A/D转换的实现(LM331)
MCS-51与LM331的接口
在即要求数据长距离传输又要求精确度较高的场合,可使用V/F转换器代替A/D器件。
V/F转换器是把电压信号转变为频率信号的器件,有良好的精度、线性度。
电路简单,外围元件性能要求不高,适应环境能力强。
用V/F转换器实现A/D转换的原理
输出频率的测量:
把V/F转换器输出的频率信号作为计数脉冲,进行定时计数,这样计数器的计数值与V/F转换器输出的脉冲频率信号之间的关系为:f = D/T
D:计数值,T:计数时间,就可求出V/F转换器的输出频率f。
输入电压的计算:根据V/F转换器的输入电压V与输出频率f的关系:f = KV
k:V/F转换系数,是一个常数
从而知道输入电压V,这就实现了A/D转换。
**定时/计数器可用单片机内部的,也可使用外部扩展的,用单片机把计数值取入内存即可进行数据处理,获得模拟电压的大小。
常用V/F转换器LMX31简介
包括LM131/LM231/LM331,适用于A/D转换器,高精度V/F变换器。
1.主要特性
(1)频率范围:1~100KHz
(2)低的非线性:±0.01%
(3)单电源或双电源供电
(4)单电源供电电压为+5v时,可保证转换精度
(5)温度特性:最大±50ppm/℃
(6)低功耗:Vs=5V时为15mw
2.电特性参数:
(1)电源电压:+15v
(2)输入电压范围:0~10v
(3)输出频率:10Hz~11KHz
(4)非线性失真:±0.03%
V/F转换器与MCS51单片机接口
被测电压转换为与其成比例的频率信号后送入单片机进行处理。
(1)直接与MCS-51接口。接口简单,频率信号接入单片机的定时器/计数器输入端即可。
(2)在一些电源干扰大、模拟电路部分容易对单片机产生电气干扰等恶劣环境中,可采用光电隔离的方法使V/F转换器与单片机无电信号联系。
(3)与单片机之间距离较远时需要采用驱动电路以提高传输能力。可采用串行通讯的驱动器和接收器来实现。
DAC的基本原理及性能指标
1.概述
输入:数字量 输出:模拟量
转换过程:送到DAC的各位二进制数按其权的大小转换为相应的模拟分量,再把各模拟分量叠加,其和就是D/A转换的结果。
使用D/A转换器时,要注意区分:
**D/A转换器的输出形式
**内部是否带有锁存器
(1)输出形式
两种输出形式:电压输出形式与电流输出形式。电流输出的D/A转换器,如需模拟电压输出,可在其电流输出端加一个D/A转换器,