《数字电压表的论》word版

《数字电压表的论》word版

ID:29043793

大小:354.54 KB

页数:13页

时间:2018-12-16

《数字电压表的论》word版_第1页
《数字电压表的论》word版_第2页
《数字电压表的论》word版_第3页
《数字电压表的论》word版_第4页
《数字电压表的论》word版_第5页
资源描述:

《《数字电压表的论》word版》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、目录一、设计方案的选择2(一)功能要求及设计目标2(二)系统设计方案2二、数字电压表系统设计4(一)硬件系统的设计41硬件原理框图42硬件系统设计原理4(二)软件系统设计51程序流程图52编写程序63用KEIL软件编译和生成hex文件94用protues进行仿真95仿真和调试10三、结论10参考文献1113数字电压表的设计摘要:本设计由A/D转换、数据处理及显示控制等组成,测量0~5V范围内的输入电压值,由4位共阳8段数码管扫描显示,最大分辨率0.1V,误差±0.05V。数字电压表的核心为AT89S52单片机和ADC0832A/D转换集成芯片。数字电压表(D

2、igitalVoltmeter)简称DVM,它是采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。传统的指针式电压表功能单一、精度低,不能满足数字化时代的需求,采用单片机的数字电压表,由精度高,抗干扰能力强,可扩展性强、集成方便,还可与PC进行实时通信。目前,由各种单片A/D转换器构成的数字电压表,已被广泛用于电子及电工测量、工业自动化仪表、自动测试系统等智能化测量领域,示出强大的生命力。于此同时,由DVM扩展而成的各种通用及专用数字仪器,也把电量及非电量测技术提高到崭新水平关键词:数字电压表;单片机;AT89S

3、52;ADC0832一、设计方案的选择(一)功能要求及设计目标采用AT89S52作MCU,ADC0809(或其他芯片)进行AD转换,测量电压的范围为直流0-5V电压,四位数码管显示。(设计并制作出实物为优)(二)系统设计方案AT89S52具有如下特点:40个引脚,8kBytesFlash片内程序存储器,256bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器AT89C52可以按照常规方法进行编程,也可以在线编程。

4、其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。13AT89S5与AT89c52相比,前者的性能比后者高,所以本设计采用AT89S52芯片。数模转换芯片:ADC0809是采样分辨率为8位的、以逐次逼近原理进行模—数转换的器件。其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换,转换时间为100μs。ADC0832为8位分辨率A/D转换芯片,其最高分辨可达256级,可以适应一般的模拟量转换要求。其内部电源输入与参考电压的复用,使得芯片的模拟电压输入在

5、0~5V之间。芯片转换时间仅为32μS,据有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强。由于ADC0832芯片的转换时间短,并且性能比较高,所以采用ADC0832作为数模转换芯片。1选择AT89S52作为控制芯片2选择ADC0832芯片来进行模数转换3选择GEM5461GE四位一体的共阳数码管来显示数字4用9012三极管来作为驱动电路,使GEM5461GE四位一体的共阳数码工作.5用SW1按键作为复位按键,实现复位电路的功能。13二、数字电压表系统设计(一)硬件系统的设计1硬件原理框图图2-1硬件原理框图2硬件系统设计原理硬件设计原理:

6、电阻R11上的电压经过ADC0832芯片进行模数转换后,由AT89S52芯片的P1口连接到驱动电路,当驱动电路工作使数码管显示前面转换过来的数字。复位电路和晶振电路的设计在接通电源后,当按下SW1后AT89S52不工作,使数码管全部变暗,当SW1一松开后AT89S52工作,数码管又变亮。晶振电路中的两个30pF的电容具有微调的作用。13图2-2系统设计原理图13(二)软件系统设计1程序流程图主程序1秒子程序调用ADC0832转换程序1秒到了图2-3程序流程图2编写程序#include #defineucharunsignedchar #in

7、clude codeucharTAB[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//定义数码管显示数值 ucharstr_TME[4]={0,0,0,0,};//定义数码管显示初始值 voiddelay(ucharms)//定义延迟程序 { uchari; while(ms--) for(i=0;i<125;i++); } uchartmel=0; ucharad_dat; bitsim=1; /***********************计数器中断函数,用于控制电压转

8、********************* ****

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。