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

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

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

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

资源描述

毕业设计论文1第1章绪论1.选题背景及意义:电压表已经有100多年的发展历史,虽然不断改进与完善,仍然无法满足现代电子测量的需求,近二十年,微电子技术,计算机技术,集成技术,网络技术等高新技术得到了迅猛发展。这一背景和形势,不断地向仪器仪表提出了更高、更新、更多的要求,如要求速度更快、灵敏度更高、稳定性更好、样品量更少、遥感遥测更远距、使用更方便、成本更低廉、无污染等。同时也为仪器仪表科技与产业的发展提供了强大的推动力,并成了仪器仪表进一步发展的物质、知识和技术基础。数字电压表(DigitalVoltmeter简称DVM)自1952年问世以来,显示出强大的生命力,现已成为在电子测量领域中应用最广泛的一种仪器。数字电压表可以显示清晰、直观,读数准确,准确度高,分辨力强,测量范围广,扩展能力强,测量速度快,输入阻抗高,集成度高,微功耗和抗干扰能力强等优点,独占电压表产品的熬头。DVM的高速发展,使它已成为实现测量自动化、提高工作效率不可缺少的仪表,数字化是当前计量仪器发展的主要方向之一,而高准度的DC-DVC的出现,又使DVM进入了精密标准测量领域。随着现代化技术的不断发展,数字电压表的功能和种类将越来越强,越来越多,其使用范围也会越来越广泛。采用智能化的数字仪器也将是必然的趋势,它们将不仅能提高测量准确度,而且能提高电测量技术的自动化程序,可以扩展成各种通用数字仪表、专用数字仪表及各种非电量的数字化仪表(如:温度计、湿度计、酸度计、重量、厚度仪等),几乎覆盖了电子电工测量、工业测量、自动化仪表等各个领域。从而提高计量检定人员的工作效。目前数字电压表的内部核心部件是A/D转换器,转换器的精度很大程度上影响着数字电压表的准确度,本设计A/D转换器采用ADC0808对输人模拟信号进行转换,控制核心AT89C51再对转换的结果进行运算和处理,最后驱动输出装置显示数字电压信号。毕业设计论文2第2章总体设计方案2.1系统设计主要分为两部分:硬件电路及软件程序。硬件电路包括:单片机及外围电路,A/D转换电路,数码管显示电路,各部分电路的衔接。软件的程序可采用C语言或汇编,这里采用汇编语言,详细的设计思路在后面介绍。2.2设计方案数字电压表的设计方案很多,但采用集成电路来设计较流行。其设计主要是由模拟电路和数字电路两大部分组成,模拟部分包括A/D转换器,数字部分包括振荡器,数码显示,复位电路。其中,A/D转换器将输入的模拟量转换成数字量,它是数字电压表的一个核心部件,对它的选择一般有两种选择方案:2.2.1AD的选择(1)采用双积分A/D转换器MC14433,它有多路调制的BCD码输出端和超量程输出端,采用动态扫描显示,便于实现自动控制。但芯片只能完成A/D转换功能,要实现显示功能还需配合其它驱动芯片等,使得整部分硬件电路板布线复杂,加重了电路设计和实际焊接的工作。(2)逐次逼近式A/D转换器。它的转换速度更快,而且精度更高,比如ADC0808、ADC0809等,它们通常具有8路模拟选通开关及地址译码、锁存电路等,它们可以与单片机系统连接,将数字量送单片机进行分析和显示。这样电路设计简单,电路板布线不复杂,便于焊接、调试。这里采用这种方案。选择ADC0808作为模数转换器件,AD转换器采用一路模拟量输入,能够测量0—5V直流电压。2.2.2显示部分显示部分可以采用各类数码管或用LCD显示器显示。这里电压采用4位一体的LED数码管显示,LED数码的段码输入,由并行端口P0产生:位码输入,用并行端口P2低四位产生。并且采用动态扫描的显示方式。2.2.3控制器件AT89C51功能性能:与MCS-51成品指令系统完全兼容;4KB可编程闪速存储器;寿命:1000次写/擦循环;数据保留时间:10年;全静态工作:0-24MHz;三级程序存储器锁定;128*8B内部RAM;32个可编程I/O口线;2个16位定时/计数器;5个中断源;可编程串行UART通道;片内震荡器和掉电模式[6]。所以选择AT89C51单片机为核心控制器件。其他在硬件设计部分介绍。2.2.4总体设计方案硬件电路设计由6个部分组成;A/D转换电路,AT89C51单片机系统,LED显示系统、时钟电路、复位电路以及测量电压输入电路。硬件电路设计框图如图1所示。毕业设计论文3图1数字电压表系统硬件设计框图时钟电路复位电路A/D转换电路测量电压输入显示系统AT89C51P1P2P2P0毕业设计论文4第3章硬件及详细设计3.1A/D转换模块3.1.1逐次逼近型A/D转换器原理逐次逼近型A/D转换器是由一个比较器、A/D转换器、存储器及控制电路组成。它利用内部的寄存器从高位到低位一次开始逐位试探比较。转换过程如下:开始时,寄存器各位清零,转换时,先将最高位置1,把数据送入A/D转换器转换,转换结果与输入的模拟量比较,如果转换的模拟量比输入的模拟量小,则1保留,如果转换的模拟量比输入的模拟量大,则1不保留,然后从第二位依次重复上述过程直至最低位,最后寄存器中的内容就是输入模拟量对应的二进制数字量[5]。3.1.2ADC0808主要特性ADC0808是CMOS单片型逐次逼近式A/D转换器,带有使能控制端,与微机直接接口,片内带有锁存功能的8路模拟多路开关,可以对8路0-5V输入模拟电压信号分时进行转换,由于ADC0808设计时考虑到若干种模/数变换技术的长处,所以该芯片非常适应于过程控制,微控制器输入通道的接口电路,智能仪器和机床控制等领域[5]。ADC0808主要特性:8路8位A/D转换器,即分辨率8位;具有锁存控制的8路模拟开关;易与各种微控制器接口;可锁存三态输出,输出与TTL兼容;转换时间:128μs;转换精度:0.2%;单个+5V电源供电;模拟输入电压范围0-+5V,无需外部零点和满度调整;低功耗,约15mW[6]。3.13ADC0808的外部引脚特征ADC0808芯片有28条引脚,采用双列直插式封装,其引脚图如图2所示。图2ADC0808引脚图下面说明各个引脚功能:IN0-IN7(8条):8路模拟量输入线,用于输入和控制被转换的模拟电压。毕业设计论文5地址输入控制(4条):ALE:地址锁存允许输入线,高电平有效,当ALE为高电平时,为地址输入线,用于选择IN0-IN7上那一条模拟电压送给比较器进行A/D转换。ADDA,ADDB,ADDC:3位地址输入线,用于选择8路模拟输入中的一路,其对应关系如表1所示:表1ADC0808通道选择表地址码对应的输入通道CBA000011110011001101010101IN0IN1IN2IN3IN4IN5IN6IN7START:START为“启动脉冲”输入法,该线上正脉冲由CPU送来,宽度应大于100ns,上升沿清零SAR,下降沿启动ADC工作。EOC:EOC为转换结束输出线,该线上高电平表示A/D转换已结束,数字量已锁入三态输出锁存器。D1-D8:数字量输出端,D1为高位。OE:OE为输出允许端,高电平能使D1-D8引脚上输出转换后的数字量。REF+、REF-:参考电压输入量,给电阻阶梯网络供给标准电压。Vcc、GND:Vcc为主电源输入端,GND为接地端,一般REF+与Vcc连接在一起,REF-与GND连接在一起.CLK:时钟输入端。3.2单片机系统3.2.1AT89C51性能AT89C51功能性能:与MCS-51成品指令系统完全兼容;4KB可编程闪速存储器;寿命:1000次写/擦循环;数据保留时间:10年;全静态工作:0-24MHz;三级程序存储器锁定;128*8B内部RAM;32个可编程I/O口线;2个16位定时/计数器;5个中断源;可编程串行UART通道;片内震荡器和掉电模式[6]。3.2.2AT89C51各引脚功能AT89C51提供以下标准功能:4KB的Flash闪速存储器,128B内部RAM,32个I/O口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内震荡器及时钟电路,同时,AT89C51可降至0Hz静态逻辑操作,毕业设计论文6并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作,掉电方式保存RAM中的内容,但震荡器停止工作并禁止其他所有工作直到下一个硬件复位。AT89C51采用PDIP封装形式,引脚配置如图3示[7]。图3AT89C51引脚图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口:这组引脚的第一功能和其余三个端口的第一功能相同,第二功能为控制功能,每个引脚并不完全相同,如下表2所示:表2P3口各位的第二功能P3口各位第二功能P3.0RXT(串行口输入)P3.1TXD(串行口输出)P3.2/INT0(外部中断0输入)P3.3/INT1(外部中断1输入)P3.4T0(定时器/计数器0的外部输入)毕业设计论文7P3.5T1(定时器/计数器1的外部输入)P3.6/WR(片外数据存储器写允许)P3.7/RD(片外数据存储器读允许)Vcc为+5V电源线,Vss接地。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.3复位电路和时钟电路3.3.1复位电路设计单片机在启动运行时都需要复位,使CPU和系统中的其他部件都处于一个确定的初始状态,并从这个状态开始工作。MCS-51单片机有一个复位引脚RST,采用施密特触发输入。当震荡器起振后,只要该引脚上出现2个机器周期以上的高电平即可确保时器件复位[1]。复位完成后,如果RST端继续保持高电平,MCS-51就一直处于复位状态,只要RST恢复低电平后,单片机才能进入其他工作状态。单片机的复位方式有上电自动复位和手动复位两种,图4是C51系列单片机统常用的上电复位和手动复位组合电路,只要Vcc上升时间不超过1ms,它们都能很好的工作[1]。图4复位电路3.3.2时钟电路设计单片机中CPU每执行一条指令,都必须在统一的时钟脉冲的控制下严格按时间节拍进行,而这个时钟脉冲是单片机控制中的时序电路发出的。CPU执行一条指令的各个微操作所对应时间顺序

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

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

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

×
保存成功