读取ADC0809转换结果的几种方法

读取ADC0809转换结果的几种方法,第1张

首先你要知道ADC0809的每个管脚的功能,然后用单片机按照下面的管脚功能要求去控制每个管脚。
IN0~IN7:8路模拟量输入端。
2-1~2-8:8位数字量输出端。
ADDA、ADDB、ADDC:3位地址输入线,用于选通8路模拟输入中的一路
ALE:地址锁存允许信号,输入,高电平有效。
START: A/D转换启动信号,输入,高电平有效。
EOC: A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。
OE:数据输出允许信号,输入,高电平有效。当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。
CLK:时钟脉冲输入端。要求时钟频率不高于640KHZ。
REF(+)、REF(-):基准电压。
Vcc:电源,单一+5V。
GND:地。
ADC0809的工作过程是:首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。此地址经译码选通8路模拟输入之一到比较器。START上升沿将逐次逼近寄存器复位。下降沿启动 A/D转换,之后EOC输出信号变低,指示转换正在进行。直到A/D转换完成,EOC变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当OE输入高电平 时,输出三态门打开,转换结果的数字量输出到数据总线上。
上面实际上是一个用自然语言表达的程序过程,之后你就用汇编语言来实现上面的自然语言过程

ADC0809是带有8位A/D转换器、8路多路开关以及微处理机兼容的控制逻辑的CMOS组件。它是逐次逼近式A/D转换器,可以和单片机直接接口。
(1)ADC0809的内部逻辑结构
ADC0809由一个8路模拟开关、一个地址锁存与译码器、一个A/D转换器和一个三态输出锁存器组成。多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用A/D转换器进行转换。三态输出锁器用于锁存A/D转换完的数字量,当OE端为高电平时,才可以从三态输出锁存器取走转换完的数据。
(2). 引脚结构
IN0-IN7:8条模拟量输入通道
ADC0809对输入模拟量要求:信号单极性,电压范围是0-5V,若信号太小,必须进行放大;输入的模拟量在转换过程中应该保持不变,如若模拟量变化太快,则需在输入前增加采样保持电路。
地址输入和控制线:4条
ALE为地址锁存允许输入线,高电平有效。当ALE线为高电平时,地址锁存与译码器将A,B,C三条地址线的地址信号进行锁存,经译码后被选中的通道的模拟量进转换器进行转换。A,B和C为地址输入线,用于选通IN0-IN7上的一路模拟量输入。通道选择表如下表所示。
C B A 选择的通道
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
数字量输出及控制线:11条
ST为转换启动信号。当ST上跳沿时,所有内部寄存器清零;下跳沿时,开始进行A/D转换;在转换期间,ST应保持低电平。EOC为转换结束信号。当EOC为高电平时,表明转换结束;否则,表明正在进行A/D转换。OE为输出允许信号,用于控制三条输出锁存器向单片机输出转换得到的数据。OE=1,输出转换得到的数据;OE=0,输出数据线呈高阻状态。D7-D0为数字量输出线。
CLK为时钟输入信号线。因ADC0809的内部没有时钟电路,所需时钟信号必须由外界提供,通常使用频率为500KHZ,
VREF(+),VREF(-)为参考电压输入。
2. ADC0809应用说明
(1). ADC0809内部带有输出锁存器,可以与AT89S51单片机直接相连。
(2). 初始化时,使ST和OE信号全为低电平。
(3). 送要转换的哪一通道的地址到A,B,C端口上。
(4). 在ST端给出一个至少有100ns宽的正脉冲信号。
(5). 是否转换完毕,我们根据EOC信号来判断。
(6). 当EOC变为高电平时,这时给OE为高电平,转换的数据就输出给单片机了。

用文字描述虽然不能完全说清楚,但是
可以让你理解。。。实际上这个非常简单哦,一个简单
的开关线路就可以让你明白,比如说一个三极管处于两种状态
工作,一个开、一个关状态(npn型三极管),当基极加压后,集电极
就会饱和导通,那么这个时候输出就为低电平(集电极电压为零了嘛),如果
这个时候基极不加压或者说电压降到一定值的时候,三极管就从饱和导通状态
释放,那么输出的就是高电平。。。实际上稍微了解电子基础的朋友都会明白哦。。。
还有疑问追问。。
真心希望能给你帮助!

其实不是很懂你想问什么,我就简单说一下我能想到的你可能需要的吧。
adc0809是一种模数转换芯片,简单来说就是把模拟信号转换成对应的数字信号。比如输入为1v,参考高电压为2v,参考低电压为0v,那么输出就是1v/2v
255
(乘以255的原因是因为这是一个8位的ad)。
74ls373是三态输出的八d锁存器,简单来说就是通过几个输入信号来实现数字信号的d触发器的控制,三态就是高电平
低电平
高阻态三态。
8031是一种通用单片机,就是通过在里面进行预先烧写程序,实现通用控制的一种器件。
总体来说,8031是电路板的大脑,adc0809类似于温度神经,用来检测电压高低,74ls373类似于神经纤维之类用于实现电平信号的一种基础逻辑的扩展芯片。
建议提出问题时说明具体目标或者用途,回答也好有的放矢。手写不易,求给分。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/13216284.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-06-21
下一篇 2023-06-21

发表评论

登录后才能评论

评论列表(0条)

保存