基于51单片机的电子万年历系统的设计.docVIP

基于51单片机的电子万年历系统的设计.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于51单片机的电子万年历系统的设计.doc

基于51单片机的电子万年历系统的设计   摘 要:人们在观测时间的时候,常常想知道当时的湿度、温度、日期、星期等与日常生活密切的信息。采用51单片机设计了一种计时准确、功能全面、成本低廉的万年历。该电子万年历通过定时中断和按键同时显示各种需要的信息,具有电路简单,显示直观、读取方便、功能多样的优点。   关键词:电子万年历;单片机;定时中断;温湿度   引言   电子万年历是一种应用非常广泛的日常计时工具,适合各类场合使用。LCD数字显示的日历钟显示清晰直观、走时准确、可以进行夜视,并且还可以扩展出多种功能。功能也越来越齐全,除了公历年月日、时分秒、还有星期、温湿度显示及闹铃。   1 总体设计要求   1.1 实现的功能   此万年历主要功能是显示:时、分、秒、年、月、日、星期、湿度、温度、闹钟功能、整点报时、农历、平闰年。   数字式温湿度计测温范围-40~80℃,湿度误差范围±3%RH用LCD液晶显示。   1.2 系统基本方案选择   KeilC51软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。KeilC51软件目标代码生成效率很高,大多数情况下生成的汇编语言代码都比较容易理解[1]。   1.3 硬件设计选定   本设计主控制系统采用AT89S52,独立按键控制;时钟电路由ds1302时钟电路提供;温湿度由DHT21数字式温湿度传感器采集;LCD1602液晶屏动态扫描作为显示。如图1所示。   2 系统的硬件设计与实现   2.1 单片机主控制模块的设计   主控制系统采用AT89S52,这是一种高性能、低功耗微控制器,具有8K的系统可编程Flash存储器。与工业80C51产品指令和引脚完全兼容。单片机的最小系统由单片机芯片、时钟电路、复位电路组成[2]。   2.2 计时芯片   计时芯片采用DS1302,这是一种高性能实时时钟电路[3],DS1302内部有一个31×8的用于临时性存放数据的RAM寄存器。如果采用单片机,还需要计数器,同时需要设置中断、查询等,消耗单片机资源,而采用DS1302时钟芯片,就不存在这些问题。   2.3 数字温湿度传感器DHT21   温湿度选择DHT21数字温湿度传感器,这是一种温湿度复合传感器,数字信号输出已经校准[4]。产品为4针单排引脚封装。采样周期不得低于最小值,否则会引起错误。   3 系统的软件设计   3.1 主程序及流程图   本设计实现功能所用程序主要包含数字温、湿度传感器DHT21读取数据子程序,液晶屏、计时芯片DS1302初始化程序、键盘按键等子程序和一个主程序。主程序首先执行时钟芯片和定时计数器T0、T1、T2的初始化程序,LCD1602液晶屏初始化子函数,通过时钟芯片DS1302进行精确计时,液晶屏显示年、月、日、星期、时、分、秒和温、湿度,然后通过无限循环进入键盘函数按键等待,不断查询按键状态及高温检测状态,温度若超过30摄氏度,蜂鸣器发出报警声响。通过按键子程序执行年、月、日及时钟设置,平、闰年查询,闹铃加减设置及开关,整点报时开关等子程序,执行效果通过液晶屏显示出来,设置完成后返回主程序。主程序如下所示,流程图如图2所示。   3.2 时间调整程序流程图   设置日期时间介绍:本设计通过时钟芯片DS1302控制计时,该芯片计时相对精确。可以节省单片机资源,具有闰年补偿作用。通过按键进入子程序实现设置时间等相关功能,当按下set(设置)键,时间计数会先暂停,温、湿度暂停读取更新值,等待设置完毕又开始正常工作。蜂鸣器会长响一次,显示年份位置会有光标闪烁,表示此时可以调节年份,如需调节年份,按add(加)键,dec(减)键即可对年份进行加一、减一调节。由于程序设置公历年份前两位为20,所以只能显示和调节21世纪的年份,年份调节完毕后,然后再按一次set(设置)键移位,显示月份位置会有光标闪烁,同样的方法可以调节月份,同上,再按set键分别可设置日、时、分、秒。设置时间是关联的,如星期会随着日期变化而改变,而当秒数加到60,分会自动加一。温度转换开始命令由温度转换子程序发出,本设计采用1s显示程序延时等待转换的完成。   3.3 温、湿度采集程序   首先清除收到数据,接着读取一次开始信号,这是由传感器数据用户主机(MCU)发送的。DHT21由低功耗模式转换到高速模式,主机开始信号结束后,DHT21送出40bit的数据,发送响应信号,并触发一次信号采集。从机的响应信号是一个80us左右的低电平。温湿度数据每隔2秒由主机读取一次,经过转换,通过LCD1602液晶屏显示。   4 指标测试   硬件焊接完成后要进行指标测试,检查错误,通过检查,手工焊接后接入电源,后用万用表检

文档评论(0)

lmother_lt + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档