1、洛阳理工学院毕业设计(论文)I多功能电子时钟摘 要本文是基于 AT89C52 单片机数字钟的设计,通过多功能电子时钟的设计思路,详细叙述了系统硬件、软件的具体实现过程。论文重点阐述了电子时钟硬件中 MCU 模块、时钟模块和键盘模块、显示模块等的模块化设计与制作;软件同样采用模块化设计思路,包括中断模块、闹钟模块、时间调整模块的设计,并采用 C 语言编写实现。本设计实现了时间与闹钟的修改功能,年、月、日和星期的显示功能。并且通过对比实际的时钟,查找出了误差的来源,确定了调整误差的方法,尽可能的减少误差,使得系统可以达到实际数字钟的允许误差范围内。本文还涉及到非接触止闹功能,在有效范围内使用者不需
2、用手去寻找开关而关闭闹钟,该功能使本设计更具有人性化。该时钟还有重要日子倒计时功能,能够提前几天设定好时间,以避免遗忘重要日子。关键词:AT89C52 单片机,电子时钟,模块化设计,C 语言洛阳理工学院毕业设计(论文)IIMultifunctional electronic clockABSTRACTThis article is based on AT89C52 microcontroller digital clock design, through multi-functional electronic clock design ideas, detailed description o
3、f the system hardware 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
4、 adjust and adopt 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 redu
5、ce the error, allows 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. Th
6、ere are important 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洛阳理工学院毕业设计(论文)III目 录前 言 .1第 1章 系统总体要求 .21.1 系统总体设计.21.2 方案论证.1.2.1 总体方案论证 .1.2.2 模块方案论证.
7、1.2.3 止闹功能.第 2 章 系统模块设计 .42.1 时钟接口电路设计.42.2 键盘接口电路设计.52.3 液晶显示电路设计.52.4 单片机电路设计方案.2.5 跑表功能设计.2.6 非接触止闹电路设计.2.7 报警电路设计.2.8 重要日子倒计时功能设计.2.9 看门狗电路.第 3 章 软件设计 .63.1 系统软件设计综述.63.2 系统软件流程图.6第 4 章 系统测试 .74.1 时钟功能的测试.74.2 闹钟功能的测试.74.3 跑表功能的测试.4.4 重要日子倒计时功能的测试.结 论 .9谢 辞 .10参考文献 .11洛阳理工学院毕业设计(论文)IV附 录 .13外文资料
8、翻译 .14洛阳理工学院毕业设计(论文)1前 言电子时钟己成为人们日常生活中必不可少的物品,广泛用于个人家庭以及车站、码头、剧院、办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大的方便。随着技术的发展,人们己不再满足于钟表原先简单的报时功能,希望出现一些新的功能,诸如日历的显示、闹钟的非接触式止闹、跑表功能、重要日期倒计时显示等,以带来更大的方便,而所有这些,又都是以数字化的电了时钟为基础的。因此,研究实用电子时钟及其扩展应用,有着非常现实的意义,具有很大的实用价值。由于数字集成电路技术的发展和采用了先进的石英技术,使电子时钟具有走时准确、性能稳定、携带方便等优点,它还用于计时、自动报
9、时及自动控制等各个领域。虽然现在市场上己有现成的电子时钟集成电路芯片出售,价格便宜,使用也灵活,如可以随意设置时、分、秒的输出,改变显示数字的大小等,并目由于集成电路技术的发展,特别是 MOS 集成电路技术的发展,使电子时钟具有体积小、携带方便,但是本设计介绍的多功能电子时钟可以满足使用者的一些特殊要求,输出方式灵活、功耗低、计时准确、性能稳定、维护方便等优点。实用电子时钟是一个时间控制系统,既能作为一般的时间显示器,也可作为一个定时控制器,驱动负载或显示信息,同时可以根据需要扩展其功能。在此项目的设计研究过程中需综合运用所学的模拟电了技术、数字电了技术、单片机原理与应用、EDA 等课程的知识
10、,掌握实用电子时钟的设计、组装与调试方法,利用现代的 EDA、单片机等新电了技术以及现代的设计手段,系统地培养了综合设计、操作调试、故障处理的能力,达到综合素质以及创新能力的提高。洛阳理工学院毕业设计(论文)2第 1章 系统总体设计1.1 系统总体设计根据题目设计要求,要求实现时间和闹钟的显示及设定、跑表、重要日子倒计时、非接触式止闹等功能。系统上电自检后,实时实现小时、分钟、秒以及日历的显示和闹钟开关等指示信息的显示,通过按键可实现校对时间、设置闹钟时间、整点报时功能以及进行跑表和对贡要日子倒计时的设定和显示。当闹钟时间到时,单片机通过晶体管、蜂鸣器来实现声报警。采用光电开关实现非接触式止闹
11、的功能。针对此要求,本系统由以下几个模块构成,系统总体设计框图如图 1-1 所示: 图1-1 系统总体设计框图1.2方案论证 1.2.1 总体方案论证 采用 AT89C52 单片机作为系统的控制核心。单片机是一台简单的计算机,它在结构上的最大特点就是把 CPU、存储器、定时器、I/O 接口电路集成在一块大规模的集成电路芯片上。它有集成度高、体积小、控制功能强、低功耗、低电洛阳理工学院毕业设计(论文)3压,便于携带等优点。 1.2.2 模块方案论证时钟模块采用专用时钟芯片实现,市场上现在又很多实时时钟芯片,如DS1302、PF8563 、X1227 等,芯片内部都集成了时钟/日历功能,给时钟设计
12、带来了很大的方便。因此,计时功能采用时钟芯片为宜。键盘模块采用矩阵式键盘,此类键盘采用行列式扫描方式, 当按键较多时可以有效的降低占用单片机 I/O 口的数目。由于本系统采用的是 44 式矩阵键盘,I/O 口的接线比较多。显示模块采用液晶显示,液晶特别是具有汉字显示功能的液晶显示器,来实现本设计的显示功能,不仅可以显示基本的信息,而且还可以显示丰富的符号及文字指示信息,信息量丰富且直观。液晶显示具有功耗低、体积小、重量轻、寿命长,不产生电磁辐射等优点。1.2.3 止闹功能止闹功能采用光电开关实现非接触止闹功能。因为光电开关利用物体对红外线的反射,可检测到物体的有无,方便有效,人体只需要靠近传感
13、器 20CM 以内就可产生信号,完成止闹功能。洛阳理工学院毕业设计(论文)4第 2 章 系统模块设计2.1 时钟接口电路设计本电子时钟系统的重要部分在于时钟和闹钟功能模块,这里所选用串行日历时钟芯片 PCF8563。与采用并行总线与单片机进行数据通信的时钟芯片相比,PCF8563 与单片机的连线大为减少,极大的节省了单片机的系统资源。时钟芯片与单片机的接口电路如图 2 所示。PCF8563 是 PHILIPS 公司推出的一款工业级内含 IC 总线接口功能的具有极低功耗的多功能时钟/ 日历芯片。 PCF8563 的多种报警功能、定时器功能、时钟输出功能以及中断输出功能能完成各种复杂的定时服务,甚
14、至可为单片机提供看门狗功能。内部时钟电路、内部振荡电路、内部低电压检测电路(1. 0V)以及两线制 IC 总线通信方式,不但使外围电路极其简洁,而目也增加了芯片的可靠性。同时每次读写数据后,内嵌的字地址寄存器会自动产生增量。当然作为时钟芯片,PCF8563 亦解决了 2000 年问题。因而,PCF8563是一款性价比较高的时钟芯片,它己被广泛用于电表、水表、气表、移动电话、传真机、便携式仪器以及电池供电的仪器仪表等产品领域。图 2-1 PCF8563 时钟电路PCF8563 采用了 IC 总线接口,虽然总线时序关系复杂,但我们可以利用洛阳理工学院毕业设计(论文)5PHILIPS 公司提供的软件
15、包,使得编程极为简单,可靠性极强。在设计中我们卞要用到了 PCF8563 的计时功能和报警功能。PCF8563 内部共有 16 个寄存器。其中 OOH, 01H 为控制方式寄存器,02H-08H 为时间寄存器,09H-OCH 为报警功能寄存器,ODH 为时钟输出寄存器,OEH 和 OFH 为定时器功能寄存器。由此可以看出芯片内部时间寄存器和报警寄存器在地址上是连在一起的,并且数据全部是以 BCD 码形式存放的,这样使得数据读写和处理变得相当简洁和便利。在本设计中,PCF8563 通过 SCL, SDA,/INT, CLKOUT 与单片机相连, SDA, SCL,/INT, CLKOUT 均为漏
16、极开路,必须接上拉电阻。SCL 为时钟输入端,数据随时钟信号同步输入器件或从器件输出;SDA 为双向引脚,用于行数据的输入输出;/INT 是中断信号输出端,与单片机的 P3. 3 相连,可通过设置报警寄存器按指定时间在该脚产生报警信号,低电平有效;CLKOUT 是时钟输出端,接至单片机的 P2. 1 脚,当闹铃时间到时,在PCF8563 的内部产生中断标志 AF,同时在/INT 端产生一个中断(低电平有效),中断服务程序中通过软件编程使得 CLKOUT,也就是单片机的 P2. 1 脚输出 1Hz 的脉冲,启动报警电路,蜂鸣器发出报警声。2.2 键盘接口电路设计在设计键盘接口电路时,我们使用 H
17、D7279A 键盘控制器来扫描 4 X 4 的 16键键盘,单片机通过中断方式从 HD7279A 读出键码接口电路如图 2-2 所示:洛阳理工学院毕业设计(论文)6图 2-2 键盘接口电路HD7279A 是比高公司生产的单片具有串行接口、可同时驱动 8 位共阴式数码管( 或 64 只独立 LED)的智能显示驱动芯片,该芯片同时可连接多达 64 键的键盘矩阵,一片即可完成 LED 显示及键盘接口的全部功能。它和微处理器之间采用串行接口,其接口和外围电路比较简单,且占用口线较少,因此可以提高单片机的效率和节省系统资源。加之它具有较高的性能价格比,因而在微型控制器、智能仪表、控制面板和家用电器等领域
18、获得了日益广泛的应用。HD7279A 的主要特点如下:带有串行接口,无需外围元件便可直接驱动 LED;各位可独立控制译码/不译码、消隐和闪烁等属性 ;具有(循环) 左移 /(循环)右移指令;具有段寻址指令,可方便地用来控制独立的 LED 显示管;64 键键盘控制器内含去抖动电路。HD7279A 与微处理器仅需 4 条接口线,其中/CS 为片选信号(低电平有效)。DATA 为串行数据端,当向 HD7279A 发送数据时,DATA 为输入端;当 HD7279A 输出键盘代码时,DATA为输出端。CLK 为数据串行传送的同步时钟输入端,时钟的上升沿表示数据有效。KEY 为按键信号输出端,该端在无键按下时为高电平;而在有键按下时变为低电平,并