课程设计---基于ADC0809的数字电压表设计 下载本文

内容发布更新时间 : 2024/5/20 3:08:57星期一 下面是文章的全部内容请认真阅读。

基于ADC0809的数字电压表设计

摘 要

本电路以ADC0809和AT89S51为核心,该系统有四个模块:数据采集模块、控制模块、显示模块、A/D转换模块,设计中采用ADC0809进行摸数转换,利用MCS-51单片机进行数据的处理,显示模块采用LCD1602液晶显示器显示,采用独立式按键选择单路显示或者8路轮流显示。能够测量0-5V之间的直流电压值。读数据准确,测量方便。误差范围在-0.02~+0.02之间最小分辨率位0.019。硬件设计应用电子设计自动化工具,软件设计采用模块化编程方法。

关键词:简易数字电压表; AT89S51;ADC0809;LCD1602; 数据处理。

目 录

第1章 系统方案的选择与论证 ................................1 1.1 设计任务及要求 ...................................................1 1.1.1 任务 ..................................................................1 1.2 简易数字电压表基本方案 .....................................1 1.2.1 模块方案选择与论证 .........................................1 1.2.2 单片机方案选择和论证 ......................................1 1.2.3 A/D模数转换方案的选取 ....................................1 1.2.4 显示方案 ............................................................3 1.2.5 输入方案 ............................................................3 1.2.6 电源提供方案 .....................................................3 1.2.7 系统组成 ............................................................4 第2章 系统硬件设计与实现 ........................................5 2.1 简易数字电压表基本组成部分 ...............................5 2.2.1 电源电路 .............................................................5 2.2.2 复位电路 .............................................................5 2.2.3 时钟电路 .............................................................6 2.2.4 按键控制 .............................................................6 2.2.5 LCD1602 ..............................................................8 2.2 电路原理图 ............................................................10 第3章 软件的设计 ......................................................11 3.1 程序流程图 ............................................................11

3.1.1主总流程图 ..........................................................11 3.1.2 主要子程序程序流程图 ...................................12 第4章仿真及调试 ........................................................18 4.1KEIL C51简介 ......................................................18 4.2PROTEUS ISIS简介 ...............................................18 4.3测试结果分析 ..........................................................21 第5章 总 结 ................................................................22 致谢 ...............................................................................23 参考文献 ........................................................................24 附 录 .............................................................................25 附录1 实物图 ............................................................25 附录2 元件清单 ............................................................26 附录3 主要程序 ............................................................27

第1章 系统方案的选择与论证

1.1 设计任务及要求

? 查阅相关的资料,了解电压表的的原理与应用;研究一个比较合理的设计方

案,并对其进行理论分析及方案论证。

? 对电压表原理进行理论分析、并进行方案论证; ? 进行方案设计、绘制电压表的电路原理图; ?

1.1.1 任务

本设计要求能够测量0~5V电压,通过A/D转换模块和单片机及显示器进行电压的测量与显示,具体要求如下: ? 用Protel软件绘制电路原理图;

? 下载程序,焊接元器件,实现数字电压表的功能,检测精度。 ? 撰写10000字以上的课程设计说明书。 1.2 简易数字电压表基本方案 1.2.1 模块方案选择与论证

本设计选择AT89C51单片机作为核心控制器件。A/D转换采用ADC0809实现。电压显示采用4位一体的LED数码管,LED数码管的段码输入由并行端口P2产生;位码输入由并行端口P3低四位产生[6]。

硬件电路设计由7个部分组成:主控模块AT89C51单片机系统,A/D转换电路,LED显示系统,LED驱动电路,复位电路,晶振电路以及测量电压输入电路。

1.2.2 单片机方案选择和论证 采用AT89C51,它是一个低电压,高性能CMOS8位单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

1.2.3 A/D模数转换方案的选取

采用ADC0809,它是是带有8:1多路模拟开关的8位A/D转换芯片,所以它可有8个模拟量的输入端,由芯片的A,B,C三个引脚来选择模拟通道中的一个。A,B,C三端分别与8051的P1.0~P1.2相接。地址锁存信号(ALE)和启动转换信号(START),由P2.7和/WR或非得到。输出允许,由P2.7和/RD或非得到。时钟信号,可有8051的ALE输出得到,不过当采用6M晶振时,应

该先进行二分频,以满足ADC0809的时钟信号必须小于640K的要求。 ADC0809参考资料: 1. 芯片管脚图:

图1 ADC0809管脚图

ADCADC0809模数转换器的引脚功能 IN0~IN7:8路模拟量输入。

A、B、C:3位地址输入,2个地址输入端的不同组合选择八路模拟量输入。 ALE:地址锁存启动信号,在ALE的上升沿,将A、B、C上的通道地址锁存到内部的地址锁存器。

D0~D7:八位数据输出线,A/D转换结果由这8根线传送给单片机。

OE:允许输出信号。当OE=1时,即为高电平,允许输出锁存器输出数据。 START:启动信号输入端,START为正脉冲,其上升沿清除ADC0808的内部的各寄存器,其下降沿启动A/D开始转换。

EOC:转换完成信号,当EOC上升为高电平时,表明内部A/D转换已完成。 CLK:时钟输入信号,0809的时钟频率范围在10~1200kHz,典型值为640kHz。