万年历基于51单片机的电子日历的设计

日历转换  时间:2021-02-12  阅读:()

淮安信息职业技术学院

学生姓名

学 号

院 系 电子工程学院

专 业 应用电子技术

班 级

指导教师

顾问教师

二〇一二年六月

摘 要

电子万年历是实现对年、月、 日、时、分、秒数字显示的计时装置广泛用于个人家庭、车站、码头、办公室、银行大厅等场所是人们日常生活中的必需品。

本文通过对基于单片机实现万年历功能的电子日历的设计介绍了AT89S52单片机的多功能电子万年历的硬件结构和软硬件的设计、使用方法。

系统以AT89S52单片机为主控制模块 以串行时钟日历芯片DS1302记录日历和时间它可以对年、月、 日、时、分、秒进行计时还具有闰年补偿、时间校准等多种功能。万年历采用直观的数字显示可以在LCD上同时显示年、月、日、星期、时、分、秒。更有按键电路模块与之相结合不仅能实现时钟日历显示的功能并可进行调整使用更便捷、直接。

万年历具有读取方便、显示直观、功能多样、 电路简洁、成本低廉等诸多优点具有广阔的市场前景。

关键词万年历 单片机 AT89S52 DS1302

目 录

摘 要..........................................................................................................................I

第一章绪论...................................................................................................................1

1.1课题研究的意义. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1

1.2本课题主要的研究工作. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1

1.3本课题主要解决的内容. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1

1.4论文主要章节安排. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2

1.5本章小结. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2

第二章方案论证...........................................................................................................3

2.1设计要求. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3

2.2单片机芯片的选择方案和论证. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3

2.3显示模块的选择方案和论证. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3

2.4时钟芯片的选择方案和论证. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4

2.5电路设计最终方案. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4

第三章系统的硬件设计与实现...................................................................................5

3.1电路总体设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5

3.2主控模块的设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5

3.2.1 AT89S52的内部结构及各引脚功能. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5

3.2.2单片机最小系统设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7

3.3时钟模块设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7

3.4显示模块设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9

3.5键盘模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10

第四章系统的软件设计.............................................................................................11

4.1主程序设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11

4.2万年历优化算法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12

4.3阳历与星期的换算方法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13

4.4万年历工作的简易流程图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14

第五章PROTEUS软件仿真.....................................................................................15

5.1 PROTEUS ISIS简介. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15

5.2 PROTEUS运行流程. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15

5.3 PROTEUS功能仿真. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15

5.4本章小结. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18

第六章测试与结果分析.............................................................................................19

6.1硬件测试. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19

6.2软件测试. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19

6.3测试结果分析与结论. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19

第七章总结与展望.....................................................................................................21

7.1总结. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21

7.2展望. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21

致 谢...........................................................................................................................23

参考文献.......................................................................................................................25

附录1系统电路图.....................................................................................................27

附录2系统程序..........................................................................................................28

第一章绪论

1.1课题研究的意义

万年历是我国古代传说中最古老的一部太阳历。为纪念历法编撰者万年功绩便将这部历法命名为“万年历” 。而现在所使用的万年历实际上就是记录一定时间范围内 比如100年或更多的具体阳历或阴历的日期的年历方便有需要的人查询使用与原始历法并无直接联系。

随着微电子技术的高速发展人类用于计时的工具也在不断发展更新单片机技术的出现使得万年历有了新的发展方向。

单片机以其体积小、功能全、性价比高等诸多优点在工业控制、家用电器、通信设备、信息处理、尖端武器等各种测控领域的应用中独占鳌头单片机开发技术已成为电子信息、 电气、通信、 自动化、机电一体化等专业技术人员必须掌握的技术。 目前世界上单片机年产量已达十多亿片通常是当年微处理器产量的4-5倍以上。用最少的芯片就能实现最强大的功能这是将来电子产品的主流方向它将无可置疑地一步步取代其它同类产品其数量之大和应用面之广是其它任何类型的计算机所无法比拟的。

本文采用单片机的万年历作为设计课题 因为它有很好的开放性和可发挥性对作者的要求比较高不仅考察了对单片机的掌握能力而且强调了对单片机扩展的应用。另外液晶显示的万年历已经越来越流行特别适合在家庭居室、办公室、大厅、会议室、车站和广场等地方使用它具有显示清晰直观、走时准确、可调整、进行夜视等功能。所以 电子万年历作为课题设计很有价值。

1.2本课题主要的研究工作

本论文主要研究基于单片机的万年历设计。当程序执行后 LCD显示年、月、日、时、分、秒和星期。

设计共设置4个操作键 K1选择修改键 K2上调键 K3下调键 K4确定键。

设计的主要内容有

1、 了解单片机技术的发展现状熟悉万年历个模块的工作原理

2、选择适当的芯片和元器件确定系统电路绘制电路原理图尤其是各接口电路

3、熟悉单片机使用方法和C语言的编程规则编写出相应模块的应用程序

4、分别在各自的模块中调试出相应的功能在Proteus软件上进行仿真。

1.3本课题主要解决的内容

本课题所研究的电子万年历是单片机控制技术的一个具体应用主要研究内容包括以下几个方面

1、选用电子万年历芯片时应重点考虑功能实在、使用方便、单片存储、低功耗、抗断电的器件。

2、根据选用的电子万年历芯片设计外围电路和单片机的接口电路。

3、在硬件设计时结构要尽量简单实用、易于实现使系统电路尽量简单。

4、根据设计的硬件电路编写控制AT89S51芯片的单片机程序。

5、通过编程、编译、调试把程序下载到Proteus上运行并实现本设计的功能。

6、在硬件电路和软件程序设计时主要考虑提高人机界面的友好性方便用户操作等因素。

7、软件设计时必须要有完善的思路要做到程序简单调试方便。

1.4论文主要章节安排

第一章绪论是介绍了基于STC89S52单片机的万年历研究意义重点阐述了本课题的研究内容和研究工作。

第二章主要介绍了设计要求和课题器件选择的论证方案。

第三章硬件基础中主要描述了万年历的各个模块的硬件设计方案并结合各个元器件和相应的硬件原理图进行分析最后展示为了实现研究目标所需要的全部硬件基础。

第四章软件基础主要罗列了实现万年历各个功能的C语言程序的流程图并分别对其进行了解释和分析最后把各个C语言子程序在巧妙结合在一起共同控制整个系统也就形成了实现研究目标所需要的所有软件基础。

第五章主要是对硬件和软件测试结果的分析以及得出的相关结论。

第六章主要对Keil软件、 Proteus软件进行简单介绍并给出了关于Proteus软件仿真调试万年历的过程。最后简要的介绍了硬件调试中的问题和解决办法。

第七章主要是对本次实验研究的总结提出本次实验的不足之处以及相应的改进方法 以便后人继续深入研究。

最后一部分是论文的附录它为论文的内容做了补充、解释 以便阅读时条理更清晰。

1.5本章小结

本章是论文的绪论部分着重介绍了万年历的研究意义。然后介绍了本文所要解决的实际问题及意义 以及要电子万年历系统要实现的功能和方法。最后简单地描述了本论文的整体框架和论文章节的安排。

第二章方案论证

2. 1设计要求

在电子日历设计中需具备的基本功能。

1能显示实时时钟、 日历

2允许误差 ±10秒/天

3可以通过按键设置调整时钟

4显示模式数码管或液晶显示

2. 2单片机芯片的选择方案和论证

方案一:

采用AT89C51芯片作为硬件核心采用Flash ROM 内部具有4KB ROM存储空间能于3V的超低压工作而且与MCS-51系列单片机完全兼容但是运用于电路设计中时由于不具备ISP在线编程技术 当在对电路进行调试时 由于程序的错误修改或对程序的新增功能需要导入程序时对芯片的多次拔插会对芯片造成一定的损坏。

方案二:

采用AT89S52片内ROM全都采用Flash ROM能以3V的超底压工作 同时也与MCS-51系列单片机完全该芯片内部存储器为8KB ROM存储空间 同样具有89C51的功能且具有在线编程可擦除技术 当在对电路进行调试时 由于程序的错误修改或对程序的新增功能需要导入程序时不需要对芯片多次拔插所以不会对芯片造成损坏。

根据主功能模块的各项功能、使用便捷程度、单片存储、低功耗、等原因选择采用AT89S52作为主控制系统。

2. 3显示模块的选择方案和论证

方案一

采用LED数码管动态扫描 LED数码管价格适中对于显示数字合适采用动态扫描法与单片机连接时虽然占用的单片机口线少但连线还需要花费一点时间所以也不用此种作为显示。

方案二

采用点阵式数码管显示 点阵式数码管是由八行八列的发光二极管组成对于显示文字比较适合如采用在显示数字显得太浪费且价格也相对较高所以也不用此种作为显示。

方案三

采用LCD液晶显示屏液晶显示屏的显示功能强大可显示大量文字、 图形等显示信息丰富。

RackNerd 黑色星期五5款年付套餐

RackNerd 商家从2019年上线以来争议也是比较大的,一直低价促销很多网友都认为坚持时间不长可能会跑路。不过,目前看到RackNerd还是在坚持且这次黑五活动也有发布,且活动促销也是比较多的,不过对于我们用户来说选择这些低价服务商尽量的不要将长远项目放在上面,低价年付套餐服务商一般都是用来临时业务的。RackNerd商家这次发布黑五促销活动,一共有五款年付套餐,涉及到多个机房。最低年付的套餐...

青果网络-618阿里云,腾讯云特惠优惠折上折!

官方网站:点击访问青果云官方网站活动方案:—————————–活动规则—————————1、选购活动产品并下单(先不要支付)2、联系我司在线客服修改价格或领取赠送时间3、确认价格已按活动政策修改正确后,支付订单,到此产品开设成功4、本活动产品可以升级,升级所需费用按产品原价计算若发生退款,按资源实际使用情况折算为产品原价再退还剩余余额! 美国洛杉矶CN2_GIACPU内存系统盘流量宽带i...

创梦网络-四川一手资源高防大带宽云服务器,物理机租用,机柜资源,自建防火墙,雅安最高单机700G防护,四川联通1G大带宽8.3W/年,无视UDP攻击,免费防CC

? ? ? ?创梦网络怎么样,创梦网络公司位于四川省达州市,属于四川本地企业,资质齐全,IDC/ISP均有,从创梦网络这边租的服务器均可以****,属于一手资源,高防机柜、大带宽、高防IP业务,另外创梦网络近期还会上线四川联通大带宽,四川联通高防IP,一手整CIP段,四川电信,联通高防机柜,CN2专线相关业务。成都优化线路,机柜租用、服务器云服务器租用,适合建站做游戏,不须要在套CDN,全国访问快...

日历转换为你推荐
找不到光驱为什么我的电脑光驱找不到?博客外链怎么用博客发外链?手机区号手机号码+86是移动区号还是联通的区号?显卡温度多少正常显卡温度多少算正常?不兼容软件和电脑不兼容会怎样?网易公开课怎么下载如何下载网易公开课硬盘人移动硬盘的优缺点qq怎么发邮件手机QQ怎么发邮件怎么升级ios6苹果iPhone6怎么升级系统bluestackbluestacks安卓模拟器有什么用
域名网 绍兴服务器租用 免费域名空间申请 电信服务器租赁 最新代理服务器ip 仿牌空间 美国翻墙 分销主机 rackspace 名片模板psd 京东云擎 lamp配置 html空间 linux空间 hostloc idc是什么 空间购买 备案空间 独立主机 日本代理ip 更多