多功能电子时钟毕业论文_第1页
多功能电子时钟毕业论文_第2页
多功能电子时钟毕业论文_第3页
多功能电子时钟毕业论文_第4页
多功能电子时钟毕业论文_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

1、 天津电子信息职业技术学院毕 业 设 计课题名称 多功能电子时钟 姓 名 学 号 5 6 班 级 电信S10-1 专 业 电子信息工程技术 所 在 系 电子技术系 指导教师 张智彬 完成日期 2013-1-25 天津电子信息职业技术学院毕业设计(论文)任务书课题名称: 多功能电子时钟完成期限:2012年 11 月1 日至2013年1 月 25日姓 名 指导教师 张智彬 专 业电子信息工程技术 职 称 讲师 所在系 电子技术系 系 主 任 接受任务日期 2012-11-1 批准日期 2013-1-25 一、原始依据(资料):(宋小四、1.5倍行距)二、设计(论文)内容和要求:设计内容: (宋小四

2、、1.5倍行距) 设计要求: 三、建议查阅的技术资料:(宋小四、1.5倍行距)天津电子信息职业技术学院 页号(1)毕业设计(论文)进度计划表序号起止日期计划完成内容实际完成内容检查日期检查人签字1(宋小四、单倍行距)(宋小四、单倍行距)(宋小四、单倍行距)(教师签字及时间)234567系毕业设计(论文)领导小组审阅意见:系主任签字:年 月 日天津电子信息职业技术学院 页号(2)注:1.本任务书由指导教师填写。 2.签字部分用笔填写,其余各项均要求打印。(宋体、小4号字)毕业设计(论文)开题报告毕业设计(论文)题目多功能电子时钟学生姓名系别电子技术系专业、班级电子信息工程技术电信S10-1指导教

3、师张智彬职称讲师工作单位天津电子信息职业技术学院指导教师职称工作单位实践地点天津电子信息职业技术学院交表日期2013-1-25毕业设计(论文)开题报告内容要求:课题的意义、现状及发展趋势。课题的研究内容、研究方法、研究手段、研究步骤。课题所需的参考书目等。注:开题报告占毕业设计(论文)总成绩的10% 。一、 课程的意义、现状及发展趋势1.意义本文是基于AT89C52单片机数字钟的设计,通过多功能电子时钟的设计思路,详细叙述了系统硬件、软件的具体实现过程。 训练学生正确地应用单片机,培养解决工业控制、工业检测等领域具体问题的能力,学生通过课程设计,熟悉单片机应用系统开发、研制的过程,软、硬件设计

4、的工作方法、工作内容、工作步骤;对学生进行基本技能训练,例如组成系统、编程、调试、绘图等,使学生理论联系实际,提高动手能力和分析问题、解决问题的能力。2.现状 电子时钟己成为人们日常生活中必不可少的物品广泛用于个人家庭以及车站、码头、剧院、办公室等公共场所给人们的生活、学习、工作、娱乐带来极大的方便。随着技术的发展人们己不再满足于钟表原先简单的报时功能希望出现一些新的功能诸如日历的显示、闹钟的非接触式止闹、跑表功能、重要日期倒计时显示等以带来更大的方便而所有这些又都是以数字化的电了时钟为基础的。因此研究实用电子时钟及其扩展应用有着非常现实的意义具有很大的实用价值。3发展趋势电子技术是十九世纪末

5、、二十世纪初开始发展起来的新兴技术,二十世纪发展最迅速,应用最广泛,成为近代科学技术发展的一个重要标志。在其推动下,现代电子产品正在以前所未有的革新速度,向着功能多样化、体积最小化、功耗最低化的方向天津电子信息职业技术学院 页号(1)迅速发展,电子技术的发展有力的推动社会生产力的发展。二、课题的研究内容、研究方法、研究手段、研究步骤1.研究内容本文主要研究单片机的工作原理,单片机的编程,以及基于单片机的电子时钟的设计和硬件的连接方法,通过研究电子时钟硬件中MCU模块、时钟模块和键盘模块、显示模块等的模块化设计与制作;软件同样采用模块化设计思路,包括中断模块、闹钟模块、时间调整模块的设计,并采用

6、C语言编写实现。本设计实现了时间与闹钟的修改功能,年、月、日和星期的显示功能。2.研究方法通过理论推导以及计算机模拟,通过计算机向单片机输入程序,从而可以研究单片机对电子时钟定时精确程度的影响,通过编程使单片机控制LED显示时间。3.研究手段采用AT89C52单片机作为系统的控制核心。通过LED液晶来显示器来实现时间和闹钟的显示及设定、跑表、重要日子倒计时、非接触式止闹等功能。4.研究步骤 了解AT89C52单片机的特点研究方案的初步制定制定出成熟的研究方案,并开始着手设计三、课题所需的参考书目 于海生.微型计算机控制技术M. 北京:清华大学出版社,1996年 杨欣.电子设计从零开始M. 北京

7、:清华大学出版社,2005年; 陶春明.单片机实用技术M.北京:民邮电出版社,2008年; 杨欣.电子设计从零开始M. 北京:清华大学出版社,2005年;指导教师审核意见:签字:(教师签字)年 月 日系毕业设计(论文)领导小组审阅意见:系主任签字:年 月 日天津电子信息职业技术学院 页号(2)注:本报告由学生本人填写(打印、宋体、小4号字)。毕 业 设 计(论 文)系别电子技术系专业班级电子信息工程技术电信S10-1姓名班级学号电信S10-1 56毕业设计(论文)题目:多功能电子时钟毕业设计(论文)评语: 指导教师签字:(教师签字) 年 月 日毕业设计(论文)总评成绩:(要求教师手写)系主任签

8、字:年 月 日天津电子信息职业技术学院教务处多功能电子时钟摘 要本文是基于AT89C52单片机数字钟的设计,通过多功能电子时钟的设计思路,详细叙述了系统硬件、软件的具体实现过程。论文重点阐述了电子时钟硬件中MCU模块、时钟模块和键盘模块、显示模块等的模块化设计与制作;软件同样采用模块化设计思路,包括中断模块、闹钟模块、时间调整模块的设计,并采用C语言编写实现。本设计实现了时间与闹钟的修改功能,年、月、日和星期的显示功能。并且通过对比实际的时钟,查找出了误差的来源,确定了调整误差的方法,尽可能的减少误差,使得系统可以达到实际数字钟的允许误差范围内。本文还涉及到非接触止闹功能,在有效范围内使用者不

9、需用手去寻找开关而关闭闹钟,该功能使本设计更具有人性化。该时钟还有重要日子倒计时功能,能够提前几天设定好时间,以避免遗忘重要日子。关键词:AT89C52单片机;电子时钟;模块化设计;C语言Multifunctional electronic clockABSTRACTThis article is based on AT89C52 microcontroller digital clock design, through multi-functional electronic clock design ideas, detailed description of the system hard

10、ware and software realization process. Paper focuses on the electronic clock hardware MCU module, clock module and keyboard module, display module, modular design and production; software as a modular design concept, including an interrupt module, alarm module, module design time to adjust and adopt

11、 the C language implementation. The Design and Implementation of the changes of time and alarm functions, year, month, day and week display. And by comparing the actual clock, find out the source of the error, the error method to determine the adjustment, as much as possible to reduce the error, all

12、ows the system to achieve the actual number of minutes of allowable error range. This also involves the function of non-contact only trouble in the effective range of users do not need a hand to find switch and turn off the alarm, this feature makes the design more user friendly. There are important

13、 days of the countdown clock function, set a good few days ahead of time, to avoid forgetting important occasions.KEY WORDS: AT89C52 microcontroller; electronic clock,;modular design,;C language目录一、系统总体设计11.系统总体设计22.方案论证2(1)总体方案论证2(2)模块方案论证3(3)止闹功能3二、系统模块设计41.时钟接口电路设计42.键盘接口电路设计53.液晶显示电路设计84.单片机电路设计

14、方案115.跑表功能设计146.非接触止闹电路设计147.报警电路设计148.重要日子倒计时功能设计159.看门狗电路15三、 软件设计181.系统软件设计综述182.系统软件流程图18四、 系统测试201.时钟功能的测试202.闹钟功能的测试203.跑表功能的测试204.重要日子倒计时功能的测试21结论22谢 辞23参考文献24附录25一、系统总体设计1.系统总体设计根据题目设计要求,要求实现时间和闹钟的显示及设定、跑表、重要日子倒计时、非接触式止闹等功能。系统上电自检后,实时实现小时、分钟、秒以及日历的显示和闹钟开关等指示信息的显示,通过按键可实现校对时间、设置闹钟时间、整点报时功能以及进

15、行跑表和对贡要日子倒计时的设定和显示。当闹钟时间到时,单片机通过晶体管、蜂鸣器来实现声报警。采用光电开关实现非接触式止闹的功能。针对此要求,本系统由以下几个模块构成,系统总体设计框图如图1-1所示: 图1-1 系统总体设计框图2.方案论证(1)总体方案论证采用AT89C52单片机作为系统的控制核心。单片机是一台简单的计算机,它在结构上的最大特点就是把CPU、存储器、定时器、I/O接口电路集成在一块大规模的集成电路芯片上。它有集成度高、体积小、控制功能强、低功耗、低电压,便于携带等优点。 (2)模块方案论证时钟模块采用专用时钟芯片实现,市场上现在又很多实时时钟芯片,如DS1302、PF8563、

16、X1227等,芯片内部都集成了时钟/日历功能,给时钟设计带来了很大的方便。因此,计时功能采用时钟芯片为宜。键盘模块采用矩阵式键盘,此类键盘采用行列式扫描方式, 当按键较多时可以有效的降低占用单片机I/O口的数目。由于本系统采用的是4×4式矩阵键盘,I/O口的接线比较多。显示模块采用液晶显示,液晶特别是具有汉字显示功能的液晶显示器,来实现本设计的显示功能,不仅可以显示基本的信息,而且还可以显示丰富的符号及文字指示信息,信息量丰富且直观。液晶显示具有功耗低、体积小、重量轻、寿命长,不产生电磁辐射等优点。(3)止闹功能止闹功能采用光电开关实现非接触止闹功能。因为光电开关利用物体对红外线的反

17、射,可检测到物体的有无,方便有效,人体只需要靠近传感器20CM以内就可产生信号,完成止闹功能。二、系统模块设计1.时钟接口电路设计本电子时钟系统的重要部分在于时钟和闹钟功能模块,这里所选用串行日历时钟芯片PCF8563。与采用并行总线与单片机进行数据通信的时钟芯片相比,PCF8563与单片机的连线大为减少,极大的节省了单片机的系统资源。时钟芯片与单片机的接口电路如图2所示。PCF8563是PHILIPS公司推出的一款工业级内含I²C总线接口功能的具有极低功耗的多功能时钟/日历芯片。PCF8563的多种报警功能、定时器功能、时钟输出功能以及中断输出功能能完成各种复杂的定时服务,甚至可为

18、单片机提供看门狗功能。内部时钟电路、内部振荡电路、内部低电压检测电路(1. 0V)以及两线制I²C总线通信方式,不但使外围电路极其简洁,而目也增加了芯片的可靠性。同时每次读写数据后,内嵌的字地址寄存器会自动产生增量。当然作为时钟芯片,PCF8563亦解决了2000年问题。因而,PCF8563是一款性价比较高的时钟芯片,它己被广泛用于电表、水表、气表、移动电话、传真机、便携式仪器以及电池供电的仪器仪表等产品领域。 图2-1 PCF8563时钟电路 PCF8563采用了I²C总线接口,虽然总线时序关系复杂,但我们可以利用PHILIPS公司提供的软件包,使得编程极为简单,可靠性极

19、强。在设计中我们卞要用到了PCF8563的计时功能和报警功能。PCF8563内部共有16个寄存器。其中OOH, 01H为控制方式寄存器,02H-08H为时间寄存器,09H-OCH为报警功能寄存器,ODH为时钟输出寄存器,OEH和OFH为定时器功能寄存器。由此可以看出芯片内部时间寄存器和报警寄存器在地址上是连在一起的,并且数据全部是以BCD码形式存放的,这样使得数据读写和处理变得相当简洁和便利。在本设计中,PCF8563通过SCL, SDA,/INT, CLKOUT与单片机相连,SDA, SCL,/INT, CLKOUT均为漏极开路,必须接上拉电阻。SCL为时钟输入端,数据随时钟信号同步输入器件

20、或从器件输出;SDA为双向引脚,用于行数据的输入输出;/INT是中断信号输出端,与单片机的P3. 3相连,可通过设置报警寄存器按指定时间在该脚产生报警信号,低电平有效;CLKOUT是时钟输出端,接至单片机的P2. 1脚,当闹铃时间到时,在PCF8563的内部产生中断标志AF,同时在/INT端产生一个中断(低电平有效),中断服务程序中通过软件编程使得CLKOUT,也就是单片机的P2. 1脚输出1Hz的脉冲,启动报警电路,蜂鸣器发出报警声。2.键盘接口电路设计在设计键盘接口电路时,我们使用HD7279A键盘控制器来扫描4 X 4的16键键盘,单片机通过中断方式从HD7279A读出键码接口电路如图2

21、-2所示:图2-2 键盘接口电路 HD7279A是比高公司生产的单片具有串行接口、可同时驱动8位共阴式数码管(或64只独立LED)的智能显示驱动芯片,该芯片同时可连接多达64键的键盘矩阵,一片即可完成LED显示及键盘接口的全部功能。它和微处理器之间采用串行接口,其接口和外围电路比较简单,且占用口线较少,因此可以提高单片机的效率和节省系统资源。加之它具有较高的性能价格比,因而在微型控制器、智能仪表、控制面板和家用电器等领域获得了日益广泛的应用。HD7279A的主要特点如下:带有串行接口,无需外围元件便可直接驱动LED;各位可独立控制译码/不译码、消隐和闪烁等属性;具有(循环)左移/(循环)右移指

22、令;具有段寻址指令,可方便地用来控制独立的LED显示管;64键键盘控制器内含去抖动电路。 HD7279A与微处理器仅需4条接口线,其中/CS为片选信号(低电平有效)。DATA为串行数据端,当向HD7279A发送数据时,DATA为输入端;当HD7279A输出键盘代码时,DATA为输出端。CLK为数据串行传送的同步时钟输入端,时钟的上升沿表示数据有效。KEY为按键信号输出端,该端在无键按下时为高电平;而在有键按下时变为低电平,并一直保持到按键释放为止。 HD7279A控制指令分为纯指令和带有数据的指令两大类。纯指令主要有六条,分别为:复位指令。指令代码为A4H,其功能为清除所有显示,包括字符消隐属

23、性和闪烁属性。测试指令。指令代码为BFH,其功能为将所有的LED点亮并闪烁,可用于自检。左移指令。指令代码为A1H,其功能为将所有的显示左移1位,移位后,最右位空(无显示),不改变消隐和闪烁属性。右移指令。指令代码为AOH,其功能与左移指令相似,只是方向相反。循环左移指令。指令代码为A3H,其功能为将所有的显示循环左移1位。移位后,最左位内容移至最右位,不改变消隐和闪烁属性。循环右移指令。指令代码为A2H,其功能与循环左移指令相似,只是方向相反。系统键盘排列如表2-1所示。 表2-1 4×4矩阵键盘1234567890ABCDEF其中,各键值的代表意义如下所示:0 9:调整时间、闹铃

24、、重要日子倒计时时所输入的数字键值; A:是否设定整点报时;第一次按下,有整点报时的功能, 即在整点时蜂鸣器响一下;第一次按下,无整点报时功能。B:第一次按下,设定重要日子倒计时功能;第一次按下,显示倒计时的天数。C:设定闹铃;D:校对调整时间;E:启动/停止/保持跑表的显示;第一次按下,跑表启动;第二次按下,跑表停止,并显示所跑的时间。F:确认键,返回显示时间的画面。3.液晶显示电路设计由于本系统信息显示量大,所以我们选用OCM4 X 8C中文模块的液晶显示器。它内含GB2312 16 X 16点阵国标以及简体汉字和ASCII码即可实现文本显示。此外,OCM中文模块系统液晶显示器也可用作一般

25、的点阵圆形显示器,并实现汉字、ASCII码,点阵圆形和变化曲线的同屏显示,此适合我们的需要。接口电路如图2-3所示:图2-3 OCM4*8C接线图 OCM4 X 8C是具有串/并接口,内部含有中文字库的图形点阵液晶显示模块。该模块的控制/驱动器采用台湾矽创电了公司的ST7920,因而具有较强的控制显示功能。该模块具有2. 7-5. 5V的宽工作电压范围,且具有睡眠、正常及低功耗工作模式,可满足系统各种工作电压及便携式仪器低功耗的要求。液晶模块显示负电压,也由模块提供,从而简化了系统电源设计。模块同时还提供LED背光显示功能。除此之外,模块还提供了画面清除、游标显示/隐藏、游标归位、显示打开/关

26、闭、显示字符闪烁、游标移位、显示移位、垂直画面旋转、反白显示、液晶睡眠/唤醒、关闭显示等操作指令。 OCM 4 X 8C中文模块不需初始化,设置初始化的工作都在上电时自动完成,实现了“即插即用”,其用户硬件接口采用REQ/BUSY握手协议,简单可靠。该液晶显示器采用请求/答应握手协议,BUSY高电平有效,表示OCM忙,不能接受命令;BUSY=0时,表示OCM空闲。同时REQ=1时通知OCM处理当前数据线上的数据。这是一种双向通讯。OCM4 X 8C的液晶显示屏为128X64点阵,可显示4行、每行8个汉字。为了便于简单、方便地显示汉字,该模块具有2Mb的中文字型CGROM,液晶该字型ROM中含有

27、8192个16 X 16点阵中文字库,同时,为了便于英文和其它常用字符的显示,具有16Kb的16X8点阵的ASCII字符库;为便于构造用户图形,提供了一个64 X 256点阵的GDRAM绘图区域,A为了便于构造用户所需字型,提供了4组16 X 16点阵的造字空间。利用上述功能,OCM4 X 8C可实现汉字、ASCII码、点阵图形、自造字体的同屏显示。OCM4 X 8C按照每个中文字符16 X 16点阵将显示屏分为4行8列,共32个区。每个区可显示1个中文字符或2个16X8点阵全高ASCII码字符,即每屏最多可实现32个中文字符或64个ASCII码字符的显示。OCM4 X 8C内部提供128X2

28、字节的字符显示RAM缓冲区 CDDRAM)。字符显示是通过将字符显示编码写入该字符显示RAM实现的。根据写入内容的不同,可分别在液晶屏上显示CGROM(中文字库)、HCGROM (ASCII码字库)及CGRAM(自定义字形)的内容。二种不同字符/字型的选择编码范围为:00000006H显示自定义字型,02H7FH显示半宽ASC工工码字符,A1AOHF7F阳显示8192种GB2312中文字库字形。字符显示RAM在液晶模块中的地址80H9FH。字符显示的RAM的地址与32个字符显示区域有着一一对应的关系。为便于和多种微处理器、单片机接口,OCM4 X 8C提供了多种串/并接口方式,使用其串行接口方

29、式可大大简化液晶显示模块与单片机之问的接口设计;同时,也使液晶显示模块显示汉字变得极为容易,从而改变过去单片机系统人机界面不够友好的弊端。因此,在此系统的设计中,采用2线串行接口方式。其工作操作时序如图2-4所示:图2-4 OCM4 X 8C的2线串行工作模式操作时序由图7可以看出,单片机与液晶模块之间传送1字节的数据共需24个时钟脉冲。首先,单片机要给出数据传输起始位,这单是以5个连续的“1”作数据起始位,如模块接收到连续的5个“1”,则内部传输被重置并且串行传输将被同步。紧接着,“RW”位用于选择数据的传输方向(读或写),“RS”位用于选择内部数据寄存器或指令寄存器,最后的第8位固定为“0

30、"。在此之后,下一个字节的数据或指令将被分为2个字节来串行传送或接收。数据或指令的高4位,被放在第2个字节串行数据的高4位,其低4位则置为“0"数据或指令的低4位被放在第3个字节的高4位,其低4位也置为“0",如此完成一个字节指令或数据的传送。需要注意的是,当有多个数据或指令要传送时,必须要等到一个指令执行完毕后再传送下一个指令或数据,否则,会造成指令或数据的丢失。这是因为液晶模块内部没有发送/接收缓冲区。 用OCM4 X 8C显示模块时应注意以下儿点:欲在某一个位置显示中文字符时,应先设定显示字符位置,即先设定显示地址,再写入中文字符编码。显示ASCII字符过程

31、与显示中文字符过程相同。不过在显示连续字符时,只须设定一次显示地址,由模块自动对地址加1指向下一个字符位置,否则,显示的字符中将会有一个空ASCII字符位置。当字符编码为2字节时,应先写入高位字节,再写入低位字节。模块在接收指令前,向处理器必须先确认模块内部处于非忙状态,即读取BF标志时BF需为“0”,方可接受新的命令。如果在送出一个指令前不检查BF标志,则在前一个指令和这个指令中间必须延迟一段较长的时间,即等待前一个指令确定执行完成。系统开机后,自动进入时钟和闹钟开关状态显示,画面如图2-5所示。2010年06月15日星期二12时01分00秒闹钟关 图2-5 系统开机画面显示4.单片机电路设

32、计方案AT89C52是美国ATMEL公司生产的低电压,高性能CMOS 8位单片机,片内含8K bytes的可反复擦写的只读程序存储器(PEROM)和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,与标准MCS-51指令系统及8052产品引脚兼容,片内置通用8位中央处理器(CPU)和Flash存储单元。功能强大的AT89C52单片机适合于许多较为复杂控制应用场合。AT89C52的卞要性能参数:与MCS-51产品指令和引脚完全兼容8K字节可重擦写Flash闪速存储器1000次擦写周期全静态操作:OHz-24MHz三级加密程序存储器256X8字

33、节内部RAM32个可编程工/0口线3个16位定时/计数器8个中断源可编程串行DRAT通道低功耗空闲和掉电模式AT89C52的引脚如图2-6所示:图2-6 AT89C52引脚图 PO口:PO口是一组8位漏极开路型双向IO口,也即地址/数据总线复用作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路。对端口PO写"1”时,可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。在Flash编程时,PO口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。 P1口:P1是一个带内部上拉电阻

34、的8位双向IO口。P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路,对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。与AT89C51不同之处是,P1. 0和P1. 1还可分别作为定时/计数器2的外部输入(P1. 0/T2)和输入(P1. 1/T2EX), P2口:P2是一个带有内部上拉电阻的8位双向I/0口。P2的输出缓冲级可驱动(吸收或输出电流)吐个TTL逻辑门电路,对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外

35、部信号拉低时会输出一个电流。在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVX CDPTR指令)时,P2口送出高8位地址数据。在访问8位地址的外部数据存储器(例如执行MOVX R1指令)时,P2口输出P2锁存器的内容。 P3口:P3口是一组带有内部上拉电阻的8位双向I/0口。P3输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。此时,被外部拉低的P3口将用上拉电阻输出电流。P3口除了作为一般的I/0口线外,更重要的用途是它的第一功能。RST:复位输入ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(

36、地址锁存允许)输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。对Flash存储器编程期间,该引脚还用于编程脉冲(PROG)。/PSEN:程序储存允许输出是外部程序存储器的读选通信号。 /EA/VPP:外部访问允许。 XTAL1:振荡器反相大器的及内部时钟发生器的输入端。XTAL2:振荡器反相大器的输出端。 AT89C52片内存储器中,80H-FFH共128个单元为特殊功能寄存器,但并非所有的地址都被定义,从80H-FFH共128个字节只有一部分被定义,还有相当一部分没有定义。对没有定义的单元读写将是无效的,读出

37、的数值将不确定,而写入的数据也将丢失。AT89C52共有6个中断向量:两个外部中断(INTO和INT1), 3个定时器中断(定时器0, 1, 2)和串行口中断。这些中断源可通过分别设置专用寄存器IE的置位或清0来控制每一个中断的允许或禁止。IE也有一个总禁止位EA,它能控制所有中断的允许或禁止。在本系统的设计中,将PCF8563的/INT端接到AT89C52的外部中断1/INT1上,将HD7279A的/KEY接到AT89C52的外部中断0/INTO上,而跑表的设计则利用了AT89C52的定时器0,每隔0. 01S就产生一次中断,实现了跑表的最小计数单位为百分秒。5.跑表功能设计本模块利用了AT

38、89C52的定时器0进行定时,每隔0. 01秒就产生一次中断,从而实现跑表的最小计时单位为百分秒。按下E键后,启动跑表,液晶显示如图10所示。再次按下E键后,跑表停止,显示所记的时间。按下F确认键后,显示当前的时间。跑表#时#分#秒#百分秒图2-7 跑表的显示其中,#为所显示的数值。进行初始化时,#均显示的为00。6.非接触止闹电路设计当闹钟定时到点时,会触发声报警,系统设计时采用漫射光电传感器检测人体止闹行为。当人体靠近传感器20CM以内时,P2. 2脚的电平发生变化,CPU检测到此信号时,执行相应的程序:令闹铃标志置0,将PCF8563的CLKOUT引脚置为低电平,修改相应的标志,从而达到

39、止闹的功能。电路如图2-8所示。图2-8 非接触止闹电路7.报警电路设计当闹钟定时到点时,会触发声音报警电路,声音报警电路如图2-9所示,图2-9 声音报警电路当闹钟定时到点时,PCF8563控制/状态寄存器2中的AF被置1,同时/INT引脚产生一个中断(低电平有效),由于/INT接至单片机的P3. 3脚,所以引发中断程序:PCF8563的CLKOUT输出1Hz的脉冲,由于CLKOUT接至单片机的P2. 1脚,所以P2. 1脚输出1Hz的脉冲,使得蜂鸣器间断性地发出鸣声。8.重要日子倒计时功能设计本模块运用单片机C51语言设计,关键是算出所选定的重要日期与当前日期的差值,再送入液晶显示屏显示。

40、按下B键后,进行重要日子的倒计时,液晶显示如图2-10所示。到数计日距离#年#月#日还有#天图2-10 重要日期倒计时液晶显示状态其中,#为需要设定的日期,初始时显示当前的日期,按数字键可进行设定日期。再次按下B键,XX处显示计算出来的天数。按下F确认键后,重新显示日期。9.看门狗电路单片机受到干扰后,会引起工作紊乱,致使PC值改变,产生比一般电路更为复杂的情况,使程序混乱,产生不可预料的结果。为了在单片机死机或遇到干扰程序跑飞的时候,系统能够自动复位,所以在系统中设计“看门狗”电路。此电路选用芯片X5045,其接口电路如图2-11所示:图2-11 “看门狗”电路就口X5045把微处理器外围器

41、件最基本的二种功能:看门狗定时器、电源监测和E²PROM集成在单个8引脚封装的CMOS器件内,从而很大程度上降低了系统成本,简化了电路设计,缩小了体积。看门狗定时器给单片机提供了独立的保护系统,一旦出现故障,在己选择的超时之后,RESET脚做出响应;VCC检测电路可使系统免受电压低状况的影响,读写次数大于100 000次,最少100年的数据保存期。除此之外,它还具有以下一些基本特点: 512字节串行E²PROM;可编程看门狗定时器(可设定看门狗超时时间,典型时间200ms, 600ms, 1. 4s或禁止);可编程的复位门限;SPI接口方式,最高可达1MHz串行时钟频率;E

42、²PROM存储器可分块或全部锁定保护;采用低功耗CMOS工艺,等待电流为10A,,工作电流为3mA;X5045的工作是通过软件设置实现的。X5045有一个8位指令寄存器,共有6条操作指令。指令、地址和数据都从MSB(最高位)开始传递,读写指令的位3表示E²PROM的高地址位As。 看门狗复位电路主要利用CPU 正常工作时,定时复位计数器使得计数器的值不超过某一值;当CPU不能正常工作时,由于计数器不能被复位,因此其计数会超过某一值,从而产生复位脉冲,使得CPU恢复正常工作状态。三、软件设计1.系统软件设计综述软件系统在本设计中尤其重要,基本功能大部分是由软件完成的,发挥功能

43、的关键控制部分同样需要软件的密切配合才能顺利实现。鉴于软件设计的复杂性和规模性,我们采用KEIL编译器支持的C语言编程,放弃了效率高但可读性不强的汇编语言。整个软件系统采用模块化的程序设计方法,共分为时间设定、闹铃设定、跑表设定和重要日子倒计时四个部分。软件系统的卞要特点是整个过程完全在键盘的控制之下,实现了完全的友好的人机交互功能。主程序通过判断键盘的输入情况调用不同的子程序。子程序的功能实现也是在键盘的配合之下完成的。此系统完成的卞要功能有:时间、日期设定与显示,闹铃设定,整点报时,跑表的启动/停止/保持显示/清除,对重要日子倒计时显示。2.系统软件流程图系统软件流程图见附录图3-1所示

44、四、系统测试1.时钟功能的测试 1.上电复位后,液晶显示初始设定的时间及日期,画面如图4-1所示:2010年06月15日星期二12时01分00秒 闹钟关图4-1 系统上电液晶显示状态2.按下设定时间键D,可以对时间进行调整;按下确认键F后能在新的时间点上运行,实现了时间设置功能。2.闹钟功能的测试1. 上电复位后,液晶显示“闹钟关”的字样;2. 按下设定闹铃键C,可进行闹钟时间的设定,画面如图4-2所示:闹钟设定00时00分图4-2 闹钟界面显示3. 按下确认键F后显示当前时间及日期,液晶显示“闹钟开”的字样;4. 时间到达闹钟设置值时系统发出声音报警;5. 当闹铃启动时,在止闹的光电传感器前方20CM内晃一下手或

温馨提示

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

评论

0/150

提交评论