实验三 逐次比较式A/D转换器0809的原理及编程
实验目的
熟悉逐次逼近式A/D转换器芯片的工作原理。
了解A/D转换芯片0809的接口设计方法。
掌握A/D转换器0809简单的应用编程。
实验任务
分析本实验模板的电路原理,它与EPP接口数据传送的方法,所使用的端口地址。
编写出逐次逼近式A/D转换器芯片0809的转换与显示的控制程序。
实验原理
1.电路组成及转换原理
ADC0809是带有8位A/D转换器、8路多路开关,以及与微型计算机兼容的控制逻辑的CMOS组件。8位A/D转换器的转换方法为逐次逼近法。在A/D转换器内部含有一个高阻抗斩波稳定比较器,一个带有模拟开关数组的256电阻分压器,以及一个逐次逼近的寄存器。8路的模拟开关由地址锁存器和译码器控制,可以在8个通道中任意访问一个单边的模拟信号。其原理图如图3-1所示。
图3-1 ADC0809内部原理图
从图中可以看出,ADC0809由两部分组成,第一部分为八通道多路模拟开关,控制C、B、A和地址锁存允许端子,可使其中一个通道被选中。第二部分为一个逐次逼近型A/D转换器,它由比较器、控制逻辑、输出锁存缓冲器、逐次逼近寄存器以及开关数组和256R梯型解码网络组成,由后两种电路(开关数组和256R梯型电阻)组成D/A转换器。控制逻辑用来控制逐次逼近寄存器从高位到低位逐次取“1”,然后将此数字量送到开关数组(8位开关),以控制开关K7~K0是否与参考电压相连。参考电压经256R梯型电阻输出一个模拟电压Vc,Vc与输入模拟量Vx在比较器中进行比较。当Vc>Vx时,该位Di=0;若Vc≤Vx,则Di=1。因此,从D7~D0比较8次,逐次逼近寄存器中的数字量,即与模拟量Vx所相当的数字量相等。此数字量送入输出寄存器,并同时发出转换结束信号。
2.ADC0809的引脚功能
ADC0809的引脚,如图3-2所示。
图3-2 ADC0809引脚图
图5-2所示各引脚功能如下:
⑴ IN7~IN0:八个模拟量输入端。
⑵ START:启动A/D转换,当START为高电平时,A/D转换开始。
⑶ EOC:转换结束信号。当A/D转换结束后,发出一个正脉冲,表示A/D转换完毕。此信号可用作A/D转换是否完成的检测信号或向CPU申请中断的信号(需加一级反相器)。
⑷ OUTPUT ENABLE:输出允许信号。当此信号被选中时,允许从A/D转换器的锁存器中读取数字量。此信号即为ADC0809的片选信号,高电平有效。
⑸ CLOCK:实时时钟,可通过外接RC电路改变时钟频率。
⑹ ALE:地址锁存允许,高电平有效。当ALE为高电平时,允许C、B、A所示的通道被选中,并把该通道的模拟量接入A/D转换器。
⑺ ADDA、ADDB、ADDC:通道号端子,C为最高位,A为最低位。
⑻ D7~D0:数字量输出端。
⑼ Vref(+),Vref(-):参考电压端子,用来提供D/A转换器权电阻的标准电平。一般Vref(+)=+5V,Vref(-)=0V。
⑽ Vcc:电源电压,接+5V。
⑾ GND:接地端。
ADC0809的主要性能如下:
⑴ 分辨率为8位。
⑵ 总的不可调误差为±1LSB。
⑶ 工作时钟典型值为640KHZ,转换时间约为100μs。
⑷ 采用单+5V电源。
⑸ 模拟量的输入电平范围为0~5V,不需要零点和满度调节。
⑹ 具有8通道闩锁开关控制,可以直接接入8个单端模拟量。
⑺ 数字量输出采用三态逻辑,输出符合TTL电平。
⑻ 低功耗为15mW。
⑼ 温度范围为-40oC~+85oC。
ADC0809的典型应用,如图3-3所示。
图3-3 ADC0809典型应用
图3-3是ADC0809的一种典型接法。参考电压的Vref(+)接+5V,Vref(-)接地,8个通道的模拟量输入电压Vi=0~5V。当Vi=0V时,A/D转换输出为00H,当Vi=Vref时,A/D转换器输出为FFH。EOC作为中断请求信号,可根据系统总线的要求选用INT或/INT信号。START和ALE连接在一起,利用其上升沿锁存通道地址信号A、B、C,在下降沿开始A/D转换。
3.时序图
ADC0809的时序图,如图3-4所示。
图3-4 ADC0809时序图
从图可以看出,启动脉冲START和地址锁存允许脉冲ALE的上升沿将地址送上地址总线,模拟量经C、B、A选择开关所指定的通道送到A/D转换器。在START信号下降沿的作用下,逐次逼近过程开始,在时钟的控制下,一位一位地逼近。此时,转换结束信号EOC呈低电平状态。由于逐次逼近需要一定的过程,所以,在此期间内,模拟输入值应维持不变,比较器要一次次进行比较,直到转换结束。此时,如果计算机发出一个输出允许命令(EOC呈高电平),则可读出数据。
4.编程原理
根