A/D: 基于STC89C52与ADC0804的A/D设计详解

1)A/D转换原理
通过采样,量化和编码这三个步骤来完成, 即首先对输入的模拟电压信号采样,采样结束后进入保持时间,在
这段时间内将采样的电压量转化为数字量,并按一定的编码形式给出转换结果,然后开始下一次采样。
采样需满足采样定理,即采样频率fs要大于输入信号的最高频率分量fimax的频率,一般取fs = (2~3)fimax,
2) A/D转换器的类型
包括两类,直接A/D转换器和间接A/D转换器,
其中直接A/D转换器包括并行比较型A/D转换器和反馈比较型A/D转换器。
间接A/D转换器包括电压-时间变换型(V-T变换型)和电压-频率变换型(V-F变换型)。
a. 并行比较型A/D转换器原理图:

a.1 原理说明
三位并行比较型A/D转换器由电压比较器,寄存器和代码转换器三部分组成。用电阻链把参考电压Vref分压,
得到从1/15Vref~13/15Vref之间的7个比较电平,量化单位为2/15Vref. 然后将要输入的模拟电压同时加到
每个比较器的另一个输入端上,与这7个比较基准进行比较。
a.2 产品介绍
AD公司的AD9012(8位),AD9002(8位),AD9020(10位)。
a.3 特点
由于转换是并行的,其转换时间只受比较器,触发器和编码电路延迟时间限制,因此转换速度快;(优点)
随着分辨率的提高,元件数目要按几何级数增加。(缺点)
使用这种含有寄存器的并行A/D转换电路时,可以不用附加采样-保持电路,因为比较器和寄存器这两部分
兼有采样-保持功能。(优点)
b. 反馈比较型A/D转换器
b.1 原理说明
取一个数字量加到D/A转换器上,于是得到一个对应的输出模拟电压,将这个模拟电压和输入的模拟电压
信号比较,如果两者不相等,则调整所取的数字量,直到两个模拟电压相等为止,最后取的这个数字量
就是所求的转换结果。
b.2 实现方案
计数型和逐次比较型
计数型转换器主要由比较器C,D/A转换器,计数器,脉冲源,控制门G以及输出寄存器等几部分组成,其转换
原理是转换开始前先用复位信号将计数器置0,而且转换信号应停留在Vl=0的状态,这时门G被封锁,计数器
不工作。计时器加给D/A转换器的是全0信号,所以D/A转换器输出的模拟电压V0=0,如果Vi为正电压信号,
比较器的输出电压为1. 依同样方法比较完DA的全部位数。由于在转换过程中计数器中的数字不停地变化,
所以不宜将计数器的状态直接作为输出信号,为此在输出端设置了输出寄存器,在每次转换完成以后,用
转换控制信号的下降沿将计数器输出的数字置入输出寄存器中,而以寄存器的状态作为最终的输出信号。
这个方法问题是转换速度慢,转换时间长。适用于转换速度要求不高的场合。
逐次比较型转换器逻辑电路图

C为电压比较器,当Vi>=Vo时,比较器输出为0;反过来输出为1. FFa,FFb,FFc三个触发器组成了三位数码
寄存器,触发器FF1~FF5和门电路G1~G9组成控制逻辑电路。
逐次比较型A/D转换器完成一次转换所需时间与其位数和时钟脉冲频率有关,位数愈少,时钟频率越高,
转换所需时间越短。这种A/D转换器具有转换速度快,精度高的特点。其产品主要有ADC0804/0808/0809系列(8位),AD575(10位),AD574A(12位)。
c. 电压-时间变换型(v-t变换型)
其原理是把输入的模拟电压信号转换成与之成正比的时间宽度信号,然后在这个时间宽度里对固定频率的时钟
脉冲计数,计数的结果就是正比于输入模拟电压的数字信号。
d. 电压-频率变换型(v-f变换型)
其原理是把输入的模拟电压信号转换成与之成正比的频率信号,然后在一个固定的时间间隔里对得到的频率
信号计数,所得到的结果就是正比于输入模拟电压的数字量。
3) A/D转换器的参数指标
a. 分辨率
说明A/D转换器对输入信号的分辨能力。
A/D转换器的分辨率以输出二进制数的位数表示,输出位数愈多,量化单位愈小,分辨率愈高。
b. 转换误差
表示A/D转换器实际输出的数字量与理论输出数字量之间的差别。
c. 转换精度
A/D转换器的最大量化误差和模拟部分精度的共同体现。
d. 转换时间
A/D转换器从转换控制信号到来开始,到输出端得到稳定的数字信号所经过的时间。
4) ADC0804说明
a. 引脚图

Vin(+),Vin(-) - 两个模拟信号输入端,用以接受单极性,双极性和差模输入信号。
DB7~DB0 - 具有三态特性数字信号输出口。
AGND - 模拟信号地
DGND - 数字信号地
CLK - 时钟信号输入端
CLKR - 内部时钟发生器的外接电阻端,与CLK端配合可有芯片自身产生时钟脉冲,其频率为1/(1.1RC)
/CS - 片选信号输入端,低电平有效,一旦有效,表明A/D转换器被选中,可启动工作。
/WR - 写信号输入,低电平启动A/D转换。
/RD - 读信号输入,低电平输出端有效。
/INTR - A/D转换结束信号,低电平表示
ADSTC89C52ADC080 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)
