1.6 单片机与A/D器转换接口的控制
1.6.1 A/D转换器概述
A/D转换器的品种繁多,不同厂商以不同原理实现的单片集成A/D转换器的性能也不尽相同。在使用和选取A/D转换器时,主要考虑A/D转换器的分辨率和输出特性,A/D转换器的分辨率主要决定了测试系统的精度,而A/D转换器的输出特性决定了它与单片机的接口形式。
1.量化误差与分辨率
A/D转换器的分辨率习惯上以输出的二进制数的位数或BCD码的位数来表示。如一个8位二进制的A/D转换器的分辨率为:
一个4位半BCD码A/D转换器的分辨率为:1/19999×100%=0.005%
量化误差和分辨率是统一的。量化误差是由于有限数字对模拟量进行离散取值而引起的误差。因此,量化误差理论上为一个单位分辨率,即±1/2LSB。提高分辨率可减少量化误差。
2. A/D转换器的分类
A/D转换器的分类标准很多,根据A/D转换器的输出形式大致可分为并行、串并行和串行3种;根据A/D转换器的工作原理又可分为逐次逼近式、双积分式及电压频率转换式等。
1.6.2 8位并行输出A/D转换器ADC0808介绍
1 ADC0808的结构
ADC0808是一种8路模拟输入、8位数字并行输出的A/D转换器,ADC0808和ADC0809是一对姊妹芯片,可以互相代换。ADC0808结构框图如图1-14所示。
ADC0808由单一+5V电源供电,内部由八通道多路开关及地址锁存器、8路模/数(A/D)转换器和三态输出锁存器三大部分组成。八通道多路开关及地址锁存器可对8路输入模拟电压分时进行转换,三个地址信号ADDA、ADDB和ADDC决定是哪一路模拟信号被选中并送到内部A/D转换器中进行转换,完成一次转换约需100μs时间,每个通道均能转换出8位数字量。输出具有一个八位三态输出锁存器,可直接接到单片机数据总线上。

图1-14 ADC0808结构框图
2. ADC0808的引脚ADC0808是28脚双列直插式封装,引脚图如图1-15所示。
图1-15 ADC0808引脚图
各引脚功能如下:
l IN-0~IN-7:模拟量输入通道。ADC0808对输入模拟量的要求主要有:信号单极性,电压范围0~5 V,若信号过小还需进行放大。另外,在A/D转换过程中,模拟量输入的值不应变化太快,因此,对变化速度快的模拟量,在输入前应增加采样保持电路。
l D7~D0:转换结果八位数据输出线。其为三态缓冲输出形式,可以和单片机的数据线直接相连。
l ADD-A~ADD-C:多路开关地址选择输入端。用于选择8路模拟量输入信号之一和内部A/D转换器接通并进行转换。ADDA、ADDB、ADDC的输入与被选通的通道的关系如表所示。
表11-16 ADDA、ADDB、ADDC输入与被选通的通道对应关系
多路开关地址线 | 被选中的输入通道 | ||
ADDC | ADDB | ADDA | |
0 | 0 | 0 | IN0 |
0 | 0 | 1 | IN1 |
0 | 1 | 0 | IN2 |
0 | 1 | 1 | IN3 |
1 | 0 | 0 | IN4 |
1 | 0 | 1 | IN5 |
1 | 1 | 0 | IN6 |
1 | 1 | 1 | IN7 |
l ALE:地址锁存允许信号。在对应ALE上跳沿,ADDA、ADDB、ADDC地址状态送入地址锁存器中。
l START:启动脉冲输入端,其上升沿用以清除ADC内部寄存器;其下降沿用以启动内部控制逻辑,使之A/D转换器工作;在A/D转换期间,START应保持低电平。
l EOC:A/D转换结束状态信号,其上跳沿表示A/D转换器内部已转换完毕。EOC=0,正在进行转换;EOC=1,转换结束。该状态信号既可作为查询的状态标志,又可以作为中断请求信号使用。
l OE:允许输出控制端,高电平有效。有效时能打开三态门,将八位转换后的数据送到单片机的数据总线上。OE=0,输出数据线呈高电阻;OE=1,输出转换得到的数据。
l CLOCK:转换定时时钟脉冲输入端。它的频率决定了A/D转换器的转换速度。在此,其典型值为640kHz,其对应转换速度为100μS。
l ref(+):参考电压正端。一般接+5V高精度参考电源。
l ref(-):参考电压输入负端。一般接模拟地。
l VCC为+5V,GND为地。
3. ADC0808的工作时序
ADC0808的工作时序如图1-17所示。

图1-17 ADC0808的工作时序图

