简易数字电压表_第1页
简易数字电压表_第2页
简易数字电压表_第3页
简易数字电压表_第4页
简易数字电压表_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选文档单片机课程设计报告简易数字电压表一、设计任务与要求1.电压表的测量范围为0-5V;2.测量精度约为20mV。二、方案设计与论证方案一:选择MC14433A/D转换器、CD4511等元器件设计电路:方案二:用单片机设计电路:设计接受STC89C52单片机、A/D转换器ADC0809和共阴数码管为主要硬件,分析了数字电压表Proteus软件仿真电路设计及编程方法。将单片机应用于测量技术中,接受ADC0809将模拟信号转化为数字信号,用STC89C52实现数据的处理。通过数码管以扫描的方式完成显示。方案比较:方案1:3为半双积分式A/D转换器MC14433转换精度为读数的±0.05

2、%±1字,并能很便利地推断出是否超欠量程,以便于量程的自动切换功能的实现,其中集成了双积分式A/D转换器全部的CMOS模拟电路和数字电路。具有输入阻抗高,功耗低,电源电压范围宽,精度高等特点,并且具有自动校零和自动极性转换功能。缺点是工作速度低,且外围电路需配基准电源,短译码驱动器和位驱动器,电路较简单。方案2:设计电路简洁。易于把握,且性能稳定;单调试过程需要肯定的编程基础,可利用Proteus软件仿真电路设计和调试。Proteus软件是一种电路分析和实物模拟仿真软件。它运行于Windows操作系统上,可以进行仿真、分析(SPICE)各种模拟器件和集成电路,是集单片机和SPICE分

3、析于一身的仿真软件,功能强大,具有系统资源丰富、硬件投入少、形象直观等优点,因此可用此软件便利调试电路。经过以上两种方案的特点比较,方案二中的电路设计接受比较常见的元器件,对这种方案有肯定的专业基础,故接受其次种方案。三、单元电路设计与参数计算1A/D转换模块1.1ADC0809主要特性ADC0809是CMOS单片型逐次靠近式A/D转换器,带有使能把握端,与微机直接接口,片内带有锁存功能的8路模拟多路开关,可以对8路0-5V输入模拟电压信号分时进行转换,由于ADC0809设计时考虑到若干种模/数变换技术的特长,所以该芯片格外适应于过程把握,微把握器输入通道的接口电路,智能仪器和机床把握等领域。

4、ADC0809主要特性:8路8位A/D转换器,即辨别率8位;具有锁存把握的8路模拟开关;易与各种微把握器接口;可锁存三态输出,输出与TTL兼容;转换时间:128s;转换精度:0.2%;单个+5V电源供电;模拟输入电压范围0- +5V,无需外部零点和满度调整;低功耗,约15mW。1.2ADC0809的外部引脚特征 ADC0809芯片有28条引脚,接受双列直插式封装,其引脚图如图1所示。图1 ADC089引脚图下面说明各个引脚功能:IN0-IN7(8条):8路模拟量输入线,用于输入和把握被转换的模拟电压。地址输入把握(4条):ALE:地址锁存允许输入线,高电平有效,当ALE为高电平常,为地址输入线

5、,用于选择IN0-IN7上那一条模拟电压送给比较器进行A/D转换。ADDA,ADDB,ADDC:3位地址输入线,用于选择8路模拟输入中的一路,其对应关系如表1所示:表1 ADC0809通道选择表地址码 对应的输入通道 C B A 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 IN0 IN1 IN2 IN3 IN4 IN5 IN6 IN7 START:START为“启动脉冲”输入法,该线上正脉冲由CPU送来,宽度应大于100ns,上升沿清零SAR,下降沿启动ADC工作。EOC: EOC为转换结束输出线,该线上高电平表示A/D转换已结束,数字量已锁

6、入三态输出锁存器。D1-D8:数字量输出端,D1为高位。OE:OE为输出允许端,高电平能使D1-D8引脚上输出转换后的数字量。REF+、REF-:参考电压输入量,给电阻阶梯网络供应标准电压。Vcc、GND: Vcc为主电源输入端,GND为接地端,一般REF+与Vcc连接在一起,REF-与GND连接在一起. CLK:时钟输入端。1.3ADC0809的内部结构及工作流程ADC0809由8路模拟通道选择开关,地址锁存与译码器,比较器,8位开关树型A/D转换器,逐次靠近型寄存器,定时和把握电路和三态输出锁存器等组成,其内部结构如图2所示。图2 ADC0809的内部结构其中:(1)8路模拟通道选择开关实

7、现从8路输入模拟量中选择一路送给后面的比较器进行比较。(2)地址锁存与译码器用于当ALE信号有效时,锁存从ADDA、ADDB、ADDC 3根地址线上送来的3位地址,译码后产生通道选择信号,从8路模拟通道中选择当前模拟通道。(3)比较器,8位开关树型A/D转换器,逐次靠近型寄存器,定时和把握电路组成8位A/D转换器,当START信号有效时,就开头对当前通道的模拟信号进行转换,转换完成后,把转换得到的数字量送到8位三态锁存器,同时通过引脚送出转换结束信号。(4)三态输出锁存器保存当前模拟通道转换得到的数字量,当OE信号有效时,把转换的结果送出。ADC0809的工作流程为:(1)输入3位地址,并使A

8、LE=1,将地址存入地址锁存器中,经地址译码器从8路模拟通道中选通1路模拟量送给比较器。(2)送START一高脉冲,START的上升沿使逐次寄存器复位,下降沿启动A/D转换,并使EOC信号为低电平。(3)当转换结束时,转换的结果送入到输出三态锁存器中,并使EOC信号回到高电平,通知CPU已转换结束。(4)当CPU执行一读数据指令时,使OE为高电平,则从输出端D0-D7读出数据。2单片机系统2.1 STC89C52性能STC89C52是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含有8KB的可反复擦写的只读程序存储器和256字节的随机存储器。该器件接受ATMEL高密度非易失存储

9、器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容,由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的STC89C52是一种高效微把握器,它为很多嵌入式把握系统供应了一种机敏性高且价廉的方案。STC89C52功能性能:与MCS-51成品指令系统完全兼容;数据保留时间:10年;全静态工作:0-24MHz;三级程序存储器锁定;128*8B内部RAM;32个可编程I/O口线;2个16位定时/计数器;5个中断源;可编程串行UART通道;片内震荡器和掉电模式。 2.2 STC89C52各引脚功能STC89C52供应以下标准功能:4KB的Flash闪速存储器,128B内部RAM,

10、32个I/O口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内震荡器准时钟电路,同时,STC89C52可降至0Hz静态规律操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统连续工作,掉电方式保存RAM中的内容,但震荡器停止工作并禁止其他全部工作直到下一个硬件复位。STC89C52接受PDIP封装形式,引脚配置如图3所示。STC89C52芯片的各引脚功能为:P0口:这组引脚共有8条,P0.0为最低位。这8个引脚有两种不同的功能,分别适用于不同的状况,第一种状况是89C52不带外存储器,P0口可以为通用I

11、/O口使用,P0.0-P0.7用于传送CPU的输入/输出数据,这时输出数据可以得到锁存,不需要外接专用锁存器,输入数据可以得到缓冲,增加了数据输入的牢靠性;其次种状况是89C52带片外存储器,P0.0-P0.7在CPU访问片外存储器时先传送片外存储器的低8位地址,然后传送CPU对片外存储器的读/写数据。P0口为开漏输出,在作为通用I/O使用时,需要在外部用电阻上拉。图3 STC89C52的引脚图P1口:这8个引脚和P0口的8个引脚类似,P1.7为最高位,P1.0为最低位,当P1口作为通用I/O口使用时,P1.0-P1.7的功能和P0口的第一功能相同,也用于传送用户的输入和输出数据。P2口:这组

12、引脚的第一功能与上述两组引脚的第一功能相同即它可以作为通用I/O口使用,它的第一功能和P0口引脚的其次功能相协作,用于输出片外存储器的高8位地址,共同选中片外存储器单元,但并不是像P0口那样传送存储器的读/写数据。P3口:这组引脚的第一功能和其余三个端口的第一功能相同,其次功能为把握功能,每个引脚并不完全相同,如下表2所示:表2 P3口各位的其次功能P3口各位其次功能P3.0 RXT(串行口输入)P3.1 TXD(串行口输出)P3.2/INT0(外部中断0输入)P3.3/INT1(外部中断1输入)P3.4T0(定时器/计数器0的外部输入)P3.5T1(定时器/计数器1的外部输入)P3.6/WR

13、(片外数据存储器写允许) P3.7/RD(片外数据存储器读允许)Vcc为+5V电源线,Vss接地。ALE:地址锁存允许线,协作P0口的其次功能使用,在访问外部存储器时,89C52的CPU在P0.0-P0.7引脚线去传送随后而来的片外存储器读/写数据。在不访问片外存储器时,89C52自动在ALE线上输出频率为1/6震荡器频率的脉冲序列。该脉冲序列可以作为外部时钟源或定时脉冲使用。/EA:片外存储器访问选择线,可以把握89C52使用片内ROM或使用片外ROM,若/EA=1,则允许使用片内ROM, 若/EA=0,则只使用片外ROM。/PSEN:片外ROM的选通线,在访问片外ROM时,89C52自动在

14、/PSEN线上产生一个负脉冲,作为片外ROM芯片的读选通信号。RST:复位线,可以使89C52处于复位(即初始化)工作状态。通常89C52复位有自动上电复位和人工按键复位两种。XTAL1和XTAL2:片内震荡电路输入线,这两个端子用来外接石英晶体和微调电容,即用来连接89C52片内OSC(震荡器)的定时反馈回路。3复位电路和时钟电路3.1 复位电路设计单片机在启动运行时都需要复位,使CPU和系统中的其他部件都处于一个确定的初始状态,并从这个状态开头工作。MCS-52单片机有一个复位引脚RST,接受施密特触发输入。当震荡器起振后,只要该引脚上消灭2个机器周期以上的高电平即可确保时器件复位。复位完

15、成后,假如RST端连续保持高电平,MCS-52就始终处于复位状态,只要RST恢复低电平后,单片机才能进入其他工作状态。单片机的复位方式有上电自动复位和手动复位两种,图4是51系列单片机统常用的上电复位和手动复位组合电路,只要Vcc上升时间不超过1ms,它们都能很好的工作。图4 复位电路3.2 时钟电路设计单片机中CPU每执行一条指令,都必需在统一的时钟脉冲的把握下严格按时间节拍进行,而这个时钟脉冲是单片机把握中的时序电路发出的。CPU执行一条指令的各个微操作所对应时间挨次称为单片机的时序。MCS-52单片机芯片内部有一个高增益反相放大器,用于构成震荡器,XTAL1为该放大器的输入端,XTAL2

16、为该放大器输出端,但形成时钟电路还需附加其他电路。本设计系统接受内部时钟方式,利用单片机内部的高增益反相放大器,外部电路只需要一个晶振和2个电容即可,如图5所示。图5 振荡电路电路中的器件选择可以通过计算和试验确定,也可以参考一些典型电路的参数,电路中,电容器C1和C2对震荡频率有微调作用,通常的取值范围是30±10pF,在这个系统中选择了30pF;石英晶振选择范围最高可选24MHz,它打算了单片机电路产生的时钟信号震荡频率,在本系统中选择的是6MHz,因而时钟信号的震荡频率为6MHz。4 LED显示系统设计4.1 LED基本结构LED七段数码显示器由8个发光二极管组成显示字段,7个

17、长条形的发光二极管排列组合可用来显示各种数字。LED引脚排列如下图6所示:图6 LED引脚排列4.2 LED显示器的选择在本设计中,选择4位一体的数码型LED显示器,简称“4-LED”。本系统中前一位显示电压的整数位,后两位显示电压的小数位。4-LED显示器引脚如图7所示,是一个共阳极接法的4位LED数码显示管,其中a,b,c,e,f,g为4位LED各段的公共输出端,1、2、3、4分别是每一位的位数选端,dp是小数点引出端,4位一体LED数码显示管的内部结构是由4个单独的LED组成,每个LED的段输出引脚在内部都并联后,引出到器件的外部。图7 4位LED引脚4.3 LED译码方式译码方式是指由

18、显示字符转换得到对应的字段码的方式,对于LED数码管显示器,通常的译码方式有硬件译码和软件译码方式两种。硬件译码是指利用特地的硬件电路来实现显示字符码的转换。软件译码就是编写软件译码程序,通过译码程序来得到要显示的字符的字段码,译码程序通常为查表程序。本设计系统中为了简化硬件线路设计,LED译码接受软件编程来实现。由于本设计接受的是共阴极LED,其对应的字符和字段码如下表3所示。表3 共阴极字段码表显示字符共阴极字段码显示字符共阴极字段码03FH56DH106H67DH25BH707H34FH87FH466H96FH4.4 LED显示器与单片机接口设计由于单片机的并行口不能直接驱动LED显示器

19、,所以,在一般状况下,必需接受专用的驱动电路芯片,使之产生足够大的电流,显示器才能正常工作。假如驱动电路力量差,即负载力量不够时,显示器亮度就低,而且驱动电路长期在超负荷下运行简洁损坏,因此,LED显示器的驱动电路设计是一个格外重要的问题。为了简化数字式直流电压表的电路设计,在LED驱动电路的设计上,可以利用单片机P0口上外接的上拉电阻来实现,即将LED的A-G段显示引脚和DP小数点显示引脚并联到P0口与上拉电阻之间,这样,就可以加大P0口作为输出口德驱动力量,使得LED能依据正常的亮度显示出数字,如图8所示。图8 LED与单片机接口间的设计四、总原理图及元器件清单1总原理图图9数字电压表总原

20、理图2 元件清单表4数字电压表元件清单器件名称封装数量按键KEY21510AXIAL0.3810KAXIAL0.3110uFRB.1/.2112M晶振XTAL1130PRAD0.12STC89C52DIP40-1110UfRB.1/.21ADC0809DIP281四位一体共阴数码管CL3461AS15、 安装与调试1、 系统硬件调试在系统上电开头测量前,要用万用表的电压档对被测电压进行估测,然后以此选择适当的量程,防止过大电压烧坏A/D转换器。首先用万用表依据原理图逐步检查万能板中各器件的电源及个引脚的连接是否正确,有否短路、断路或者虚焊,尤其是给电路供电的电源部分要重点检查,用数字玩嫩恶搞万

21、用表测量输出端的电压是否为+5v,是否稳定。假如电压要求没有达到,要准时排查与解决,以免烧坏芯片和其他元器件。2、 系统软件调试软件调试的任务是利用开发工具在线仿真调试,发觉和订正程序的错误,同时也能发觉硬件的故障。软件调试是一个模块进行的。首先单独调试各模块程序是否能依据预期的功能,借口电路的把握是否正常,最终调试整个程序,尤其留意的是各模块间能否正确的传递参数。在一开头调试时,数码管的显示较不稳定,感觉较闪烁,数据变化不连贯,好像在跳变。经过反复思考发觉,因人眼的视觉暂留时间为0.1S,所以每位显示的间隔不必超过20MS,并保持延时一段时间,以造成视觉暂留效果。于是将程序的显示部分加以延时

22、。经再次调试可以显示比较稳定的数字串了。6、 性能测试与分析设计完成之后,调试过程可以利用对部分给定电压的测量结果分析来完成。首先要校准零点;将A/D转换器的模拟输入端口接地,即让电压为0V校准零点之后,就可以进行测试了。以下表5所示对系统进行测试并调整表5编号实际电压(V)显示电压(V)误差(%)054.9980.0414.334.2581.522.532.5681.732.372.283.741.861.822.2由于1K电位器是粗调电位器,在Proteus中电位器都调零了,但电位器本身就有肯定的电阻,就是说在挑零的状况下,还存在肯定的误差。所以误差是在所难免的,还有就是由于电源本身的缘由,在设计电路的时候,没有考虑到供应稳定电源的电源电路,所以供电电源没有能够供应稳定的5V电压,所以在测试的时候也有误差的。7、 结论与心得为期1个星期的课程设计已经结束,在这个星期的学习、设计过程中我感受颇深。使我对单片机的理论学问有了具体的生疏。通过这次设计,我的理论学问把握得更扎实,动手力量明显提高。同时,通过网上搜寻等多方面的查询资料,比如我们用的STC89C52芯片。通过本次课程设计我学到很多在书

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论