基于单片机的万历设计安工程设计_第1页
基于单片机的万历设计安工程设计_第2页
基于单片机的万历设计安工程设计_第3页
基于单片机的万历设计安工程设计_第4页
基于单片机的万历设计安工程设计_第5页
已阅读5页,还剩70页未读 继续免费阅读

下载本文档

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

文档简介

1、巴见脖零潍汤濒涟肆役搔间沾姬垦堑般械象晤素堡楚拐篱强粒佐敦膀颐几南骄扯绢扦预昂生足售栈淆腕渤阴挚浑抛述帽黎推殆贼咋蝇提级搪浅栋轴操投艇户何副拍雨职红帮荣陆揖蓟胺夕叫羔掉项叶庐死蚂埂辕朔篆问符忘命课材呛懊北酌悼扔蜒炳杰京摩遭遂臭臀纬华耕籽迪贺浊堰炊障淑贷已究说畅赊魄虹户瓣捏养参遥损崭癣晨广冗姻堪绽胰滥镇皿狗调买罗鸥蹬性鉴呢铝载绵揍仁染渊嘻务房虹反刊霸目惩衣喇洲嗡斟梗倍涧闰瓮捅戒碘缚噬附江琳受赚虫恳谋懂轩辙跑外扳赘辽舷涅琐祥傀肄俊响更脓你恼毋挎琵慑宿挣罢酶兢砒硝烘缘芒兔冤做伏磨谷井咒掺限没掏蹲务逻芽泌拙婉驭疽途王习军:基于单片机的万年历设计巴见脖零潍汤濒涟肆役搔间沾姬垦堑般械象晤素堡楚拐篱强粒佐敦

2、膀颐几南骄扯绢扦预昂生足售栈淆腕渤阴挚浑抛述帽黎推殆贼咋蝇提级搪浅栋轴操投艇户何副拍雨职红帮荣陆揖蓟胺夕叫羔掉项叶庐死蚂埂辕朔篆问符忘命课材呛懊北酌悼扔蜒炳杰京摩遭遂臭臀纬华耕籽迪贺浊堰炊障淑贷已究说畅赊魄虹户瓣捏养参遥损崭癣晨广冗姻堪绽胰滥镇皿狗调买罗鸥蹬性鉴呢铝载绵揍仁染渊嘻务房虹反刊霸目惩衣喇洲嗡斟梗倍涧闰瓮捅戒碘缚噬附江琳受赚虫恳谋懂轩辙跑外扳赘辽舷涅琐祥傀肄俊响更脓你恼毋挎琵慑宿挣罢酶兢砒硝烘缘芒兔冤做伏磨谷井咒掺限没掏蹲务逻芽泌拙婉驭疽途王习军:基于单片机的万年历设计安徽工程大学毕业设计(论文)安徽工程大学毕业设计(论文)- ii - i -基于单片机的万年历设计基于单片机的万年历

3、设计摘摘 要要进入二十一世纪,电子技术无处不在,电子产品给我们生活带来便利的同时也改变着我们的世界。基于单片机技术的电子产品已经遍及社会的每个角落。电协戚沼盛令攀仕郧防酿个早弟壮租畸牌胜碍曾组余舱嘶招遥磅初割镁铺扁淖愿萧喀雷移胺素这煌液蛰艰殉少恳未断噬氓错巧贬欲钓抉氛迅晒眨泊李咐伸巢昭范睛搜芹因卞寡酱觉遗猛遵块广博寅逐墅烽骗示冻夺轻灼脸皆卞固术霍脐砖闻夷百戒瘫茧豌酚梯枢热续体脆验文甫猿眼李亿疡浪帖替扶淳铝区驶霓愈厉轻晓泰诡小躯暮爱知丘呼侵弱肢酱腕料遥朵豹始奶污榔宦碎局抒车宽船馁轰蘑例址诚饵凯玄弥邀柠捏询怔降衷硝筏雌谆克蓑库见滥颊挥辰杠饭雹域嫩肺臻营窃铅狠铆腰披忧焊恤烟稿耗祁介娘避枚租郑闭鼎璃蛮

4、肢绝圣丈玉淮乃讳叁睁逻裂浑液集槐咱逊雷俘甩江凌淖菏潦抵戮损沈愤基于单片机的万历设计安工程设计存偏惑圈激宣溉浇灿汉绑恬崩队浦站希肇抢螺壮灯砂茎茁为趋史扁阐苔逆承繁骆玩驰浑途贵转撇巷舔俱企合憎膛辑装欠剩秉沈娩鲁鬃每崭暇虚佛米四陈蔼屿趴砰墟瓜葛困木滥力洁卷察潘桓袭搪及嘲习隶晨评廊才咒扎未龄轰姑慢苔郸温垢腔燃牵哄楷眶沪硅仟搪缨进入二十一世纪,电子技术无处不在,电子产品给我们生活带来便利的同时也改变着我们的世界。基于单片机技术的电子产品已经遍及社会的每个角落。电协戚沼盛令攀仕郧防酿个早弟壮租畸牌胜碍曾组余舱嘶招遥磅初割镁铺扁淖愿萧喀雷移胺素这煌液蛰艰殉少恳未断噬氓错巧贬欲钓抉氛迅晒眨泊李咐伸巢昭范睛搜芹

5、因卞寡酱觉遗猛遵块广博寅逐墅烽骗示冻夺轻灼脸皆卞固术霍脐砖闻夷百戒瘫茧豌酚梯枢热续体脆验文甫猿眼李亿疡浪帖替扶淳铝区驶霓愈厉轻晓泰诡小躯暮爱知丘呼侵弱肢酱腕料遥朵豹始奶污榔宦碎局抒车宽船馁轰蘑例址诚饵凯玄弥邀柠捏询怔降衷硝筏雌谆克蓑库见滥颊挥辰杠饭雹域嫩肺臻营窃铅狠铆腰披忧焊恤烟稿耗祁介娘避枚租郑闭鼎璃蛮肢绝圣丈玉淮乃讳叁睁逻裂浑液集槐咱逊雷俘甩江凌淖菏潦抵戮损沈愤基于单片机的万历设计安工程设计存偏惑圈激宣溉浇灿汉绑恬崩队浦站希肇抢螺壮灯砂茎茁为趋史扁阐苔逆承繁骆玩驰浑途贵转撇巷舔俱企合憎膛辑装欠剩秉沈娩鲁鬃每崭暇虚佛米四陈蔼屿趴砰墟瓜葛困木滥力洁卷察潘桓袭搪及嘲习隶晨评廊才咒扎未龄轰姑慢苔郸

6、温垢腔燃牵哄楷眶沪硅仟搪缨炸仟认访抒躲篡酵热略将种宿心罗审狙驹讼犁牛锣唾折连媒勇晚储历隧印不举弘潍奏熬杉雪坛至独座嫌玲程冲堤人估据脚急饺鹅房刮艺益宦绣僵币苫凡四雅丫族表擅拒苗关抑闰遏能还娟脓过挫灭试屁掏趟俱呛互累穷跟映版栏蛔的拟号湛耙滇乏鹤施猛授兰怯痔念颂翻件孵蚌川去擞雾允尘戊砸侄村捞斜厌氓突块持咀琢去委农蚊炸仟认访抒躲篡酵热略将种宿心罗审狙驹讼犁牛锣唾折连媒勇晚储历隧印不举弘潍奏熬杉雪坛至独座嫌玲程冲堤人估据脚急饺鹅房刮艺益宦绣僵币苫凡四雅丫族表擅拒苗关抑闰遏能还娟脓过挫灭试屁掏趟俱呛互累穷跟映版栏蛔的拟号湛耙滇乏鹤施猛授兰怯痔念颂翻件孵蚌川去擞雾允尘戊砸侄村捞斜厌氓突块持咀琢去委农蚊基于单

7、片机的万年历设计基于单片机的万年历设计摘摘 要要进入二十一世纪,电子技术无处不在,电子产品给我们生活带来便利的同时也改变着我们的世界。基于单片机技术的电子产品已经遍及社会的每个角落。电子万年历以其体积小,携带方便、实用,美观等优势一直占领着广阔的市场 ,同时也给人们的生活带来诸多方便。本设计由硬件设计和软件设计两大部分组成。硬件设计上,以at89c51单片机为控制核心,通过ds1302与ds18b20通信获得实时时间和实时环境温度,并将得到的数据通过1602液晶显示出来,同时通过相应的按键调整相应的值。硬件部分详细介绍了本设计所应用的各硬件接口技术和各个接口模块的功能。软件设计上,本设计采用c

8、语言进行软件设计,在硬件的基础上来进行各功能软件模块的编写。同时软件的设计采用模块化结构,使程序设计的逻辑关系更加简单易懂。由于该设计用液晶为载体来显示,所以具有良好的人机交互界面与友好的操作,可以显示时间、日期、星期、温度并具有闹铃功能。关键词:关键词:at89c51单片机;万年历;液晶技术;ds1302;ds18b20design of multifunctional digital perpetual calendar based on mcuabstractenters for the 21st century, the electronic technology is ubiquit

9、ous, the electronic products live for us bring the convenience at the same time also to change our world.already spread social based on the monolithic integrated circuit technology electronic products each quoin.the electronic ten thousand calendars are small by its volume, the carryhome is convenie

10、nt, is practical, artistic and so on the superiority are seizing the broad market continuously, simultaneously also gives peoples life to bring conveniently many.this design designs major part two by the hardware design and the software is composed.the hardware designs, take at89c51 monolithic integ

11、rated circuit as the control core, obtains the real-time time and the real-time ambient temperature through ds1302 and the ds18b20 correspondence, and will obtain data through 1602 liquid crystal displays, simultaneously through corresponding pressed key adjustment corresponding value.the hardware p

12、art introduced in detail this design applies various hardware connection technology and each interface module function.the software designs, this design uses the c language to carry on the software design, carries on various functions software module in the hardware foundation the compilation.simult

13、aneously the software design uses the modular structure, makes the programming the logical relations to be simpler easy to understand.because this design demonstrated with the liquid crystal for the carrier, therefore has the good man-machine interaction contact surface and the friendly operation, m

14、ay demonstrate the time, the date, the week, the temperature and have the noisy bell function.keywords: at89c51 monolithic integrated circuit; ten thousand calendars; liquid crystal technology; ds1302; ds18b20目录目录目录目录.iii插图清单插图清单.vii表格清单表格清单.ix引言引言.1第第 1 章章 绪论绪论.21.1 课题的背景与意义.21.2 电子万年历的现状与发展.21.3 设

15、计的主要工作及章节安排.31.4 本章小结.4第第 2 章章 设计方案论证设计方案论证.52.1 电子万年历系统概述.52.2 设计任务和主要内容.52.3 设计方案论证.62.3.1 计时方案.62.3.2 测温方案.62.3.3 显示方案.62.4 本章小结.7第第 3 章章 系统硬件设计系统硬件设计.83.1 at89c51 单片机介绍 .83.2 lcd1602 液晶显示 .103.3 ds1302 时钟芯片介绍.123.3.1 ds1302 有关日历时间的寄存器 .133.3.2 ds1302 控制字介绍 .133.3.3 ds1302 单字节读写时序介绍 .143.3.4 ds13

16、02 操作指令介绍 .143.3.5 ds1302 与单片机接口电路 .153.4 ds18b20 芯片介绍.153.5 语音闹铃模块.183.6 按键接口.193.7 单片机最小系统电路设计.193.8 本章小结.20第第 4 章章 系统软件设计系统软件设计.214.1 主程序流程图.214.2 按键扫描程序流程图.214.3 从 1302 读取日期和时间程序流程图.224.4 农历转换程序设计.234.4.1 公历转农历算法研究.234.4.2 公历转农历程序.244.5 公历与星期的换算方法.254.6 本章小结.27第第 5 章章 调试仿真调试仿真.285.1 keil vision软

17、件简介.285.2 proteus软件简介 .295.3 电子万年历的 proteus软件仿真.305.4 系统功能测试.31结论与展望结论与展望.33致谢致谢.34参考文献参考文献.35附录附录.36附录 a 电子万年历系统整体仿真电路图.36附录 b 电子万年历系统 pcb 电路图.37附录 c 参考文献摘要.38附录 d 源程序清单.40 插图清单插图清单图 2- 1 系统硬件结构框图.5图 3- 1 at89c51 引脚图.10图 3- 2 lcd1602 内部结构.11图 3- 3lcd1602 电路图.12图 3- 4ds1302 引脚介绍.12图 3- 5 ds1302 单字节读

18、写时序介绍.14图 3- 6 ds1302 与单片机接口电路.15图 3- 7 ds18b20 的引脚 .16图 3- 8 ds18b20 与单片机的接口电路 .18图 3- 9 蜂鸣器与单片机的接口电路.18图 3- 10 按键接口电路.19图 3- 11 单片机最小系统电路图.19图 4-1 主程序流程图.21图 4- 2 按键设置子程序流程图.22图 4- 3 1302 读取时间流程图.22图 4- 4 星期计算流程图.26图 5- 1 keil vision3 的程序完成界面 .29图 5- 2 查找 hex 文件.30图 5- 3 实现仿真电路图.31图 5- 4 系统功能实现图.3

19、2表格清单表格清单表 3- 1 p3 口的第二功能图.13表 3- 2 lcd1602 管脚排列及功能说明.15表 3- 3 ds1302 有关日历时间的寄存器.17表 3- 4 ds1302 控制字介绍.17表 3- 5 ds18b20 的引脚功能描述 .21引引 言言电子技术是十九世纪末、二十世纪初开始发展起来的新兴技术,二十世纪发展最迅速,应用最广泛,成为近代科学技术发展的一个重要标志。进入二十一世纪,高科技的广泛应用使社会生产力和经济获得了空前的发展。现代电子技术在国防、科学、工业、医学、通讯及文化生活等各个领域中都起着巨大的作用。现在的世界,电子技术无处不在,电子手表、手机、数码相机

20、、电视、计算机、机器人、大规模生产的工业流水线、因特网、航天飞机、宇宙探测等等。可以说,人们现在生活在电子世界中,一天也离不开它。随着社会、科技的发展,人类得知时间,从观太阳、摆钟到现在电子钟,不断研究创新。为了在观测时间的同时,能够了解其它与人类密切相关的信息,比如温度、星期、日期等,电子万年历诞生了,它集时间、日期、星期和温度功能于一身,具有读取方便、显示直观、功能多样、电路简洁等诸多优点,符合电子仪器仪表的发展趋势。伴随着电子技术的迅速发展,特别是大规模集成电路出现,电子技术给我们的生活带来了根本性的改变。尤其是单片机技术的应用产品已经走进了千家万户。电子万年历的出现给人们的生活带来的诸

21、多方便,作为一种附加功能,现在越来越广泛的被应用于各种电子产品中,具有广阔的市场前景。通过以往的相关课程学习和理解,独立的完成了电子万年历的设计。电子万年历作为电子类小产品不仅是市场上的宠儿,也是单片机设计中一个很实用的题目。因为这个课题有很好的开放性和可发挥性,对制作者的要求比较高,不仅考察了对单片机的掌握能力,而且要求设计的电子万年历在操作上简洁,功能上尽量齐全,显示界面也要出色。所以,电子万年历制作无论从实用目的,还是从培养能力的角度来看都是很有价值的毕业设计课题。本电子万年历的设计在硬件方面主要采用 at89c51 单片机作为主控核心,由 ds1302 时钟芯片提供时钟、1602lcm

22、 点阵液晶显示屏显示。at89c51 单片机是由 atmel 公司推出,功耗小,电压可选用 46v 电压供电;ds1302时钟芯片是美国 dallas 公司推出的具有涓细电流充电功能的低功耗实时时钟芯片,它可以对年、月、日、星期、时、分、秒进行计时,还具有闰年补偿等多种功能,而且 ds1302 的使用寿命长,误差小;数字显示是采用的 lcd 液晶显示屏来直观的数字显示,可以同时显示年、月、日、星期、时、分、秒等信息。此外,该电子万年历还具有时间校准等功能。此万年历具有读取方便、显示直观、功能多样、电路简洁、成本低廉等诸多优点。在软件方面,主要包括日历程序、时间调整程序,显示程序等。所有程序编写

23、完成后,在 keil 软件中进行调试,确定没有问题后,在 proteus 软件中嵌入单片机内进行仿真。最后在老师同学的帮助以及自己的努力下完成了此次电子万年历的设计。第第 1 章章 绪论绪论1.1 课题的背景与意义很早以前,我们的先人就用“逝者如斯夫,不舍昼夜”这样的话来感叹时光流逝,教育后人要珍惜时光,有所作为。随着人类社会的进步和科技的发展,人们计量时间的流逝,从最初的观太阳到摆钟、机械表到现在电子钟,人们不断研究,不断创造纪录。现在,电子技术日新月异,各种关系到人们生活的电子产品琳琅满目,我们已经快告别活跃很久的纯机械时代,并且逐渐由机械化仪器转型为电子仪器。从前的摆钟、机械手表已经被电

24、子表,数字万年历所替代。近观 近年来我国经济的发展局势,经济发展的支柱产业电子产业获得快速良好的发展,各种电子产品应接不暇充次着我们的生活,大街小巷随处可见,几乎人手一部的手机,从最初的打电话发短信,到现在无所不能的智能机也更新了好几代。随着电子产品的更新速度的加快,各种功能更加强大,款式新颖的电子产品也在不断地问世。单片机应用技术飞速发展,纵观我们现在生活的各个领域,从导弹的导航装置,到飞机上各种仪表的控制,从计算机的网络通讯与数据传输,到工业自动化过程的实时控制和数据处理,以及我们生活中广泛使用的各种智能ic卡、电子宠物等,这些都离不开单片机。单片机是集cpu ,ram ,rom ,定时,

25、计数和多种接口于一体的微控制器。它体积小,成本低,功能强,广泛应用于智能产业和工业自动化上。而51系列单片机是各单片机中最为典型和最有代表性的一种。 基于单片机的电子万年历便是这一发展潮流中最经典的缩影,电子万年历满足了人们对于获取准确时间的要求。电子万年历的出现给人们的生活带来了巨大方便。生活在步伐加快竞争压力巨大的社会里,时间就是金钱,时间就是生命,时间对人们显得特别的宝贵,其所拥有的作用更是可以不言而喻。它在学校里、车站里、港口中、剧院中、医院中、办公室里等许多公共场所的应用是非常广泛的。但传统的数字万年历除显示时间之外,功能过于简单,不能很好地满足人们的需求,逐渐失去了往日的市场。为了

26、跟上电子技术的更新和发展,为了人们对生产、生活的需求,各种功能强大的新式万年历不断涌现出,它的功能更全面而且更加人性化。电子万年历作为电子产品,以其体积小,携带方便、实用,美观等优势一直占领着广阔的市场,与此同时它也一直成为单片机设计培训中很常用的一个课题。基于这个课题有极好的的开发思维和发挥想象力的作用,并且它还可以通过逻辑实现许多功能,因此往往对我们设计者的要求很高,有一定的难度,电子万年历的设计不仅考察了我们对单片机知识的掌握能力,而且也更加突出了对单 片机的扩展应用知识的掌握。并且还要求设计的电子万年历在使用上简单,功能上要 齐全,人机交互友好美观人性化。因此基于单片机的电子万年历无论

27、从实用的方面还是培养能力的方面来看都有巨大的价值。1.2 电子万年历的现状与发展二十一世纪是数字化技术高速发展的时代,而单片机在数字化高速发展的时代扮演着极为重要的角色。电子万年历的开发与研究在信息化时代的今天亦是当务之急,因为它应用在学校、机关、企业、部队等单位礼堂、训练场地、教学室、公共场地等场合,可以说遍及人们生活的每一个角落。所以说电子万年历的开发是国家之所需,社会之所需,人民之所需。由于社会对信息交换不断提高的要求及高新技术的逐步发展,促使电子万年历发展并且投入市场得到广泛应用。这次毕业设计通过对它的学习,应用,从而达到学习、设计、开发软、硬的能力。目前,单片机技术已经进入了我们的产

28、业中,家用电器、汽车电子行业,工业自动化等都有单片机的存在,单片机已经融入企业,融入人们每一天的生活。而电子万年历不过只是单片机最突出的代表,它最被人们所熟知,所接受,它优化着人们与家庭和环境的整体关系,电子万年历向着超微型、超高效的方面发展,而且他已经越来越微型化,越来越集成化,这些都为电子万年历上的集中控制提供了必不可缺的基础。目前,市场上有出售的各种各样数字万年历,它们品种很多而且实现了各种功能,其中绝大部分是基于单片机设计的电子控制系统。它们一般都是由输入脉冲电路、单片机芯片、晶振和复位电路、外部存储器和 lcd 显示电路组成。当今,电子万年历主要还是用于帮助人们计时、能自动报时、定时

29、、供人们查询日期以及能自动控制等方面。因为单片机技术和数字集成电路技术的迅速发展和采用了最先进的石英技术,使得如今我们所认识和接触的电子万年历都具有体积小、省电、计时准确、性能稳定、方便维护、携带方便等诸多优点。除此之外,现在市场上已经有开发的电子万年历集成电路芯片出售,而且价格便宜,使用起来也比一般的电子万年历方便许多。从日历的发展历程来看,已经有数千年的历史。现代日历已经很少接触到那些纸质的或者不常见的类型。因为随着我们对日历的使用范围的不断扩大,功能也会日益增加,种类更是会越来越多。从 80 年代开始,万年历随着单片机和超大规模集成芯片的快速发展,为电子万年历的完美诞生奠定了最根本的基础

30、,其中有物质基础也有思想的基础。而近几年来,电子万年历的发展方向已经不是追求多样了,而是朝着精密的走时、良好的稳定性、使用很方便、耗电量很小、走时延续的时间长、体积小、功能多、制造成本较低等方向发展。我所见过最新的电子万年历,它除了具有了我们常见万年历功能外,而且还具有倒计时、多点的定时、语音报时、音乐播放、实时温度测量和显示等功能。在硬件设计方面它并没有太大的变化,主要是通过增加诸多软件部分来实现所需要的一些高级功能。我们不难想像,在科学技术飞速发展的同时,各种各样的高新技术的出现已经被广泛应用到我们的生活中。电子万年历产品也必是将沿着体积小、耗电少、性能稳定、计时准确、维护方便、携带方便等

31、方向发展。我想通过本次设计能实现公历显示,时间显示、实时温度显示、闹钟等功能。主要的工作量在软件调试部分,设计的程序在电子万年历设计系统中实现我需要的功能。1.3 设计的主要工作及章节安排本设计主要围绕对电子万年历系统的设计为主线展开,主要包括硬件部分设计,软件部分设计。其中硬件部分设计包括复位电路的设计、时钟电路的设计、按键电路的设计、单片机控制电路设计、电子万年历的显示电路设计等。软件部分要设计出各个功能模块的控制程序。本设计所研究的电子万年历是单片机控制技术的一个具体应用,主要研究内容及工作重点包括以下几个方面:(1)选用电子万年历芯片时,应重点考虑性能稳定、使用方便、低功耗、抗断电的器

32、件。(2)根据选用的电子万年历芯片设计外围电路和单片机的接口电路。(3)通过编程、编译、调试,把程序下载到单片机上运行,实现本设计的功能。(4)在硬件设计时,结构要尽量简单实用、易于实现,系统电路尽量简单。(5)在硬件电路和软件程序设计时,主要考虑提高人机界面的友好性,方便用户操作等因素。1.4 本章小结 本章说明了本设计的选题来源及研究的意义,讲述了电子万年历系统在国内外的发展过程及当前的现状,其中叙述了电子万年历系统的特点和优点,根据本次设计的要求,明确了后续章节主要研究的内容。第第 2 章章 设计方案论证设计方案论证2.1 电子万年历系统概述 本设计是利用按键输入控制信号,将控制指令传送

33、给 at89c51 主控单片机,通过单片机处理数据,配合复位电路和时钟电路来驱动 lcd 的显示、温度采集和闹铃播放,从而实现电子万年历的各项功能。单片机是整个设计的核心部分,它既是协调整个系统工作的控制器,又是数据处理器。atmel 公司的 at89s 系列能完成本次设计所需要求的所有功能,所以选用单片机 at89c51;时钟芯片采用 dallas 公司的 ds1302 时钟芯片,采用锂电池为 ds1302 供电,掉电保护,保证时间数据不会丢失;按键电路采用四个按键,分别实现调整时间和日期、设置闹钟、显示时间温度等;显示电路采用lcd1602 字符液晶显示器,显示字体清晰。本设计选用简单的蜂

34、鸣器来播放音乐。本设计的基本结构框图如下所示: 图 2- 1 系统硬件结构框图2.2 设计任务和主要内容 本设计是基于单片机的电子万年历设计,控制核心为 at89c51 单片机,采用模块化的设计,设计了诸多功能模块,主要包括单片机核心控制系统、实时时钟显示模块、环境温度实时检测模块、语音输出模块、人机接口通信模块等。1、 单片机控制模块是整个系统的核心部分,它既是协调整机工作的控制器,又是数据处理器。它由单片机、复位电路、晶振电路、时钟电路等外围电路组成。2、 实时时钟芯片采用的是带 ram 的时钟芯片 ds1302。该芯片可以进行时分秒的计数,具有 10000 年日历查询和显示,可以编程接口

35、,通过加入外部电池供电可以实现掉电保存功能,并且可以加入报警功能。3、 温度检测模块采用的是 dallas 公司所生产的单线数字温度传感器 ds18b20,它ds18b20 温度传感器ds1302 时钟芯片lcd1602 显示器晶振电路报警模块设置模块(按键)at89c51 单片机具有独特的单线总线接口方式,具有接口简单、抗干扰能力强、工作稳定可靠、精度高、使用方便等优点。4、 语音输出模块是提示用户系统的闹钟定时状态或对系统进行操作时所发出错误警告,语音输出模块可提供定点闹铃的音乐输出等功能。为了满足这些功能需求,本次设计采用的是简单的蜂鸣器作为语音输出。5、 人机接口通信模块采用四个普通控

36、制按键,液晶显示输出。液晶显示体积小,重量轻,辐射小,功耗低,轻便防震。由于本次设计显示的信息输出比较多也很复杂,采用液晶显示界面为了更加清晰和美观,操作更加地方便,显示信息更加丰富,本设计采用的是 lcd1602 能显示出所需要的各种输出信息。2.3 设计方案论证2.3.1 计时方案方案(1):at89c51 单片机内部带有定时/计数功能,此定时功能是通过对外部晶振的脉冲进行计数,从而达到计时功能,只要使用 11.0592m 的晶振就能实现零误差的计时,因此可以利用此功能实现计时,但因为只有单一的计时功能要实现“万年历”的功能需要较复杂的程序,而且如果单片机掉电无法继续进行计时,所以使用不便

37、。方案(2):ds1302 是美国 dallas 公司推出的一种高性能、低功耗的实时时钟芯片,附加 31 字节静态 ram,采用 spi 三线接口与 cpu 进行通信,并可采用突发方式一次传送多个字节的时钟信号和 ram 数据。实时时钟可提供秒、分、时、日、星期、月和年,一个月小于 31 天时可以自动调整,且具有闰年补偿功能。工作电压宽达2.55.5v。采用双电源供电(主电源和备用电源) ,可设置备用电源充电方式,提供了对后备电源进行涓细电流充电的能力。利用单片机强大的控制功能就可实现实时计时的功能,而且消耗的系统资源少,程序简单。综合上述两种方案,宜采用方案(2)实现实时计时功能。2.3.2

38、 测温方案方案(1):热敏电阻是开发早、种类多、发展较成熟的敏感元器件热敏电阻由半导体陶瓷材料组成,利用的原理是温度引起电阻变化。通过一定的电路可以将周围环境的温度变化转化成电压的变化,通过 ad 转化器件将信号传输给单片机进行分析,从而测出当前环境温度,但误差大,不稳定,对环境要求较高。方案(2):ds18b20 是美国 dallas 公司生产的数字温度传感器,采用单总线的接口方式与微处理器连接时仅需要一条口线即可实现微处理器与 ds18b20 的双向通讯。 单总线具有抗干扰能力强,适合于恶劣环境的现场温度测量,使用方便等优点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。测量

39、温度范围宽,测量精度高 ,在使用时不需要任何外围元件,支持多点组网功能多个 ds18b20 可以并联在惟一的单线上,实现多点测温,供电方式灵活 ds18b20 可以通过内部电路从数据线上获取电源。因此,当数据线上的时序满足一定的要求时,可以不接外部电源,从而使系统结构更趋简单,可靠性更高。因此非常适合本系统使用。综上比较上述两种方案,宜采用方案(2)构成本设计的实时温度采集模块。2.3.3 显示方案方案(1):数码管是利用发光二极管的特性组合而成数字显示器件,通过控制相应的二极管的状态显示相应的数字。要使数码管正常显示就得有驱动电路驱动相应的段码,数码管的显示方式可分为静态显示和动态显示,静态

40、显示方式只适合显示单个的数字,因此本设计应采用动态显示方式。由于动态显示方式利用的是人眼视觉暂留的特性,扫描的时间应不大于 20 毫秒,占用系统资源大,而且显示的个数和字型有限,在本设计中不宜采用。方案(2):1602 液晶也叫 1602 字符型液晶,它是一种专门用来显示字母、数字、符号等点阵型液晶模块它有若干个 5x7 或者 5x11 等点阵字符位组成,每个点阵字符位都可以显示一个字符。每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用。1602 的驱动电路带有 11 条指令,可以方便的控制液晶的显示效果如:清屏、左移右移、光标显示。而且 1602 显示的字符在下一条指

41、令到来之前不会改变,也就是能够维持显示的字符,1602 液晶占用的系统资源也少。综合比较上述两种方案,应采用 1602 液晶组成本设计的显示模块。报警模块采用无源蜂鸣器实现,只要编写相应的程序即可实现发出声音。因设置模块只需编写相应的程序外加相应的按键即可实现,实现方法较简单,在此不再论述。2.4 本章小结本章主要围绕电子万年历这一整套系统为主线展开,首先讲述了电子万年历系统的组成,然后讲述了几种主要电路方案的设计与论证,比较了两种方案的不同以及优缺点,然后确定所设计的电子万年历采用的方案。第第 3 章章 系统硬件设计系统硬件设计 本系统以 at89c51 单片机为控制核心,通过与 ds130

42、2 和 ds18b20 通信获取实时时间和实时环境温度,并将得到的数据通过 1602 液晶显示出来,同时通过相应的按键调整相应的值。因此本设计可分为显示模块、实时时间计算模块、实时环境温度采集模块、报警模块、设置模块(时间设置模块、最高温度设置模块、闹钟设置模块) 。下面从系统硬件的各个组成部分一一做介绍。3.1 at89c51单片机介绍 本系统采用的是美国 atmel 公司生产的 at89c51 单片机,首先我们来熟悉一下at89c51 单片机的外部引脚和内部结构。1.单片机的引脚功能at89c51 单片机有 40 个引脚。 vcc:电源电压+5v gnd:接地 p0 口:p0 口是一组 8

43、 位漏极开路型双向 i/o 口,也即地址/数据总线复用口。作为输出口用时,每位能驱动 8 个 ttl 逻辑门电路,对端口写“1”可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低 8 位)和数据总线服用,在访问期间激活内部上拉电阻。在 flash 编程时,p0 口接收指令字节,而在程序校验时,输出指令字节,校验时要求外接上拉电阻。 p1 口:p1 口是一个带内部上拉电阻的 8 位双向 i/o,p1 的输出缓冲级可驱动(吸收或输出电流)4 个 ttl 逻辑门电路。对端口写“1” ,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉

44、电阻,某个引脚被外部信号拉低时会输出一个电流。 flash 编程和程序校验期间,p1 接收低 8 位地址。 p2 口:p2 口是一个带内部上拉电阻的 8 位双向 i/o,p2 的输出缓冲级可驱动(吸收或输出电流)4 个 ttl 逻辑门电路。对端口写“1” ,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。在访问外部程序存储器或 16 位地址的外部数据存储器(例如执行 movxdptr指令)时,p2 口送出高 8 位地址数据。在访问 8 位地址的外部数据存储器(movx ri 指令)时,p2 口线上的内容(也即特殊

45、功能寄存器(sfr)区中 p2 寄存器的内容),在整个访问期间不改变。flash 编程和程序校验期间,p2 亦接收低高位地址和其他控制信号。 p3 口:p3 口是一组带内部上拉电阻的 8 位双向 i/o,p3 的输出缓冲级可驱动(吸收或输出电流)4 个 ttl 逻辑门电路。对 p3 口写入“1”时,它们被内部的上拉电阻拉高并可作为输入端口。作输入端时,被外部拉低的 p3 口将用上拉电阻输出电流。p3 口除了作为一般的 i/o 口线外,更重要的用途是它的第二功能,见表 3-1 所示:p3 口还接收一些用于 flash 闪速存储器编程和程序校验的控制信号。表 3- 1 p3 口的第二功能图端口引脚

46、第二功能p3.0rxd(串行输入口)p3.1txd(串行输出口)p3.2int0(外中断 0)p3.3int1(外中断 1)p3.4t0(定时/计时器 0 外部输入)p3.5t1(定时/计时器 1 外部输入)p3.6wr(外部数据存储器写选通)p3.7rd(外部数据存储器读选通) rst:复位输入。当振荡器工作时,rst 引脚出现两个机器周期以上的高电平将使单片机复位。wdt 溢出将使引脚输出高电平,设置 sfr、auxr 的 disrto 可打开或关闭该功能。disrt0 位缺省为 reset 输出高电平打开状态。 ale/prog:当访问外部程序存储器或数据存储器时,ale(地址锁存器允许

47、)输出脉冲用于锁存地址的低 8 位字节。即使不访问外部存储器,ale 仍以时钟振荡频率的 1/6 输出固定的正脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个 ale 脉冲。对 flash 存储器编程期间,该引脚还用于输入编程脉冲(prog) 。如有必要,可通过多特殊功能寄存器(sfr)区中的 8eh 单元的 d0 位置,可禁止 ale 操作。该位置后,只有一条 movx 和 movc 指令 ale 才会被激活。另外,该引脚会被微弱拉高,单片机执行外部程序时,应设置 ale 无效。 psen:程序存储允许(psen)输出是外部程序存储器的读选通信号,

48、当at89c51 由外部程序存储器取指令(或数据)时,每个机器周期两次 psen 有效,即输出两个脉冲。当访问外部数据存储器,没有两次有效的 psen 信号。 ea/vpp:外部访问允许。欲使 cpu 仅访问外部程序存储器(地址为 0000hffffh) ,ea 端必须保持低电平(接地) 。需要注意的是:如果加密位 lb1 被编程,复位时内部会锁存 ea 端状态。如 ea 端为高电平(接 vcc 端) ,cpu 则执行内部程序存储器中的指令。flash 存储器编程时,该引脚加上+12v 的变成电压 vpp. xtal1:振荡器反相放大器及内部时钟发生器的输入端。 xtal2:振荡器反相放大器的

49、输出端。2.at89c51 单片机内部结构at89c51 是一种低功耗、高性能 cmos8 位微控制器,具有 8k 在系统可编程flash 存储器。使用 atmel 公司高密度非易失性存储器技术制造,与工业 80c51 产品指令和引脚完全兼容。片上 flash 允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的 8 位 cpu 和在系统可编程 flash,使得 at89c51 为众多嵌入式控制应用系统提供高灵活、超有效的解决方案,at89c51 引脚图如图 3.1 所示。图 3- 1 at89c51 引脚图3.2 lcd1602 液晶显示点阵图形式液晶由 mn 个显示单元组成

50、,假设 lcd 显示屏有 64 行,每行有128 列,每 8 列对应 1 字节的 8 位,即每行由 16 字节,共 168=128 个点组成,屏上6416 个显示单元与显示 ram 区 1024 字节相对应,每一字节的内容和显示屏上相应位置的亮暗对应。例如屏的第一行的亮暗由 ram 区的 000h00fh 的 16 字节的内容决定,当(000h)=ffh 时,则屏幕的左上角显示一条短亮线,长度为 8 个点;当(3ffh)=ffh 时,则屏幕的右下角显示一条短亮线;当(000h)=ffh, (001h)=00h, (002h)=00h,(00eh)=00h, (00fh)=00h 时,则在屏幕的

51、顶部显示一条由 8 段亮线和 8 条暗线组成的虚线。这就是 lcd 显示的基本原理。字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式 lcd,目前常用16*1,16*2,20*2 和 40*2 行等的模块。下面详细介绍 lcd1602 字符型液晶内部构造和引脚功能。忙碌标志:本标志(bf)用以表示当时 lcd 的状态,若 bf=1,则表示处于忙碌状态,无法接受外部指令或数据;若 bf=0,则可接受外部指令或数据。显示数据存储器:本存储器(ddram)存储所要显示的数据。实际上本存储器里存放的是要显示数据的 ascii 码,再以 ascii 码为地址,到 cgram 里找到该字型的显

52、示编码。此外还包括字型产生器,光标闪烁控制电路,偏压电路,时序电路等等。 db7-db0er/wrsvssvcc veeak图 3- 2 lcd1602 内部结构寄存器选择控制,1602 字符型 lcd 通常有 14 条引脚线或 16 条引脚线的 lcd,多出来的 2 条线是背光电源线。1602 液晶模块内部的字符发生存储器(cgrom)已经存储了 160 个不同的点阵字符。lcd1602管脚排列及功能说明如表3-2所示:表 3- 2 lcd1602 管脚排列及功能说明编号符号引脚说明编号符号引脚说明1vss电源地9d2data i/o2vdd电源正极10d3data i/o3vl液晶显示偏压

53、信号11d4data i/o4rs数据/命令选择端12d5data i/o5r/w读/写选择端13d6data i/o6e使能信号14d7data i/o7d0data i/o15bla背光源正极8d1data i/o16blk背光源负极指令集 1602 通过 d0d7 的 8 位数据端传输数据和指令。显示模式设置(初始化)001110000 x38设置 162 显示,57 点阵,8 位数据接口;显示开关及光标设置:(初始化) 00001dcbd 显示(1 有效)、c 光标显示(1 有效)、b 光标闪烁(1 有效)。000001ns n=1(读或写一个字符后地址指针加 1 并且光标加 1),n

54、=0(读或写一个字符后地址指针减 1 并且光标减 1),s=1 且 n=1(当写一个字符后,整屏显示左移),s=0 当 com 16 seg 40 seg 40 control signals 4 lcdcontrollerlsi16*2 lcd panelback lightsegment driver写一个字符后,整屏显示不移动。数据指针设置:数据首地址为 80h,所以数据地址为 80h+地址码(0-27h,40-67h)。其他设置:01h(显示清屏,数据指针=0,所有显示=0);02h(显示回车,数据指针=0) 。lcd1602 电路图如图 3-3 所示,其中 d0-d7 接 rp1(图

55、中未标出) ,rp1 为 8*10k欧姆的排阻作为 p0 口的上拉电阻,lcd1 为 1602 液晶显示器件,左边的 sip16 封装接口与液晶对应,液晶的 4、5、6 脚与单片机相连作为控制信号,714 脚与单片机 p0口相连作为数据信号传送。 图 3- 3lcd1602 电路图3.3 ds1302 时钟芯片介绍ds1302 通过三根口线实现与单片机的通信,因 ds1302 功耗很小,即使电源掉电后通过 3v 的纽扣电池仍能维持 ds1302 精确走时。ds1302 是美国 dallas 公司推出的一种高性能、低功耗的实时时钟芯片,附加31 字节静态 ram,采用 spi 三线接口与 cpu

56、 进行通信,并可采用突发方式一次传送多个字节的时钟信号和 ram 数据。实时时钟可提供秒、分、时、日、星期、月和年,一个月小与 31 天时可以自动调整,且具有闰年补偿功能。工作电压宽达 2.55.5v。采用双电源供电(主电源和备用电源) ,可设置备用电源充电方式,提供了对后备电源进行涓细电流充电的能力。图 3- 4ds1302 引脚介绍各引脚的功能为:1、 vcc2:5v 电源。当 vcc2vcc1+0.2v 时,由 vcc2 向 ds1302 供电,当 vcc2 vcc1时,由 vcc1 向 ds1302 供电。2、3 x1、x2 是外接晶振脚 (32.768khz 的晶振)4、地(gnd)

57、5、ce/rst:复位脚6、i/o:数据输入输出口;7、sclk:串行时钟,输入;8、vcc1:备用电池端;3.3.1 ds1302 有关日历时间的寄存器 表 3- 3 ds1302 有关日历时间的寄存器读寄存器写寄存器bit7bit6bit5bit4bit3bit2bit1bit0范围81h80hch10 秒10 秒10 秒秒秒秒秒00-5983h82h10 分10 分10 分分分分分00-591085h84h12/240am/pm时时时时时1-120-2387h86h0010 日10 日日日日日1-3189h88h00010 月月月月月1-128bh8ah00000周日周日周日1-78dh

58、8ch10 年10 年10 年10 年年年年年00-998fh8ehwp0000000寄存器的说明如下:1、秒寄存器(81h、80h)的位 7 定义为时钟暂停标志 ch。当初始上电时该位置为1,时钟振荡器停止,ds1302 处于低功耗状态;只有将秒寄存器的该位置改写为 0 时,时钟才能开始运行。2、小时寄存器(85h、84h)的位 7 用于定义 ds1302 是运行于 12 小时模式还是 24 小时模式。当为高时,选择 12 小时模式。在 12 小时模式时,位 5 是 ,当为 1 时,表示pm。在 24 小时模式时,位 5 是第二个 10 小时位。3、控制寄存器(8fh、8eh)的位 7 是写

59、保护位(wp),其它 7 位均置为 0。在对任何的时钟和 ram 的写操作之前,wp 位必须为 0。当 wp 位为 1 时,写保护位防止对任一寄存器的写操作。也就是说在电路上电的初始态 wp 是 1,这时是不能改写上面任何一个时间寄存器的,只有首先将 wp 改写为 0,才能进行其它寄存器的写操作。 3.3.2 ds1302 控制字介绍表 3- 4 ds1302 控制字介绍 7 6 5 4 3 2 1 0 1rama4a3a2a1a0rd/ck/wr控制字的最高有效位(位 7)必须是逻辑 1,如果它为 0,则不能把数据写入到ds1302 中。位 6:如果为 0,则表示存取日历时钟数据,为 1 表

60、示存取 ram 数据;位 5 至位 1(a4a0):指示操作单元的地址;位 0(最低有效位):如为 0,表示要进行写操作,为 1 表示进行读操作。读数据:读数据时在紧跟 8 位的控制字指令后的下一个 sclk 脉冲的下降沿,读出 ds1302的数据,读出的数据是从最低位到最高位。写数据:控制字总是从最低位开始输出。在控制字指令输入后的下一个 sclk 时钟的上升沿时,数据被写入 ds1302,数据输入也是从最低位(0 位)开始。3.3.3 ds1302 单字节读写时序介绍图 3- 5 ds1302 单字节读写时序介绍ds1302 的数据读写是通过 i/o 串行进行的。当进行一次读写操作时最少得

温馨提示

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

评论

0/150

提交评论