ADC0809和51单片机的多路数据采集系统设计方案
ADC0809_多路数据采集和控制系统设计

1.设计目的本设计包括确定控制任务、系统总体设计、硬件系统设计、软件程序的设计等,使学生进一步学习理解计算机控制系统的构成原理、接口电路与应用程序,巩固与综合专业基础知识和相关专业课程知识,提高学生运用理论知识解决实际问题的实践技能。
2. 设计内容设计一由微机控制的A/D数据采集和控制系统,该卡具有对八个通道上0-5V的模拟电压进行采集的能力,且可以用键盘选择装换通道,选择ADC0809作为A/D转换芯片。
并在显示器上动态显示采集的数据。
3. 设计要求(1)根据题目要求的指标,通过查阅有关资料,确定系统设计方案,并设计其硬件电路图。
(2)画出电路原理图,分析主要模块的功能及他们之间的数据传输和控制关系。
(3)用protel软件绘制电路原理图。
(4)软件设计,给出流程图及源代码并加注释。
4. 系统总体设计步骤第一步:信号调理电路第二步:8路模拟信号的产生与A/D转换器被测电压要求为0~5V的直流电压,可通过电位器调节产生。
考虑本设计的实际需要,我选择八位逐次比较式A/D转换器(ADC0809)。
第三步:发送端的数据采集与传输控制器第四步:人机通道的借口电路第五步:数据传输借口电路用单片机作为控制系统的核心,处理来之ADC0809的数据。
经处理后通过串口传送,由于系统功能简单,键盘仅由两个开关和一个外部中断组成,完成采样通道的选择,单片机通过接口芯片与LED数码显示器相连,驱动显示器相应同采集到的数据。
串行通信有同步和异步两种工作方式,同步方式传送速度快,但硬件复杂;异步通信对硬件要求较低,实现起来比较简单灵活,适用于数据的随机发送和接受。
采用MAX485芯片的转换接口。
经过分析,本系统数据采集部分核心采用ADC0809,单片机系统采用8051构成的最小系统,用LED动态显示采集到的数据,数据传送则选用RS-485标准,实现单片机与PC机的通信。
数据采集与传输系统一般由信号调理电路,多路开关,采样保持电路,A/D,单片机,电平转换接口,接收端(单片机、PC或其它设备)组成。
ADC0809与AT89C51的一种接口方法

ADC0809与AT89C51的一种接口方法一、本文概述本文将详细介绍ADC0809与AT89C51之间的一种接口方法。
ADC0809是一种常用的8位模数转换器,广泛应用于数据采集和处理系统中。
AT89C51则是一款经典的8位微控制器,以其稳定的性能和广泛的应用场景而受到工程师的青睐。
通过合理的接口设计,可以实现ADC0809与AT89C51之间的有效通信,从而实现对模拟信号的精确采集和控制。
本文将详细阐述接口电路的设计原理、连接方式、信号传输过程以及可能遇到的问题和解决方案,旨在为工程师提供一套实用的参考方案,促进ADC0809与AT89C51在各类应用中的高效集成。
二、ADC0809与AT89C51简介ADC0809是一种8位逐次逼近型模拟数字转换器(ADC)。
它可以将连续的模拟信号转换为离散的数字信号,以便于数字系统进行处理。
ADC0809具有8路模拟输入通道,可以独立地选择其中的一路进行模数转换。
转换结束后,转换结果会通过三态输出锁存器输出到数据总线上。
ADC0809还具有转换启动、转换结束以及清零等控制功能,可以通过相应的控制引脚实现。
由于其转换速度快、精度高等特点,ADC0809在嵌入式系统、工业自动化等领域有着广泛的应用。
AT89C51是Atmel公司生产的一种基于8051内核的低功耗、高性能CMOS 8位微控制器。
它采用Atmel公司的高密度、非易失性存储技术生产,与工业标准的80C51指令集和引脚兼容。
AT89C51具有4K字节的可在系统编程(ISP)Flash存储器,这意味着用户可以在不将芯片从系统中取出的情况下,对其进行重新编程。
AT89C51还集成了多种功能强大的外设,如两个16位定时/计数器、一个5向量两级中断结构、一个全双工串行通信口、一个片内振荡器和时钟电路等。
由于其强大的功能和灵活的编程能力,AT89C51在嵌入式系统、智能仪表、工业控制等领域得到了广泛的应用。
将ADC0809与AT89C51进行接口设计,可以实现模拟信号的数字化处理和控制功能。
51单片机数据采集系统

课程设计报告书设计任务书一、设计任务1一秒钟采集一次。
2把INO口采集的电压值放入30H单元中。
3做出原理图。
4画出流程图并写出所要运行的程序。
二、设计方案及工作原理方案: 1. 采用8051和ADC0809构成一个8通道数据采集系统。
2. 能够顺序采集各个通道的信号。
3. 采集信号的动态范围:0~5V。
4. 每个通道的采样速率:100 SPS。
5.在面包板上完成电路,将采样数据送入单片机20h~27h存储单元。
6.编写相应的单片机采集程序,到达规定的性能。
工作原理:通过一个A/D转换器循环采样模拟电压,每隔一定时间去采样一次,一次按顺序采样信号。
A/D转换器芯片AD0809将采样到的模拟信号转换为数字信号,转换完成后,CPU读取数据转换结果,并将结果送入外设即CRT/LED显示,显示电压路数和数据值。
目录第一章系统设计要求和解决方案第二章硬件系统第三章软件系统第四章实现的功能第五章缺点及可能的解决方法第六章心得体会附录一参考文献附录二硬件原理图附录三程序流程图第一章系统设计要求和解决方案根据系统基本要求,将本系统划分为如下几个部分:●信号调理电路●8路模拟信号的产生与A/D转换器●发送端的数据采集与传输控制器●人机通道的接口电路●数据传输接口电路数据采集与传输系统一般由信号调理电路,多路开关,采样保持电路,A/D,单片机,电平转换接口,接收端(单片机、PC或其它设备)组成。
系统框图如图1-1所示1.1 信号采集分析被测电压为0~5V 直流电压,可通过电位器调节产生。
1.1.1 信号采集多路数据采集系统多采用共享数据采集通道的结构形式。
数据采集方式选择程序控制数据采集。
程序控制数据采集,由硬件和软件两部分组成。
,据不同的采集需要,在程序存储器中,存放若干种信号采集程序,选择相应的采集程序进行采集工作,还可通过编新的程序,以满足不同采样任务的要求。
如图1-3所示。
程序控制数据采集的采样通道地址可随意选择,控制多路传输门开启的通道地址码由存储器中读出的指令确定。
基于51单片机和ADC0809的数据采集系统

基于51单片机和ADC0809的数据采集系统摘要:本文介绍了以51单片机为核心构成测控系统中,模拟电压采样及A/D转换方法。
同时也介绍了ADC0809转换芯片的内部结构、工作时序及使用方法,并给出了基于ADC0809构成的测控系统的硬件接口电路和软件编程。
关键字:单片机,电压测量,A/D转换,ADC0809Abstract:This article describes the core components of 51 MCU control system, the analog voltage sampling and A/D conversion method. Also introduce the ADC0809 converter chip's internal structure, timing and methods of work, and gives the control system based on ADC0809, including the hardware interface circuit and software programming.Key words: MCU,Voltage measurement, A/D conversion, ADC0809一、引言:以单片机为核心构成的测控系统,是单片机诸多应用中最为广泛的用途之一,虽然在如今的电子行业,单片机的集成度越来越高,但是了解基本的ADC0809转换芯片还是有必要的,从中也可以学习到AD转换的思想,以及实现方法。
二、系统组成图一为AD转换的系统框图。
其中模拟电压输入为VCC通过划线变阻器进行分压得到,模拟电压输入多路模拟开关LED显示采样/保持单片机处理AD转换图一进而输入至ADC0809的多路模拟开关的其中之一;在经过ADC0809内部结构的处理以及单片机的程序控制,最终实现AD转换。
LED显示电路由4为8段式的LED数码管显示电路,A/D转换电路由8位A/D转换器ADC0809及相关的外围电路组成。
51单片机使用ADC0809采样

void delayms( uint time )
{
unsigned int j=0;
for(;time>0;time--)
{
for(j=0;j<125;j++);
}
}
/************************************************************ //功能:实现将 AD 的值在数码管和 LED 灯上显示出来;
{ *ad=520;
//开始转换;
delayms(1);
xdp=0x8888; P1=*xdp; temp=*xdp;
//读外部 ADC; //使用 P1 口显示;//将转换Fra bibliotek的数给 temp;
a=temp/100; b=temp%100; c=b/10; d=b%10;
//百位;
//十位; //个位;
//入口参数:无 //出口参数:无
************************************************************/
void main ()
{
unsigned char temp,a,b,c,d;
ad=0x8000;
//ad 指向 IN0 通道;
while(1)
temp=ADdata[a]; //当前显示的段码;
xp=0x9004;
//数码管的地址;
*xp=temp;
//段码写入数码管:
temp=ADen[0]; //当前显示的位码; xp=0x9002; //数码管地址; *xp=temp; //位码写入数码管;
delayms(1);
temp=ADdata[c]; //当前显示的段码;
51单片机加CPLD驱动ADC0809的多路数据采集系统

信号,从Po送出的data为其提供ADDR通道选择地址。
例如启动ADCl.关键代码为:
MOV A#01H
MOvDPPR#addr//此处addr与地址分配有关
MOVX@DPTRA
对应C51代码为:
unsigned char xdata ADC_aL
0xt234;//定义ADC
堑叠
囤2 A[1C,OS09启动转换
P0
_4.输入按键输出显示电路一■
片机P3
4、P3
_-≥二¨=I
口为数据总线.要接ADC0809数据输出端D.同时 POIq低3bit接通道选择地址A、B、C.而其它控制信 号需要通过CPLD实现时序的匹配.其中ADC0809时 钟CLK由MCU ALE信号经CPLD8分频后提供。 CPLD内部电路如图8所示.MCU ALE经过8分 频(22 1184M/6/8=460K)adc clk做ADC0809的时 钟CLK,译码地址Y0与WR或非后做adc stad(接 ADC0809的ALE和START).Y0与RD或非后做
ADc=CH
Ⅳ外∞中断0目n化
IT0=1WT&镕触&
本篇结合具体AD0809器件与MCU的接1:3设
计,详细分析了ADC0809的控制时序图,设计了满足
t/外部中断自敬
void exIjnl。(voidlinterrupt0 using
ADC0809接口需要的硬件电路,整合Mini51板上按键、 数码管资源,通过CPLD内部电路设计.实现MCU对
_麓:__曼≥j
ADC0809启动受START、ALE和ADDR信号控制
详细解读程序代码,给出完整设计方案。
ADC0809是8位A/D转换器、8路多路开关以及 徽处理机兼容的控制逻辑的CMOS组件。它是透次逼 近式A/D转换器.容易和单片机总线模式接13。圈1 是ADC0809芯片的实物图和引脚图。 IN0一IN7:8路模拟量输人:
ADC0809与51单片机接口电路及应用程序

ADC0809与51单片机接口电路及应用程序最近研究了下ADC0809这个芯片,做了个电路,和大家分享电路原理图如下:500)this.width=500;" border=0>说明:D0~D7接51单片机的P2口(P2.0~P2.7)ADIN1和ADIN2为通道IN0和IN1的电压模拟量输入(0~5V)应用程序如下:#include"reg52.h"#define uchar unsigned charsbit ST=P1^0;sbit EOC=P1^1;sbit OE=P1^2;sbit CLK=P1^3;sbit ADDCS=P1^4;uchar AD_DATA[2]; //保存IN0和IN1经AD转换后的数据/**********延时函数************/void delay(uchar i){uchar j;while(i--){for(j=125;j>0;j--);}}/*********系统初始化***********/void init(){EA = 1; //开总中断TMOD = 0x02; //设定定时器T0工作方式 TH0=216; //利用T0中断产生CLK信号 TL0=216;TR0=1; //启动定时器T0ET0=1;ST=0;OE=0;}/***********T0中断服务程序************/void t0(void) interrupt 1 using 0{CLK=~CLK;}/***********AD转换函数**********/void AD(){ST=0;ADDCS=0; //选择通道IN0delay(10);ST=1; //启动AD转换delay(10);ST=0;while(0==EOC);OE=1;AD_DATA[0]=P2;OE=0;ST=0;ADDCS=1; //选择通道IN1 delay(10);ST=1; //启动AD转换delay(10);ST=0;while(0==EOC);OE=1;AD_DATA[1]=P2;OE=0;}/*****************主函数**************/。
浅谈ADC0809在MCS-51单片机中的作用

浅谈ADC0809在MCS-51单片机中的作用[摘要] 由于在MCS-51单片机中大部分不带A/D转换器,所以模拟量的采集就必须靠A/D来实现。
因此我们有必要掌握用来采集模拟量的扩展芯片,以及我们要解决MCS-51单片机与这些扩展芯片的接口问题,在这里以ADC0809芯片为例,进行阐述说明。
[关键词] ADC0809 MCS-51 模拟量接口MCS-51系列单片机目前在工业控制以及仪器仪表中的应用越来越广泛,但在应用过程中,避免不了的是要与外围芯片进行对接,这就引出了新的问题,MCS-51单片机如何与外围的芯片有机的结合起来,以扩展其功能。
下面就以ADC0809芯片为例,进行说明。
一、ADC0809概述ADC0809模数转换器,ADC0809是8通道8位CMOS逐次逼近式A/D转换芯片,片内有模拟量通道选择开关及相应的通道锁存、译码电路,A/D转换后的数据由三态锁存器输出,由于片内没有时钟需外接时钟信号。
图(1)为该芯片的引脚图。
各引脚功能如下:IN0~IN7:八路模拟信号输入端。
ADD-A、ADD-B、ADD-C:三位地址码输入端。
八路模拟信号转换选择由这三个端口控制。
CLOCK:外部时钟输入端(小于1MHz)。
D0~D7:数字量输出端。
OE:A/D转换结果输出允许控制端。
当OE为高电平时,允许A/D转换结果从D0~D7端输出。
ALE:地址锁存允许信号输入端。
八路模拟通道地址由A、B、C输入,在ALE信号有效时将该八路地址锁存。
START:启动A/D转换信号输入端。
当START端输入一个正脉冲时,将进行A/D转换。
EOC:A/D转换结束信号输出端。
当A/D转换结束后,EOC输出高电平。
Vref(+)、Vref(-):正负基准电压输入端。
基准正电压的典型值为+5V。
VCC和GND:芯片的电源端和地端。
二、ADC0809的逻辑结构ADC0809 是8位逐次逼近型A/D转换器。
它由一个8路模拟开关、一个地址锁存译码器、一个A/D 转换器和一个三态输出锁存器组成,ADC0809内部逻辑结构如图(2)所示。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ADC0809和51单片机的多路数据采集系统设计方案“数据采集”是指将温度、压力、流量、位移等模拟物理量采集并转换成数字量后,再由计算机进行存储、处理、显示和打印的过程,相应的系统称为数据采集系统。
本文的主要任务是对0~5V的直流电压进行测量并送到远端的PC机上进行显示。
由于采集的是直流信号,对于缓慢变化的信号不必加采样保持电路,因此选用市面上比较常见的逐次逼近型ADC0809芯片,该芯片转换速度快,价格低廉,可以直接将直流电压转换为计算机可以处理的数字量。
同时选用低功耗的LCD显示器件来满足其在终端显示采集结果的需求。
终端键盘控制采用尽可能少的键来实现控制功能,为了防止键盘不用时的误操作,设计时还设置了锁键功能,在键盘的输入消抖方面,则采用软件消抖方法来降低硬件开销,提高系统的抗干扰能力。
软件设计方面则采用功能模块化的设计思想;键盘模数转换等采用中断方式来实现,从而大大提高了单片机的效率以及实时处理能力。
1 数据采集系统的硬件结构数据采集系统的硬件结构一般由信号调理电路、多路切换电路、采样保持电路、A/D转换器以及单片机等组成。
本文主要完成功能的系统硬件框图。
图1 数据采集系统硬件设计框图2 ADC0809模数转换器简介2.1 ADC0809的结构功能本数据采集系统采用计算机作为处理器。
电子计算机所处理和传输的都是不连续的数字信号,而实际中遇到的大都是连续变化的模拟量,模拟量经传感器转换成电信号后,需要模/数转换将其变成数字信号才可以输入到数字系统中进行处理和控制,因此,把模拟量转换成数字量输出的接口电路,即A/D转换器就是现实信号转换的桥梁。
目前,世界上有多种类型的A/D转换器,如并行比较型、逐次逼近型、积分型等。
本文采用逐次逼近型A/D转换器,该类A/D转换器转换精度高,速度快,价格适中,是目前种类最多,应用最广的A/D转换器。
逐次逼近型A/D转换器一般由比较器、D/A转换器、寄存器、时钟发生器以及控制逻辑电路组成。
ADC0809就是一种CMOS单片逐次逼近式A/D转换器,其内部结构。
该芯片由8路模拟开关、地址锁存与译码器、比较器、8位开关树型D/A转换器、逐次逼近寄存器、三态输出锁存器等电路组成。
因此,ADC0809可处理8路模拟量输入,且有三态输出能力。
该器件既可与各种微处理器相连,也可单独工作。
其输入输出与TTL兼容。
ADC0809是8路8位A/D转换器(即分辨率8位),具有转换起停控制端,转换时间为100μs 采用单+5V电源供电,模拟输入电压范围为0~+5V,且不需零点和满刻度校准,工作温度范围为-40~+85℃功耗可抵达约15mW。
ADC0809芯片有28条引脚,采用双列直插式封装,图3所示是其引脚排列图。
各引脚的功能如下:图3 ADC0809的引脚排列图IN0~IN7:8路模拟量输入端;D0~D7: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输入高电平时,ADC的输出三态门打开,转换结果的数字量可输出到数据总线。
A/D转换器的位数决定着信号采集的精度和分辨率。
对于8通道的输入信号,其分辨率为0.5%。
8位A/D转换器的精度为:2.2 ADC0809的工作时序图4所示是ADC0809的工作时序图。
从该时序图可以看出,地址锁存信号ALE在上升沿将三位通道地址锁存,相应通道的模拟量经过多路模拟开关送到A/D转换器。
启动信号START上升沿复位内部电路,START的下降沿启动转换,此时转换结束信号EOC呈低电平状态,由于逐位逼近需要一定过程,所以,在此期间,模拟输入量应维持不变,比较器要一次次比较,直到转换结束,此时变为高电平。
若CPU发出输出允许信号OE(输出允许为高电平),则可读出数据。
另外,ADC0809具有较高的转换速度和精度,同时受温度影响也较小。
2.3 ADC0809与MCS-51单片机的接口电路ADC0809与MCS-51系列单片机的接口电路。
图中,74LS373输出的低3位地址A2、A1、A0加到通道选择端A、B、C,可作为通道编码。
其通道基本地址为0000H~0007H。
8051的WR与P2.7经过或非门后,可接至ADC0809的START及ALE引脚。
8051的RD与P2.7经或非门后则接至ADC0809的OE端。
ADC0809的EOC经反相后接到8051单片机的P3.3(INT1)。
3 单片机与PC机的互连目前的串行通信接口标准都是在RS-232标准的基础上经过改进而形成的。
RS-323C标准是美国EIA(电子工业联合会)与BELL等公司一起开发通信协议。
它适合于数据传输速率在0~20000b/s范围内的通信。
这个标准对串行通信接口(如信号线功能、电器)特性都作了明确规定。
由于通行设备厂商都生产与RS-232C制式兼容的通信设备,因此,它作为一种标准,目前已在微机通信接口中广泛采用。
3.1 电气特性EIA-RS-232C对电器特性、逻辑电平和各种信号线功能都作了规定。
在TxD和RxD上,逻辑1(MARK)电平为-3V~-15V,逻辑0(SPACE)电平为+3~+15V;而在RTS、CTS、DSR、DTR和DCD等控制线上,信号有效(接通,ON状态,正电压)电压为+3V~+15V,信号无效(断开,OFF状态,负电压)电压为-3V~-15V。
以上规定说明了RS-323C标准对逻辑电平的定义。
对于数据(信息码):逻辑“1”(传号)的电平低于-3V,逻辑“0”(空号)的电平高于+3V;对于控制信号;接通状态(ON)即信号有效的电平高于+3V,断开状态(OFF)即信号无效的电平低于-3V,也就是说,当传输电平的绝对值大于3V时,电路才可以有效地检查出来,介于-3~+3V 之间的电压无意义。
低于-15V或高于+15V的电压也认为无意义,因此,实际工作时,应保证电平在±(3~15)V之间。
对于EIA-RS-232C与TTL的转换,由于EIARS-232C是用正负电压来表示逻辑状态,它与TTL以高低电平表示逻辑状态的规定不同。
因此,为了能够同计算机接口或与终端的TTL器件连接,就必须在EIA-RS-232C与TTL电路之间进行电平和逻辑关系的变换。
实现这种变换的方法可用分立元件,也可用集成电路芯片。
3.2 DB-9连接器DB-9连接器作为提供多功能I/O卡或主板上COM1和COM2两个串行接口的连接器。
它只提供异步通信的9个信号。
由于DB-9型连接器的引脚分配与DB-25型引脚信号完全不同。
因此,若要与配接DB-25型连接器的DCE设备进行连接,就必须使用专门的电缆线。
设计时对电缆长度的要求是在通信速率低于20kb/s时,RS-232C所直接连接的最大物理距离应为15m(50英尺)。
根据RS-232C标准规定,若不使用MODEM,在码元畸变小于4%的情况下,DTE和DCE之间的最大传输距离为15m(50英尺)。
由于这个最大距离是在码元畸变小于4%的前提下给出的。
因此,为了保证码元畸变小于4%的要求,本接口标准在电气特性中规定,驱动器的负载电容应小于2500pF。
3.3 单片机与MAX232的连接MAX232是一种双组驱动器/接收器,该芯片可完成TTL←→EIA双向电平转换。
其片内含有一个电容性电压发生器,可以在单+5V伏电压供电时提供EIA/TIA-232-E电平。
每个接收器都应将EIA/TIA-232-E 电平转换为5VTTL/CMOS电平。
这些接收器具有1.3V的典型门限值及0.5V的典型迟滞,而且可以接收30V输入。
每个驱动器都应将TTL/CMOS输入电平转换为EIA/TIA-232-E电平。
所有的驱动器,接收器及电压发生器都可以在德州仪器公司的元件库中得到标准单元。
MAX232的工作温度范围为0~70℃。
图6所示是MAX232芯片的工作电路图。
在实际应用中,该器件对电源的噪声很敏感。
图中的四个取同样数值的电解电容(1.0μF/16V),用以提高抗干扰能力。
本设计可从MAX232芯片中的两路发送接收器中选用一路作为接口,但设计时应注意发送与接收的对应。
4 结束语本文给出了一个基于AD0809和单片机的多路数据采集系统的硬件实现方法,该方法在终端采用8051单片机为核心来控制数据采集及数据上传工作,并通过A/D转换器将0~5V的直流电压转换为计算机可以进行处理的数字信号,然后经过单片机对其进行处理,从而完成在终端显示以及将数据上传等功能。
系统中的上位机完成对所采集的数据进行显示及对下位机的控制等功能。