1、 毕业设计(设计) 论文题目: 电子闹钟设计 系 部: 电子信息工程系 专业名称: 电子信息工程技术 班 级: 09432 学 号: 24 姓 名: 龚鹏 指导老师: 吴文亮 完成时间: 2012 年 4 月 30 日 南京交通职业技术学院1目录摘 要: .21概述 .31.1 电子闹钟发展趋势 .31.2 电子闹钟的重要意义 .31.3 本课题研究的主要内容 .32.电子闹钟的系统设计 .42.1 AT89S51 单片机的特性 .42.2 电子闹钟的硬件设计 .52.2.1 硬件选择 .52.2.2 系统组成 .52.2.3 系统设计 .52.3 电子闹钟的软件设计 .72.3.1 子程序及
2、其功能简介 .82.3.2 程序设计 .83系统的调试和性能分析 .93.1 系统的调试方法 .93.2 系统的性能分析 .94.结论 .10致谢词 .11参考文献 .12附录:电子闹钟设计原理图 .13南京交通职业技术学院2电子闹钟设计摘 要:电子闹钟是一种应用非常广泛的日常计时工具,数字显示的日历钟已经越来越流行,特别是适合在家庭居室、办公室、大厅、会议室、车站和广场等使用,壁挂式 LED 数码管显示的日历钟逐渐受到人们的欢迎。首先介绍设计电子闹钟所涉及的主要硬件和特性,然后说明软件设计的思路,程序结构及流程,并在测试软件上进行调试和修改,以完成电子闹钟的基本要求,即可以随意设定起始时间,
3、有秒显示功能,可以设定闹钟,停止时由电池供电等功能。关键词:单片机 集成电路 电子闹钟硬件 电子闹钟软件Design of electronic clockAbstact:Electronic alarm clock is a very wide application of daily timing tool, digital display clock and calendar has become increasingly popular, especially for the family room, office, meeting room, hall, station and sq
4、uare, wall mounted LED digital tube display calendar clock gradually popular.First introduced the design of electronic clock to major hardware and characteristics, and then shows the idea of software design, program structure and process, and the test software to test and modify, in order to complet
5、e the basic requirements of electronic clock, which can set the start time, a second display function, can be set the alarm, stop when powered by batteries and other functionsKeywords: single-chip Integrated circuits Electronic alarm clock hardware Electronic alarm clock software南京交通职业技术学院31概述电子闹钟在科
6、学技术高度发展的今天,千家万户都少不了它,所以很多家庭个人都需要有一个电子闹钟,为人们提供报时方便。本文给出了一种以AT89S51 单片机电子闹钟设计方法,从而给人们带来更为方便的工作与生活。1.1电子闹钟发展趋势单片机电子闹钟是具发前闹钟创新性的系统,它代表了时代的发展趋势。在原材料价格不断上涨、下游渠道商实力膨胀、价格战越来越激烈、行业利润日趋微薄的背景下,日前,中国的电子闹钟在节能化、环保化、创新型转变过程中,正进行新一轮闹钟赛跑。1.2电子闹钟的重要意义20 世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度
7、的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。 时间对人们来说总是那么宝贵,工作的忙碌性和繁杂性容易使人忘记当前的时间。钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、按时自动打铃、时间程序自动控制、定时广播、定时启闭电路、定时开关烘箱、通断动力设备,甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。1.3本课题研究的主要内容首先介绍设计电子闹钟所涉及的主要硬件和特性,然后说明软件设计的思路,程序结构及流程,并在测试软件上进行调试修改,以完成电子闹钟的
8、基本要求,即可随意设定起始时间,有秒显示功能,有 12/24 时制选择,可设定闹钟,由电池供电等功能。南京交通职业技术学院42.电子闹钟的系统设计2.1 AT89S51单片机的特性Atmel 公司的 AT89S51 芯片具有以下特性:(1) 指令集和芯片引脚与 Intel 公司的 8051 兼容;(2) 4KB 片内在系统可编程 Flash 程序存储器;(3) 时钟频率为 033MHz;(4) 128 字节片内随机读写存储器(RAM);(5) 32 个可编程输入/输出引脚;(6) 2 个 16 位定时/计数器;(7) 6 个中断源,2 级优先级;(8) 全双工串行通信接口;(9) 监视定时器;
9、(10) 2 个数据指针。单片机的最小应用系统电路指的是它可以正常工作的最简单电路组成。AT89S51 单片机的最小应用系统电路如图 1 所示,该系统中包含 4 个电路部分:供电电路、程序存储器选择电路、时钟电路、复位电路。图 1 AT89S51 单片机最小应用系统电路南京交通职业技术学院52.2电子闹钟的硬件设计2.2.1 硬件选择单片机选用 AT89S51 型,它是一种带 4K 字节闪烁可编程可擦除只读储存的低电压、高性能 CMOS8 位微处理器,该器件采用 ATMEL 高密度非易失性存储器制造技术与工业标准的 MCS-51 指令集和输出管脚相兼容,由于将多功能 8 位CPU 和闪烁存储器
10、组合在单个芯片中,ATMEL 的 AT8951 是一种高效微控制器,为很多嵌入控制系统提供了一种灵活性高且廉价的方案。整体系统选用 AT89S51 单片机,时钟芯片 DS1302,数码管显示驱动芯片MAX7219。共阴极数码管 8 个,4511 七段译码芯片 1 片, 24M 晶振 1 个。2.2.2 系统组成该数字闹钟包括以下几个组成部分:(1) 显 示 屏 : 由 6个 七 段数码管组成,用于显示当前时间(时 分 秒)或设置的闹钟时间;(2) KEY 键:用于输入新的时间或新的闹钟时间时,对每位输入数字的确认;(3) TIME(时间)键:用于确定新的时间设置; (4)闹钟键:用于确定新的闹
11、钟时间设置,或显示已设置的闹钟时间;(5) 扬声器:在当前时钟时间与闹钟时间相同时,发出响声。2.2.3 系统设计(1)控制器。控制器是电子闹钟设计的核心部分,按设计要求产生相应的控制逻辑,以控制其他各部分的工作。由程序计数器、指令寄存器、指令译码器、时序产生器和操作控制器组成,它是发布命令的“决策机构” ,即完成协调和指挥整个计算机系统的操作。(2)计数器。计数器实际上是一个异步复位、异步置位的累加器。通常情况下进行时钟累加计数,必要时可以置入新的时钟值,然后从该值开始新的计数。(3)寄存器。寄存器用于保存用户设置的闹钟时间,是一个异步复位寄存器。寄存器是中央处理器内的组成部份,是有限存贮容
12、量的高速存贮部件,它们可用来暂存指令、数据和位址。(4)分频器。分频器将高速的外部时钟频率分频成每一分钟一次的时钟频率,以便进行时钟计数。由于石英晶体振荡器产生的频率很高,要得到秒脉冲,需要用分频电路。南京交通职业技术学院6(5)显示电路。显示器根据需要显示当前时间、用户设置的闹钟时间或用户通过键盘输入的新时间,同时判断当前时间是否已到了闹钟时间,实际上是一个多路选择比较器。(6)计时器。在计时过程中,系统利用 89S51 自身的计时器 T0 作为时钟基准,计时器中断的准确度直接关系到整个系统的精度,因此获取精确的定时时钟信号成为该系统的关键。AT89S51 单片机内有 2 个可编程的 16
13、位定时器计数器,并工作在方式 l 下,晶振频率为 12MHz。电子闹钟的系统硬件电路如图 2 所示南京交通职业技术学院7图 2 系统硬件电路图2.3电子闹钟的软件设计AT89S5l 内部定时/计数器 T0 和 Tl 设置为定时器模式 l 工作方式作为电子时钟及电子秒表的计时基准。定时器 T0 产生 10 ms 的中断信号,每经过南京交通职业技术学院81t30 次中断,时钟秒位加一,秒位经 60 次加一后向时位进位,当时问为 23 时59 分 59 秒时,秒位再加一后变为 00 时 00 分 00 秒当按键切换为电子秒表功能时,T0 每产生一次中断,十毫秒单元加一,十毫秒单元经过 l0 次加一后
14、,百毫秒单元加一。软件设计分为主程序、定时器 T0 和定时器 T1 中断服务程序及相应的子程序。2.3.1 子程序及其功能简介(1) 比较程序每当秒存储单元的内容为 0 时,系统通过调用比较子程序可判断当前时间是否符合闹铃条件,若符合,则调用发音子程序使蜂鸣器发出闹铃声音。(2) 检测按键程序当系统检测到某个案件被按下时,转到相应子程序处理,可实现校时、设定闹铃时间的功能(3) 显示程序系统通过调用显示子程序,可将显示缓冲区里的内容通过动态扫描方式输出到数码管显示器。(4) 时间设置程序系统通过按键检测,更改显示数值,从而实现对当前时间修改的功能。2.3.2 程序设计我们利用芯片和软件编程结合
15、的思路。下面将对照程序的构成来阐述我对简易闹钟的方案设计,具体设计方案如下:(一)在主程序中,填写中断向量表,应用 8255A 的 IRQ7 和 IRQ5 端。利用 8253A 和 8259A 完成计时一秒的功能,然后通过更新时间的子程序完成时间跳变的功能,待到新的时间判断是否到达设定的闹钟的时间,如果是,则启动扬声器;如果否,则继续进行显示时间。(二)闹钟的时间是变化的,在更新时间的子程序中,首先判断更改后的秒数是否小于 10,如果是,则返回主程序;如果否,则秒的个位跳变成 0,秒的十位加一;再次判断秒的十位,过程同判断秒的个位相同。 (三)在显示时间的子程序中,时间从 0,0,0,0 开始
16、显示。南京交通职业技术学院93系统的调试和性能分析3.1系统的调试方法整个系统调试的主要思想是:先每个模块进行调试,然后整个系统一起调试。先软硬件分开调试,然后一起调试。遵循先部分后整体的原则。系统的在调试过程中要注意以下几点:(1)硬件电路设计完之后,在上电之前一定要先用万用表检测电源和地之间是否短路。(2)上电之后要用示波器观察信号的在电路中变化的情况,与设计当初的情况相比较,找出差别,并进行分析。(3)软件调试过程中可以使用断点、单步执行等常用的方法。(4)软硬件联调时,要注意软件部分要一个功能一个功能的调试。3.2 系统的性能分析系统能在设定的时间内闹铃,必须调用一次显示子程序后才能再次取反,否则在发音期间不能显示,而调用一次显示子程序需要的时间大约为 6ms(6 位每位 1ms),所以振荡频率 f=1/T=1/(2*6ms)83Hz,显然这个频率过低。经测试,其时钟误差约为 3 秒天,这是因为从定时器向 CPU 发出中断申请信号到重装定时初值的过程需要一定的时间。本系统通过测试,能够实现以下功能:(1)按键输入(2)闹铃声音(3)LED 显示。