- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
xx科技大学
单片机课程设计
题目: 数字电压表
学院: 信息学院
专业: 电子信息工程
班级: 一班
学号:
姓名:
指导老师:
任务书
题目 数字电压表设计 时间安排 17 、18周 目的:
用8031单片机和ADC0809构成数字电压表,测量0-5V的电压,将所测的电压用数码管动态的显示出来。
要求:
设计方案描述
硬件原理图
基本原理说明
程序流程框图
原程序清单
心得体会
总体方案实现:
A/D转换模块显示模块
指导教师评语:
评分等级:( )
指导教师签名:
本次课程设计基于AT8951单片机的一种输入电压测量电路,该电路采用ADC0809作为A/D转换元件,测量范围0至5伏,小数点后位。要求能够。使用
本系统主要包括模块:数据采集模块、控制模块、显示模块、A/D转换模块。绘制电路原理图与,并调试,最终设计完成了该系统的硬件电路。在软件编程上,采用了语言进行编程,开发环境使用开发环境。开发了显示模块程序、通道切换程序、A/D转换程序。
数字电压表的系统工作原理:首先,被测电压信号进入A/D转换器,单片机中控制信号线发出控制信号,启动A/D转换器进行转换,其采样得到的数字信号数据在相应的码制转换模块中转换为显示代码。最后发出显示控制与驱动信号,驱动外部的数码管显示相应的数据。图6.1所示为DVM的基本组成框图,需指出的是,图中将DVM分成模拟和数字两大部分,从框图上看,A/D转换器包含在模拟部分,这样划分并不严格,因为A/D转换器本身具有数字电路的性质,特别是大规模集成化A/D转换器是模拟与数字两系统相互结合的,就连逻辑控制也集成在其中。
软硬件调试
软件调试的任务是利用开发工具进行调试,发现和纠正程序的错误,同时也能发现硬件的故障。软件调试是一个模块接一个模块进行的。首先单独调试各子程序是否能够按照预期的功能,接口电路的控制是否正常。最后调试整个程序。尤其注意的是各模块间能否正确的传递参数。
1. 检查数码管显示模块程序。观察数码管上是否能够显示相应的字符。
2. 检查A/D转换模块程序。可以在硬件电路的输入端输入已知的几个电压,分别观察数码管上是否显示相应的电压值。
3. 检查数据的转换模块程序。
程序可分为数据采集系统、数据转换系统、显示系统,这三部分先独立测试,然后整体调试。
①数据采集系统:因为ADC0809本身并没有内部时钟,需要外部时钟来提供工作的时钟频率。
②显示系统的调试:8279具有锁存功能,因此,当开关关闭后,应将8279的显示清除,在设计中,通过程序:
else
{
C8279=0x90;
for(i=0;i3;i++)
D8279=0;
}
来把数码管全灭。
另外,发现四位数码管显示的亮度不一样,后来经过调整各位数码管显示的间隔,调用延时函数解决了亮度不一的问题。
③整体测试:把三部分进行程序联调,编译程序,看是否存在错误。经过多次的尝试与查找相资料,最后做出并完善了整体的方案。
4.系统进一步改进方案 为进一步提稳定性,去除显示时的数据抖动现象,建议编写一个滤波函数,对数据进行挑选排序,取平均值。
设计思路
本系统主要包括模块: A/D转换模块控制模块、显示模块。
4-2 ADCC采样电路
控制模块
本系统采用的控制芯片为ATMEL公司的AT89S52单片机。AT89S52是一种低功耗、高性能CMOS 8位微控制器,具有8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52在众多嵌入式控制应用系统中得到广泛应用。控制模块电路模块如图4-3所示。
图4-3 控制模块
总体原理图
程序框架
ADC0809的分辨率为8位,当输入电压为0~5时,对应的数字量为00H~FFH,而显示范围为0.00~5.00,故显示前应进行标度变换,即将00H~FFH的变化转换为0.00~5.00的变化范围。对于该数字电压表的程序设计思路为:
初始化8279和ADC0809,设定好工作方式。
启动8279和ADC0809。
数据采集和传送。
数据标度的转化。由于要求精确到小数点后2位,因此应将采集到的数进行如下转化:value*500/256。
数值的分解。
显示数据。
文档评论(0)