课程设计---基于ADC0809的数字电压表设计

  • 格式:doc
  • 大小:4.87 MB
  • 文档页数:18

基于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. 芯片管脚图: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 。

图1 ADC0809管脚图图3 ADC0809时序图1.2.4 显示方案显示部分采用共阳极七段数码管。

1.2.5 输入方案采用8位AD转换器ADC0809。

1.2.6 电源提供方案1.2.7 系统组成整个系统是由主控模块AT89C51单片机系统,A/D转换电路,LED显示系统,LED驱动电路,复位电路,晶振电路以及测量电压输入电路组成。

第二章:系统硬件设计与实现2.1 简易数字电压表基本组成部分简易数字电压表是由主控模块AT89C51单片机系统,A/D转换电路,LED 显示系统,LED驱动电路,复位电路,晶振电路以及测量电压输入电路这几部分组成。

2.2.1 电源电路2.2.2 复位电路就用单片机内部每个部件想要协调一致的工作,必须在同一口令——时钟信号的控制下工作。

单片机工作所需要的时钟信号有两种产生方式,即内部时钟方式和外部时钟方式。

内部时钟方式:单片机内部有一个构成振荡器的增益反相放大器,引脚XTAL1与XTAL2分别是此放大器的输入端和输出端,这个放大器与作为反馈元件的片外晶振一起构成自激振荡器。

2.2.3 时钟电路用AT89C51的复位电路,当单片机一上电,立即复位。

复位也是使单片机退出低功耗工作方式而进入正常状态的一种操作。

2.2.4 按键控制2.2.5 LCD1602工业字符型液晶,能够同时显示16x02即32个字符。

(16列2行)注:为了表示的方便,后文皆以1表示高电平,0表示低电平。

1602液晶也叫1602字符型液晶它是一种专门用来显示字母、数字、符号等的点阵型液晶模块它有若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符。

每位之间有一个点距的间隔每行之间也有间隔起到了字符间距和行间距的作用,正因为如此所以他不能显示图形(用自定义CGRAM,显示效果也不好)n1602LCD是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)。

n目前市面上字符液晶绝大多数是基于HD44780液晶芯片的,控制原理是完全相同的,因此基于HD44780写的控制程序可以很方便地应用于市面上大部分的字符型液晶。

管脚功能LCD1602引脚图1602采用标准的16脚接口,其中:第1脚:VSS为电源地第2脚:VDD接5V电源正极第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度)。

第4脚:RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。

第5脚:RW 为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。

第6脚:E(或EN)端为使能(enable)端。

第7~14脚:D0~D7为8位双向数据端。

第15~16脚:空脚或背灯电源。

15脚背光正极,16脚背光负极。

1602LCD的特性+5V电压,对比度可调内含复位电路提供各种控制命令,如:清屏、字符闪烁、光标闪烁、显示移位等多种功能有80字节显示数据存储器DDRAM 内建有192个5X7点阵的字型的字符发生器CGROM 8个可由用户自定义的5X7的字符发生器CGRAM1602LCD特征及应用微功耗、体积小、显示内容丰富、超薄轻巧,常用在袖珍式仪表和低功耗应用系统中。

2.2 电路原理图第三章软件的设计3.1 程序流程图3.1.1主总流程图3.1.2 主要子程序程序流程图第四章仿真及调试4.1KEIL C51简介支持8051微控制器体系结构的Keil开发工具,适合每个阶段的开发人员,不管是专业的应用工程师,还是刚学习嵌入式软件开发的学生。

产业标准的Keil C编译器、宏汇编器、调试器、实时内核、单板计算机和仿真器,支持所有的251系列微控制器,帮助你如期完成项目进度。

以下图表显示Keil的开发工具以及它们相互之间的接口。

KEIL C51开发工具旨在解决嵌入式软件开发商面临的复杂问题。

当你开始一个新项目,只需简单的从设备数据库选择使用的设备,uVision IDE将设置好所有的编译器、汇编器、链接器和存储器选项。

包含大量的例程,帮助你着手使用最流行的嵌入式8051设备。

Keil μVision调试器准确地模拟8051设备的片上外围设备(IC、CAN、UART、SPI、中断、I/O端口、A/D转换器、D/A转换器和PWM模块)。

模拟帮助你了解硬件配置,避免在安装问题上浪费时间。

此外,使用模拟器你可以在没有目标设备的情况下编写和测试应用程序。

当你准备在目标硬件上测试软件应用时,可以使用MON51、MON390、NONADI、或者FlashMON51目标监视器、ISD51 In-System调试器、ULINK USB-JTAG适配器在目标系统上下载并测试程序代码。

4.2PROTEUS ISIS简介Proteus ISIS是英国Labcenter公司开发的电路分析与实物仿真软件。

它运行于Windows操作系统上,可以仿真、分析(SPICE)各种模拟器件和集成电路,该软件的特点是:①实现了单片机仿真和SPICE电路仿真相结合。

具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、RS232动态仿真、I2C调试器、SPI调试器、键盘和LCD系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器等。

②支持主流单片机系统的仿真。

目前支持的单片机类型有:68000系列、8051系列、A VR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各种外围芯片。

③提供软件调试功能。

在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如Keil C51 uVision2等软件。