单片机电压采集与显示

  • 格式:docx
  • 大小:345.30 KB
  • 文档页数:25

基于单片机的电压采集摘要: (2)关键词: (2)引言 (3)一、电路设计方案及原理说明 (4)1.1A DC0809 模数转换芯片 (5)1.2A T89C51 单片机 (9)1.34个共阳7 段数码管显示器 (10)1.4系统整体工作原理. (11)二、软件设计 (12)三、设计框图 (17)3.1 硬件总体框图 (17)3.2主程序流程图 (18)3.3待测信号源单元电路 (19)3.4A T89C51 单片机(如下图所示) (20)3.5单片机控制单元 (20)3.5.1 外部时钟电路 (20)3.5.2 复位电路 (20)3.5.3 ............................................. 数码管显示模块21四、实验仿真...................... 21 摘要:本设计待测的输入电压为8路,电压范围为0~5V,使用目前广泛使用的AT89C51来做控制系统,用ADC0809来进行模拟电压的采集及模数转换,实现采集8路数据,并将结果在四位一体数码管上进行显示。

该系统主要包括几大模块:数据采集模块、A/D转换模块、控制模块、显示模块。

显示部分由LED数码显示器构成。

该数字电压表具有电路简单,成本低等优点,可以方便地进8路A/D转换量的测量。

关键词:电压采集、ADC080、9 A/D转换、单片机89C51、数码管显示引言随着计算机技术的飞速发展和普及,数据采集系统在多个领域有着广泛的应用。

数据采集是工、农业控制系统中至关重要的一环,在医药、化工、食品、等领域的生产过程中,往往需要随时检测各生产环节的温度、湿度、流量及电压等参数。

同时,还要对某一检测点任意参数能够进行随机查寻,将其在某一时间段内检测得到的数据经过转换提取出来,以便进行比较,做出决策,调整控制方案,提高产品的合格率,产生良好的经济效益。

随着工、农业的发展,多路数据采集势必将得到越来越多的应用,为适应这一趋势,作这方面的研究就显得十分重要。

在科学研究中,运用数据采集系统可获得大量的动态信息,也是获取科学数据和生成知识的重要手段之一。

总之,不论在哪个应用领域中,数据采集与处理将直接影响工作效率和所取得的经济效益。

采集系统,从严格的意义上来说,应该是用计算机控制的多路数据自动检测或巡回检测,并且能够对数据实行存储、处理、分析计算以及从检测的数据中提取可用的信息,供显示、记录、打印或描绘的系统。

电压测量成为广大电子领域中必须掌握的过程,并且对测量的精度和采集功能的要求也越来越高,而电压的测量与显示系统甚为重要。

在课程设计中对一路电压采集系统与显示系统作了基本的研究。

电压采集与通信控制采用了模块化的设计,并用单片机8051 来实现,硬件部分是以单片机为核心,还包括模- 数转换模块,显示模块,和串行接口部分,还有一些简单的外围电路。

1 路被测电压通过通用ADC0809模- 数转换,实现对采集到的电压进行模拟量到数字量的转换,由单片机对数据进行处理,用数码管显示模块来显示所采集的结果,由相关控制器完成数据接收和显示,汇编程序编写了更加明了化数据显示界面。

本系统主要包括四大模块:数据采集模块、控制模块、显示模块、A/D 转换模块。

绘制电路原理图与工作流程图,并进行调试,最终设计完成了该系统的硬件电路。

在软件编程上,采用了汇编语言进行编程,开发环境使用相关集成开发环境。

开发了显示模块程序、A/D 转换程序。

一、电路设计方案及原理说明依据综合课程设计的要求,利用ADC0809设计一个单通道模拟电压采集显示电路,要求对所接通道变化的模拟电压值进行采集,采集来的数字量送至数码管指示出来,通过相关转换在数码管上精确显示出来。

本课程设计相当于测直流电压的大小,通过对电压值的采集与处理,而由所学微控制器的知识可知,可以利用单片机的模数转换来实现这一设计,进一步把相应的电压值精确显示出来。

模数转换就是利用单片机控制模数转换芯片(A/D), 让它对外部的一个模拟信号进行采样、量化、编码然后转化为一个离散的数字量,提供给控制器作进一步处理。

对于常用的A/D 转换芯片有ADC080、9 ADC0808等。

它们都是8 位的模数转换芯片,就是把模拟量转换为一个8 位的二进制数。

利用单片机AT89C51与ADC0809设计一个电压采集系统,将模拟信号(实际设计时采用0~5 V)之间的直流电压值转换成数字量信号0~FF,以数码管显示。

Proteus 软件启动仿真,当前输入电压为2.5 0V,转换成数字值为7FH,用鼠标指针调节电位器尺, 可改变输入模/数转换器ADC0809的电压,并通过虚拟电压表观察ADC0809模拟量输入信号的电压值,LED数码管实时显示相应的数值量。

此次电压表总体的方案就是用单片机的I/O 口输出信号来控制A/D启动转换,将送入的模拟量转换为一个8 位数字量,然后再通过I/O 口送回单片机内部进行处理,单片机进行一系列的运算和校准后,通过数码管将电压值显示出来。

而在方案的实现上由两部分组成:硬件部分和软件部分。

硬件即电子元器件的选择且将它们连接成一个可行的硬件系统,软件是硬件系统功能化的重要组成部分。

硬件的设计可以在Proteus 上进行,软件可以用Proteus 自带的汇编工具,然后在Proteus 将硬软件相结合,进行仿真,再根据结果不断对硬件进行改进,对软件进行调试,实现电压的采集与显示功能。

1.1A DC0809 模数转换芯片1. ADC0809是带有8 位A/D 转换器、8 路多路开关以及微处理机兼容的控制逻辑的CMOS组件。

它是逐次逼近式A/D 转换器,可以和单片机直接接口。

(1)ADC0809的内部逻辑结构由下图可知,ADC0809由一个8 路模拟开关、一个地址锁存与译码器、一个A/D 转换器和一个三态输出锁存器组成。

多路开关可选通8 个模拟通道,允许8 路模拟量分时输入,共用A/D 转换器进行转换。

三态输出锁器用于锁存A/D 转换完的数字量,当OE端为高电平时,才可以从三态输出锁存器取走转换完的数据。

(2).ADC0809引脚结构ADC0809各脚功能如下:D7-D0:8 位数字量输出引脚。

IN0-IN7 :8 位模拟量输入引脚。

VCC:+5V工作电压。

GND:地。

REF(+):参考电压正端。

REF(- ):参考电压负端。

START:A/D转换启动信号输入端。

ALE:地址锁存允许信号输入端。

(以上两种信号用于启动A/D 转换).EOC:转换结束信号输出引脚,开始转换时为低电平,当转换结束时为高电平。

OE:输出允许控制端,用以打开三态数据输出锁存器。

CLK:时钟信号输入端(一般为500KHz)。

A、B、C:地址输入线。

ADC0809 对输入模拟量要求:信号单极性,电压范围是0-5V,若信号太小,必须进行放大;输入的模拟量在转换过程中应该保持不变,如若模拟量变化太快,则需在输入前增加采样保持电路。

地址输入和控制线:4 条ALE 为地址锁存允许输入线,高电平有效。

当ALE线为高电平时,地址锁存与译码器将A,B,C三条地址线的地址信号进行锁存,经译码后被选中的通道的模拟量进入转换器进行转换。

A,B 和C为地址输入线,用于选通IN0-IN7 上的一路模拟量输入。

通道选择表如下表所示。

选择的通道IN0IN10 1 0 IN20 1 1 IN31 0 0 IN41 0 1 IN51 1 0 IN61 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为高电平,转换的数据就输出给单片机了。

1.2A T89C51 单片机ADC0809 与8051 单片机的硬件接口有3 种形式,分别是查询方式、中断方式和延时等待方式,本题中选用中断接口方式。

由于ADC0809无片内时钟,时钟信号可由单片机的ALE信号经D 触发器二分频后获得。

该题目中单片机时钟频率采用12MHz,则ALE输出的频率是2MHz,四分频后为500KHz,符合ADC0809对频率的要求。

由于ADC0809内部设有地址锁存器,所以通道地址由P0 口的低3 位直接与ADC0809的A、B、C 相连。

通道基本地址为0000H~0007H。

其对应关系上面已做介绍。

控制信号:将P2.7 作为片选信号,在启动A/D 转换时,由单片机的写信号和P2.7 控制ADC的地址锁存和启动转换。

由于ALE 和START连在一起,因此ADC0809在锁存通道地址的同时也启动转换。

在读取转换结果时,用单片机的P3.0 产生正脉冲作为OE信号,用来打开三态输出锁存器。

其接口电路如图1-2 所示。

图1-2 ADC0809 与AT89C51的接口当8051 通过对0000H~0007H(基本地址)中的某个口地址进行一次写操作,即可启动相应通道的A/D 转换;当转换结束后,ADC0809的EOC端向8051 发出中断申请信号;8051 通过对0000H~0007H中的某个口地址进行一次读操作,即可得到转换结果。

1.34 个共阳7 段数码管显示器共阳极7 段LED数码管和共阴极LED数码管结构类似,其引脚配置,如图所示。

从图中可以看出7段LED数码管同样由8个发光二极管组成,其中7 个发光二极管构成字形“ 8”,另一个发光二极管构成小数点。

共阳极7 段LED数码管的内部结构,如图所示。

其中所有发光二极管的阳极为公共端,接+5v 电压。

如果发光二极管的阴极为低电平的时候,发光二极管导通,该字段发光;反之,如果发光二极管的阴极为高电平的时候,发光二极管截止,该字段不发光共阳极7段LED引脚配置共阳极7 段LED结构图1.4系统整体工作原理1 硬件设计(1)系统构成该系统主要包括几大模块:数据采集模块、A/D转换模块、控制模块、显示模块、按键模块等。