基于AT89C51单片机的数字电压表设计

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

单片机课程设计报告基于at89c51的数字电压表设计设计课题:专业班级:学生姓名:指导教师:设计时间:基于AT89C51单片机数字电压表的设计基于AT89C51单片机的数字电压表设计摘要数字电压表是常用的对电子电路进行检测的较精密仪器之一。本文的设计思想是一种基于单片机的数字电压表设计方式。该设计主要由三个模块组成:A/D转换模块、数据处理主控模块和显示模块。A/D转换模块主要由芯片ADC0808来完成,它负责将采集到的模拟量转换为相应的数字量传送到数据处理模块(单片机)。数据处理主控模块由单片机AT89C51来完成,它负责将ADC0808传送过来的数字量经过一定的数据处理,产生相对应的显示码传送到显示模块进行显示。此外,它还控制芯片ADC0808的工作。经过仿真软件结果表明本设计中的电压表电路简单,所用元件较少,成本低且测量精度高。此电压表可以测量0—5V的模拟输入电压值,并通过一个四位一体的共阴数码管显示出来。关键词:数字电压表,单片机,A/D转换,AT89C51,ADC0808目录第1章绪论.........................................................1第2章系统整体设计思路及方案.......................................22.1设计题目....................................................22.2设计思路....................................................22.3设计方案....................................................2第3章数字电压表的硬件设计.........................................33.1单片机主控制模块的设计......................................33.1.1AT89C51性能简介.....................................33.1.2AT89C51各引脚功能...................................33.1.3AT89C51的复位电路和时钟电路.........................53.2A/D转换电路设计............................................63.2.1ADC0808的主要特性...................................73.2.2ADC0808各引脚功能...................................73.3显示电路的设计..............................................83.4总体电路设计...............................................10第4章数字电压表的软件设计........................................114.1设计流程图.................................................114.2各子程序简介...............................................12第5章软件调试....................................................125.1软件调试...................................................135.2误差分析...................................................13结论...............................................................15参考文献...........................................................16附录程序截图及解释................................................17基于AT89C51单片机数字电压表的设计1第1章绪论在电量的测量中,电压、电流和频率是最基本的三个被测量,其中电压量的测量最为经常。而且随着电子技术的发展,更是经常需要测量高精度的电压,所以数字电压表就成为一种必不可少的测量仪器。数字电压表(DigitalVoltmeter)简称DAM,它是采用数字化测量技术,把连续的模拟量转换成不连续、离散的数字形式并加以显示的仪表。传统的指针式电压表功能单一、精度低,不能满足数字化时代的需求,采用单片机的数字电压表,有精度高、抗干扰能力强、集成方便,还可与PC进行实时通信等优点。目前,由各种单片机和A/D转换器构成的数字电压表,已被广泛用于电子及电工测量、工业自动化仪表、自动测试系统等领域,显示出了它极强的生命力。与此同时,由DVM扩展而成的各种通用及专用数字仪表仪器,也把电量及非电量技术提高到崭新水平。新型数字电压表以其高准确度、高可靠性、高分辨率、高性价比等优良特性备受人们的青睐。本文是以简易数字直流电压表的设计为研究内容,本系统主要包括三大模块:转换模块、数据处理模块及显示模块。其中,A/D转换采用ADC0808对输入的模拟信号进行转换,控制核心AT89C51再对转换的结果进行运算处理,最后驱动输出装置LED显示数字电压信号。厦门工学院课程设计(论文)2第2章系统整体设计思路及方案2.1设计题目基于单片机AT89C51数字电压表的设计2.2设计思路(1)根据设计题目,选择AT89C51单片机为核心控制器件。(2)A/D转换采用ADC0808实现,连接单片机的P1口和P3口的四位引脚。(3)电压显示采用4位一体的LED数码管。(4)LED数码管的段码输入由端口P0产生;位码输入用端口P2产生。2.3设计方案本设计选择AT89C51单片机作为核心控制器件。A/D转换采用ADC0808来实现。输入采用0~5V的直流电压源,电压显示采用4位一体的LED数码管,LED数码管的段码输人由端口P0输出,位码输人由端口P2输出。硬件电路设计由6个部分组成:A/D转换电路,AT89C51单片机系统,LED显示系统、时钟电路、复位电路以及测量电压输入电路。硬件电路设计如图2-1所示。图2-1系统设计框图时钟电路复位电路A/D转换测量电压显示系统统AT89C51P1P3P0P2P1基于AT89C51单片机数字电压表的设计3第3章数字电压表的硬件设计3.1单片机主控制模块的设计3.1.1AT89C51性能简介AT89C51是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含有4KB的可反复擦写的只读程序存储器和128字节的随机存储器。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容,由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,它为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。AT89C51功能性能:与MCS-51成品指令系统完全兼容;4KB可编程闪速存储器;寿命:1000次写/擦循环;数据保留时间:10年;全静态工作:0-24MHz;三级程序存储器锁定;128*8B内部RAM;32个可编程I/O口线;2个16位定时/计数器;5个中断源;可编程串行UART通道;片内震荡器和掉电模式。3.1.2AT89C51各引脚功能AT89C51提供以下标准功能:4KB的Flash闪速存储器,128B内部RAM,32个I/O口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内震荡器及时钟电路,同时,AT89C51可降至0Hz静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作,掉电方式保存RAM中的内容,但震荡器停止工作并禁止其他所有工作直到下一个硬件复位。AT89C51采用PDIP封装形式,引脚配置如图3-1所示。厦门工学院课程设计(论文)4图3-1AT89C51引脚图AT89C51芯片的各引脚功能为:P0口:这组引脚共有8条,P0.0为最低位。这8个引脚有两种不同的功能,分别适用于不同的情况,第一种情况是89C51不带外存储器,P0口可以为通用I/O口使用,P0.0-P0.7用于传送CPU的输入/输出数据,这时输出数据可以得到锁存,不需要外接专用锁存器,输入数据可以得到缓冲,增加了数据输入的可靠性;第二种情况是89C51带片外存储器,P0.0-P0.7在CPU访问片外存储器时先传送片外存储器的低8位地址,然后传送CPU对片外存储器的读/写数据。P0口为开漏输出,在作为通用I/O使用时,需要在外部用电阻上拉。P1口:这8个引脚和P0口的8个引脚类似,P1.7为最高位,P1.0为最低位,当P1口作为通用I/O口使用时,P1.0-P1.7的功能和P0口的第一功能相同,也用于传送用户的输入和输出数据。P2口:这组引脚的第一功能与上述两组引脚的第一功能相同即它可以作为通用I/O口使用,它的第一功能和P0口引脚的第二功能相配合,用于输出片外存储器的高8位地址,共同选中片外存储器单元,但不像P0口那样传送存储器的读/写数据。P3口:这组引脚的第一功能和其余三个端口的第一功能相同,第二功能为控制功能,每个引脚并不完全相同,如下表3-1所示:基于AT89C51单片机数字电压表的设计5表3-1P3口各位的第二功能P3口各位第二功能P3.0RXT(串行口输入)P3.1TXD(串行口输出)P3.2/INT0(外部中断0输入)P3.3/INT1(外部中断1输入)P3.4T0(定时器/计数器0的外部输入)P3.5T1(定时器/计数器1的外部输入)P3.6/WR(片外数据存储器写允许)P3.7/RD(片外数据存储器读允许)Vcc为+5V电源线,GND接地。ALE:地址锁存允许线,配合P0口的第二功能使用,在访问外部存储器时,89C51的CPU在P0.0-P0.7引脚线去传送随后而来的片外存储器读/写数据。在不访问片外存储器时,89C51自动在ALE线上输出频率为1/6震荡器频率的脉冲序列。该脉冲序列可以作为外部时钟源或定时脉冲使用。EA:片外存储器访问选择线,可以控制89C51使用片内ROM或使用片外ROM,若EA=1,则允许使用片内ROM,若EA=0,则只使用片外ROM。PSEN:片外ROM的选通线,在访问片外ROM时,89C51自动在PSEN线上产生一个负脉冲,作为片外ROM芯片的读选通信号。RST:复位线,可以使89C51处于复位(即初始化)工作状态。通常89C51复位有自动上电复位和人工按键复位两种。XTAL1和XTAL2:片内震荡电路输入线,这两个端子用来外接石英晶体和微调电容,即用来连接89C51片内OSC(震荡器)的定时反馈回路。3.1.3AT89C51的复位电路和时钟电路单片机中CPU每执行一条指令,都必须在统一的时钟脉冲的控制下严格按时间节拍进行,而这个时钟脉冲是单片机控制中的时序电路发出的。CPU执行一条指令的各个微操作所对应时间顺序称为单片机的时序。MCS-51单片机芯片内部有一个高增益反相放大器,用于构成震荡器,XTAL1为该放大器的输入端,厦门工学院课程设计(论文)6XTAL2为该放大器输出端,但形成时钟电路还需附加其他电路。单片机AT89C51的时钟电路如图3-2所示,主要由电容C1-C3、电阻R1、晶振X1等组成。AT89C51的18脚(XTAL2)和19脚(XTAL1)接时钟电路,其中19脚是AT89C51内部振荡器倒相放大器的输入端,用于接外部晶振和微调电容的一端;18脚是AT89C

1 / 21
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功