0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

AD转换器ADC0809的应用说明

Wildesbeast 来源:单片机教程网 作者:h1654155169.2086 2020-04-06 13:26 次阅读

1. 基本知识

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上的一路模拟量输入。通道选择表如下表所示。

CBA选择的通道

000IN0

001IN1

010IN2

011IN3

100IN4

101IN5

110IN6

111IN7

数字量输出及控制线: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为高电平,转换的数据就输出给单片机了。

3. 实验任务

如下图所示,从ADC0809的通道IN3输入0-5V之间的模拟量,通过ADC0809转换成数字量在数码管上以十进制形成显示出来。ADC0809的VREF接+5V电压。

4. 电路原理

图1.27.1

5. 系统板上硬件连线

(1). 把“单片机系统板”区域中的P1端口的P1.0-P1.7用8芯排线连接到“动态数码显示”区域中的A B C D E F G H端口上,作为数码管的笔段驱动。

(2). 把“单片机系统板”区域中的P2端口的P2.0-P2.7用8芯排线连接到“动态数码显示”区域中的S1 S2 S3 S4 S5 S6 S7 S8端口上,作为数码管的位段选择。

(3). 把“单片机系统板”区域中的P0端口的P0.0-P0.7用8芯排线连接到“模数转换模块”区域中的D0D1D2D3D4D5D6D7端口上,A/D转换完毕的数据输入到单片机的P0端口

(4). 把“模数转换模块”区域中的VREF端子用导线连接到“电源模块”区域中的VCC端子上;

(5). 把“模数转换模块”区域中的A2A1A0端子用导线连接到“单片机系统”区域中的P3.4P3.5P3.6端子上;

(6). 把“模数转换模块”区域中的ST端子用导线连接到“单片机系统”区域中的P3.0端子上;

(7). 把“模数转换模块”区域中的OE端子用导线连接到“单片机系统”区域中的P3.1端子上;

(8). 把“模数转换模块”区域中的EOC端子用导线连接到“单片机系统”区域中的P3.2端子上;

(9). 把“模数转换模块”区域中的CLK端子用导线连接到“分频模块”区域中的/4端子上;

(10). 把“分频模块”区域中的CK IN端子用导线连接到“单片机系统”区域中的ALE端子上;

(11). 把“模数转换模块”区域中的IN3端子用导线连接到“三路可调压模块”区域中的VR1端子上;

6. 程序设计内容

(1). 进行A/D转换时,采用查询EOC的标志信号来检测A/D转换是否完毕,若完毕则把数据通过P0端口读入,经过数据处理之后在数码管上显示。

(2). 进行A/D转换之前,要启动转换的方法:

ABC=110选择第三通道

ST=0,ST=1,ST=0产生启动转换的正脉冲信号

7. 汇编源程序

CH EQU 30H

DPCNT EQU 31H

DPBUF EQU 33H

GDATA EQU 32H

ST BIT P3.0

OE BIT P3.1

EOC BIT P3.2

ORG 00H

LJMP START

ORG 0BH

LJMP T0X

ORG 30H

START: MOV CH,#0BCH

MOV DPCNT,#00H

MOV R1,#DPCNT

MOV R7,#5

MOV A,#10

MOV R0,#DPBUF

LOP: MOV @R0,A

INC R0

DJNZ R7,LOP

MOV @R0,#00H

INC R0

MOV @R0,#00H

INC R0

MOV @R0,#00H

MOV TMOD,#01H

MOV TH0,#(65536-4000)/256

MOV TL0,#(65536-4000) MOD 256

SETB TR0

SETB ET0

SETB EA

WT: CLR ST

SETB ST

CLR ST

WAIT: JNB EOC,WAIT

SETB OE

MOV GDATA,P0

CLR OE

MOV A,GDATA

MOV B,#100

DIV AB

MOV 33H,A

MOV A,B

MOV B,#10

DIV AB

MOV 34H,A

MOV 35H,B

SJMP WT

T0X: NOP

MOV TH0,#(65536-4000)/256

MOV TL0,#(65536-4000) MOD 256

MOV DPTR,#DPCD

MOV A,DPCNT

ADD A,#DPBUF

MOV R0,A

MOV A,@R0

MOVC A,@A+DPTR

MOV P1,A

MOV DPTR,#DPBT

MOV A,DPCNT

MOVC A,@A+DPTR

MOV P2,A

INC DPCNT

MOV A,DPCNT

CJNE A,#8,NEXT

MOV DPCNT,#00H

NEXT: RETI

DPCD: DB 3FH,06H,5BH,4FH,66H

DB 6DH,7DH,07H,7FH,6FH,00H

DPBT: DB 0FEH,0FDH,0FBH,0F7H

DB 0EFH,0DFH,0BFH,07FH

END

8. C语言源程序

#include 《AT89X52.H》

unsigned char code dispbitcode[]={0xfe,0xfd,0xfb,0xf7,

0xef,0xdf,0xbf,0x7f};

unsigned char code dispcode[]={0x3f,0x06,0x5b,0x4f,0x66,

0x6d,0x7d,0x07,0x7f,0x6f,0x00};

unsigned char dispbuf[8]={10,10,10,10,10,0,0,0};

unsigned char dispcount;

sbit ST=P3^0;

sbit OE=P3^1;

sbit EOC=P3^2;

unsigned char channel=0xbc;//IN3

unsigned char getdata;

void main(void)

{

TMOD=0x01;

TH0=(65536-4000)/256;

TL0=(65536-4000)%256;

TR0=1;

ET0=1;

EA=1;

P3=channel;

while(1)

{

ST=0;

ST=1;

ST=0;

while(EOC==0);

OE=1;

getdata=P0;

OE=0;

dispbuf[2]=getdata/100;

getdata=getdata%10;

dispbuf[1]=getdata/10;

dispbuf[0]=getdata%10;

}

}

void t0(void) interrupt 1 using 0

{

TH0=(65536-4000)/256;

TL0=(65536-4000)%256;

P1=dispcode[dispbuf[dispcount]];

P2=dispbitcode[dispcount];

dispcount++;

if(dispcount==8)

{

dispcount=0;

}

}

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • CMOS
    +关注

    关注

    58

    文章

    5144

    浏览量

    233273
  • 转换器
    +关注

    关注

    27

    文章

    8172

    浏览量

    141573
  • ADC0809
    +关注

    关注

    3

    文章

    140

    浏览量

    38346
收藏 人收藏

    评论

    相关推荐

    ADC0809AD转换器应用技术资料推荐

    ADC0809AD转换器应用技术资料下载内容主要介绍了:ADC0809的内部逻辑结构ADC0809的引脚功能ADC0809应用
    发表于 04-15 06:26

    怎样去使用ADC0809

    一、前言介绍使用ADC0809对一个模拟电压进行转换转换后的电压使用数码管显示出来二、ADC0809的介绍1、ADC0809简介
    发表于 11-17 07:12

    ADC0809模数转换器主要特性

    ADC0809更详细的参数说明可以查看它的芯片手册(英文原版)链接:文章目录1、ADC0809模数转换器主要特性:2、ADC0809外部特征
    发表于 12-02 08:24

    ADC0809是什么?ADC0809是如何工作的

    ADC0809是什么?ADC0809是如何工作的?如何去实现ADC0809的模数转换与显示呢?
    发表于 01-25 06:35

    ADC0809 A/D转换器基本应用技术

    ADC0809是带有8位A/D转换器、8路多路开关以及微处理机兼容的控制逻辑的CMOS组件。它是逐次逼近式A/D转换器,可以和单片机直接接口。
    发表于 01-08 09:12 227次下载

    adc0809外围电路

    adc0809外围电路 ADC0809 芯片性能特点: 是一个逐次逼近型的A/D 转换器,外部供给基准电压;单通道转换时间116us;分辨率为8 位,带有三态输出锁存器,
    发表于 12-25 11:30 3743次阅读
    <b class='flag-5'>adc0809</b>外围电路

    ADC0809接口电路

    8位A/D转换器芯片ADC0809ADC0809是CMOS单片型逐次逼近式A/D转换器ADC0809的主要特性:● 它是具有8路
    发表于 01-14 13:39 4572次阅读
    <b class='flag-5'>ADC0809</b>接口电路

    adc0809是什么

    ADC0809是美国国家半导体公司生产的CMOS工艺8通道,8位逐次逼近式A/D转换器
    发表于 05-25 08:22 3314次阅读

    adc0809中文资料下载 adc0809引脚图封装及应用电路

    本文为您介绍8通道多路复用AD转换器adc0809引脚图、封装图,adc0809应用电路图,并提供adc0809/adc0808中文资料英文
    发表于 09-23 15:28 2w次阅读

    adc0804和adc0809区别

    adc0809是八个单端输入,参考电压:5V, 即Vref=5V。 adc0804是一个差分输入,参考电压:2.5V,即Vref=2.5V。其它参数一样。ADC0804是单路的,ADC080
    发表于 11-12 10:02 2.5w次阅读

    模数转换器ADC0809引脚及内部框图_ADC0809数模转换与显示程序设计

    本文主要介绍了模数转换器ADC0809引脚及内部框图_单片机程序设计:ADC0809数模转换与显示。ADC0809是带有8位A/D
    发表于 01-05 17:35 2.5w次阅读
    模数<b class='flag-5'>转换器</b><b class='flag-5'>ADC0809</b>引脚及内部框图_<b class='flag-5'>ADC0809</b>数模<b class='flag-5'>转换</b>与显示程序设计

    ADC0809转换器的中文数据手册免费下载

    ADC0809 是CMOS 单片型逐次逼近式A/D 转换器,内部结构如图13.22 所示,它由8 路模拟开关、地址锁存与译码器、比较器、8位开关树型D/A 转换器、逐次逼近,寄存器、三态输出
    发表于 10-20 17:57 28次下载
    <b class='flag-5'>ADC0809</b><b class='flag-5'>转换器</b>的中文数据手册免费下载

    用状态机设计A_D转换器ADC0809的采样控制电路实验

    用状态机设计A_D转换器ADC0809的采样控制电路实验(通信电源技术期刊版面费)-用状态机设计A_D转换器ADC0809的采样控制电路.适合新手学习参考
    发表于 09-16 12:05 28次下载
    用状态机设计A_D<b class='flag-5'>转换器</b><b class='flag-5'>ADC0809</b>的采样控制电路实验

    ADC0809的使用

    一、前言介绍使用ADC0809对一个模拟电压进行转换转换后的电压使用数码管显示出来二、ADC0809的介绍1、ADC0809简介
    发表于 11-10 13:06 52次下载
    <b class='flag-5'>ADC0809</b>的使用

    【单片机基础】ADC0809模数转换器详解

    【单片机基础】ADC0809模数转换器详解
    发表于 11-23 17:21 41次下载
    【单片机基础】<b class='flag-5'>ADC0809</b>模数<b class='flag-5'>转换器</b>详解