模拟电压测量与显示 - 图文(2)

2019-08-30 12:06

第二章 总体设计 2.1 概述

一个完备的单片机应用系统包括硬件和软件两大部分,其中硬件部分包括扩展的存储器、键盘、显示、前向通道、后向通道、控制接口电路以及相关芯片的外围电路等,软件的功能就是指挥单片机按预定的功能要求进行操作的程序。一个单片机系统只要系统的软、硬件紧密配合,协调一致,这样才是高性能的单片机系统。

本课题所设计的模拟电压测量系统主要包括两部分:硬件电路及软件程序。而硬件电路采用 INTEL公司的80C51作为主处理器,系统主要由信号采集、 转换、A/D 数据处理输出、显示等几个功能模块组成。各部分电路的设计及原理将会在硬件电路设计部分详细介绍;程序的设计使用汇编语言编程,利用wave6000软件对其编译和仿真。硬件流程图如下: 80C51 ADC 单片机 0809 数据显示 模拟电压 转换

图 1.硬件流程图

被测直流电压由 A/D 转换单元采集后被量化,再由单片机对 A/D 转换的结果进行标度变换,得到被测电压的数值,通过单片机转换结果、把结果输出给显示驱动单元,驱动数码管显示。

2.2AD转换电路

利用ADC0808作为AD数据采样器件, ADC0808是CMOS单片型逐次逼近式A/D转换器它由8路模拟开关、地址锁存与译码器、比较器、8位开关树型D/A转换器、逐次逼近。ADC0808的工作过程是:首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。此地址经译码选通8路模拟输入之一到比较器。START上升沿将逐次逼近寄存器复位。下降沿启动 A/D转换,之后EOC输出信号变低,指示转换正在进行。直到A/D转换完成,EOC变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当OE输入高电平 时,输出三态门打开,转换结果的数字量输出到数据总线上。

ADC0808各个管教功能:

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:地。

2.3工作过程简介

数字化是将连续模拟的电压量经 A/D 转化后变为不连续的离散的数字量并加以显示。在设计过程中采用分模块设计,按照设计思路把电路分 A/D 转换、数据处理输出、驱动、显示四个单元,分别设计。 A/D 转换器选用的是八位模/数转换器 ADC0809。其次,计算机中的数字都是十六进制数,而我们习惯于十进制数的读写,因此,在软件设计中则要把十六进制数转换成十进制数。在显示的时候也是如此。本装置的输出用四位 LED 显示,因此在软件设计中还要解决数字输出与 LED 的接口问题。硬件则需要将输出线接到八段数码管上。 数值显示采用八段数码管,由单片机以动态扫描方式驱动。 可以看出 ADC0809 通过 IN0 采集电压信号并送给单片机,单片机将采集来的信号进行一定的处理然后通过串口扩展的共阴极 LED 数码管显示采集的电压值。 数码管显示是采用动态显示的原理, 要显示的数码通过单片机的数据总线发送给74HC374,而四个数码管的公共端分别接 74HC374的 Q1-Q7 接口, 因此要使哪个数码管显示就把相应的公共端口置零即可。比如: “1” 数字的字型码通过串口发送出来并经过74HC374译码加到了四个数码管上,如果其中一个引脚为“0”那么对应的数码管显示数 字“1” 。在此电路中电压值的四个数字分别通过串口依次的送出,对应的公共端也依次被置“0” ,由于两次置“0”的时间间隔很短,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位显示器并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感。因此给人的感 觉就是四个数码管同时的显示出电压值四个数字。 ADC0809 的 REF(-)接地,REF(+)接电源+5V,因此采集电压的范围是 0~ 5V,A/D 转换输出的结果 D0~D7 为 8 位二进制数。转换输出的结果在 0~255 之 间分别对应着 0~+5V 之间的 256 个电压值,因此单片机必须把 A/D 转换输出的 结果转换成可以显示的电压值。

2.4软件程序设计

开机后调用 A/D 转换子程序启动 AD 转换器,单片机等待查询转换结束信号,如果有信号则通过并行口读取转换数据并存储,再按上面的方法通过串行口把数据传输出,经译码在数码管显示。具体方法和程序见程序设计部分。

2.5小结

在电路设计和软件设计中都采用了分模块设计, 这种设计方法清晰的电路的功能,为设计和以后的调试和维修带来了极大的方便。特别是在软件设计中,这种方法曾强了程序的可移植性,为以后的功能扩展奠定了基础。

第三章 硬件设计及仿真 3.1 ADC0809

图2.0809引脚图

图3.0809实验箱接线图 3.2 80C51

图4.80C51引脚图

P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器。

P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL 门电流。

P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流, P3口写入“1”后,它们被内部上拉为高电平,并用作输入。

3.3 LED显示模块

本设计才懂动态扫描技术。数码管动态显示介面是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划\的同名端连在一起,另外为每个数码管的公共极COM增加位元选通控制电路,位元选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位元选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位元就显示出字形,没有选通的数码管就不会亮。

透过分时轮流控制各个LED数码管的COM端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位元数码管的点亮时间为1~2ms,由于人的视觉暂留现象及发光二极体的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示资料,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O口,而且功耗更低。

图5.LED实验仪接线图

LAB2000P实验仪提供了6位8段码LED显示电路,只要按地址输出相应的数据,就可以实现对显示器的控制。显示共有6位,用动态方式显示。8位段码、6位位码是由两片74LS374输出。位码经MC1413或ULN2003倒相驱动后,选择相应显示位。

实验仪中8位段码输出地址为0x004H,位码输出地址为0X002H。此处X是由KEY/LED CS决定,参见地址译码。做键盘和LED 实验时,需将KEY/LED CS接到相应的地址译码上,以便用相应的地址来访问。当KEY/LED CS接到CS0上,则段码地址为08004H,位码地址为08002H。

3.4仿真电路图


模拟电压测量与显示 - 图文(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:四十九团第二中学教师量化考核细则

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: