课程设计说明书课程设计名称:专业课程设计课程设计题目:电子钟的设计学院名称:信息工程学院专业:电子信息工程班级: XXXXXX 学号: XXXXXXXX 姓名: XXXX 评分:教师: XXXXXX20 XX 年 X 月 X 日当今信息科技高速发展,使用方便、低成本电子设备已逐步成为我们日常生活中电子产品的主力军。
用软件代替硬件的电子设备能大大地节省成本,且有利于资源的节约,因此,以软代硬的设计必将成为我们现代设计的主流。
本设计是利用MCS-51系列单片机内部的定时器/计数器进行中数年定时,配合软件延时实现时、分、秒的计时。
该方案节省硬件成本,且能够使设计者在定时/计数器的使用中及程序设计方面得到锻炼和提高,因此本系统将采用软件方法实现计时。
关键词:单片机计数器软件第一章实验要求及设计思路 (4)1.1 设计内容及要求 (4)1.2 设计的目与和意义 (4)1.3 设计的基本思路与主要内容 (5)第二章系统组成及工作原理 (6)2.1 系统组成 (6)2.2工作原理 (7)第三章硬件设计与分析 (9)3.1 硬件设计原理 (9)3.2 AT89C51单片机介绍 (9)3.3单片机最小应用系统 (9)3.4显示电路 (11)3.5 键盘及其接口 (12)第四章软件设计 (14)4.1 主程序设计 (14)4.2 定时中断程序 (17)4.3 显示子程序 (17)第五章调试与运行 (19)第六章结论与体会 (20)参考文献 (21)附录一系统原理图 (22)附录二元件清单 (23)附录三程序清单 (24)第一章 实验要求及设计思路1.1 设计内容及要求设计一个电子钟,要求如下:(1) 利用单片机最小系统设计一个电子钟(不能采用单片机开发系统)(2) 用8255扩展键盘及显示接口(3) 显示方式:** 时** 分** 秒(4) 时间可以任意修改1.2 设计的目的与意义人类的生活包括:工作、学习、休息以及参与社会的多种实践活动,环环有条理,更加丰富多彩。
应该说时钟的计时功能与人类的各种行为和活动有着密切的联系,于是时钟的作用便体现出来,生活中有许多人,因为只顾工作而忘记时间,从而耽误了重要的安排或者计划,造成不可挽回的损失,使之后悔莫及。
我们要养成良好的时间观念,就需要电子钟时刻提醒我们。
因此,电子钟已成为人们日常生活中必不可少,它的应用非常广泛,应用于家庭以及车站、码头、剧场、办公室等公共场所,给人们的生活、学习、工作、娱乐带来极大的方便。
现在投入生产的大多是智能时钟,它的功能很全面,但价格有点昂贵,大多数学生或者经济条件较差的人,想要拥有它,都有点困难。
因此,在这里设计一个较简单的电子钟,它能完成计时和校时的功能。
这个时钟系统很简单,投入生产的成本很低,因此,它的价格比较便宜,对于学生很实用。
单 片 机 显示器 键盘1.3 设计的基本思路与主要内容设计一个电子产品,首先了解它能实现的功能,时钟系统最基本的功能就是实现计时,在这里设计的数字电子时钟,它能实现计时和校时的功能,给电子钟加上电自动计时,设计一个按键对时钟进行复位和三个按键对时间进行调整。
硬件设计很简单,主要包括:单片机、按键电路、驱动显示电路,以及LED显示器四个部分。
单片机选用AT89C51芯片,它无须外扩程序存储器,设计电路很简单。
由于只用了四个按键,所以采用独立式按键使设计更简单。
显示时、分、秒加两个分隔符,采用8位的数码管,利用8255扩展的数码管及键盘达到时间显示和修改的功能。
简易数字时钟可实现校时和整点报时功能,该软件采用C语言来实现,主要包括主程序、键输入程序、显示程序、定时程序和中断程序等软件模块。
把原程序加入原理图,做出电子钟的仿真,以秒计数并显示时、分、秒。
其中秒和分为60进制,小时为24进制计数。
可通过按键实现时钟复位和分、秒、时的校正。
第二章 系统组成及工作原理2.1 系统组成电子钟的电路图主要由单片机(AT89C51)、键盘电路、驱动显示电路和LED 显示器四部分组成,它主要实现时钟的显示,以及对时、分、秒进行调整,即实现调时的功能。
其数字钟系统整体结构如图2-1所示。
图2-1 电子钟系统整体结构1. 显示方案方案一:静态显示就是当CPU 将要显示的字或字段码送到输出口,显示器就可以显示出所要显示的字符,如果CPU 不去改写它,它将一直保持下去;静态显示硬件开销大,电路复杂,信息刷新速度慢。
方案二:动态显示则是一位一位地轮流点亮显示器地各个位(扫描)。
对于显示器的每一位而言,每隔一段时间点亮一次;动态显示耗能较小,但编写程序较复杂。
动态显示硬件连接简单,信息刷新速度快。
由于本次设计是对时间进行显示,如采用静态显示,则所占用的I/O 口较多,电路较复杂,所以在此选择的是方案二,采用动态显示。
七 段 数 码 管 AT89C51 驱动 LED 显示器 位选按 键2.键盘方案方案一:独立式键盘。
独立式键盘的各个按键相互独立,每个按键独立地与一根数据输入线(单片机并行接口或其它芯片的并行接口)连接。
独立式键盘配臵灵活,软件结构简单,但每个按键必须占用一根接口线,在按键数量不多时,接口线占用多。
所以,独立式按键常用于按键数量不多的场合。
方案二:矩阵式键盘。
矩阵式键盘采用的是行列式结构,按键设臵在行列的交点上.(当接口线数量为8时,可以将4根接口线定义为行线,另4根接口线定义为列线,形成4*4键盘,可以配臵16个按键。
)由于本设计只用了四个按键,不需要采用矩阵式键盘,所以选用第一种方案,采用独立式键盘。
3.计时方案采用软件控制:利用单片机内部的定时/计数器进行定时,配合软件定时实现时、分、秒的计时。
该方案能够使设计者,在设计的过程中容易实现,且节省硬件成本,因此本系统将采用软件方法实现计时。
2.2工作原理AT89C51内部有两个定时器,利用它们可以获得精准的时间。
设计中定义40H-47H8个单元为时间显示缓冲区,里面存放00H-0AH 之间的数,其中0AH在查表时会查到‘—’的字形码。
我们让定时器T1定时50ms。
同时再定义一个单元来记录T1定时器记满50ms 的次数,当该单元中的次数达到了20次时,即时间走了1s钟,马上执行时间加1s的程序。
即要对40H-47H中的秒缓冲单元加一,再将更新后的40H-47H依次查表后送8255去显示,这样便实现了电子钟走时的功能。
8255的PC口接有按键开关,平时不按下,对应的PC口会获得一个高电平,可一旦有键按下,对应的PC口便会接地而获得一个低电平。
设计中只使用了五个PC口,剩余的三个PC口全部接地。
这样,无键按下或只按下一个键PC口都会有一个确定的键值对应着。
例如,C0-C4接着K1-K5五个按键开关,C5-C7是接地的。
根据上面所述可知,无键按下时,单片机读到PC口的值为1FH,当K1按下时为1EH。
同理,K2对应1DH,K3对应1BH ,K4对应17H ,K5对应0FH。
如此,我们便可在程序中根据读取到的键值让单片机去执行相应的设臵时、分、加、减和确定等功能程序。
数码管的动态显示是指一位一位地轮流点亮各个数码管。
对于每一个数码管来说,每隔一段时间点亮一次。
通常点亮时间为1ms 左右,相隔时间为20ms。
图1.3.1中,PA口的输出为段数据口,接显示器的各个段极,PB口输出为位扫描口,接数码管的公共极。
显示时,首先使PB口的B7为低电平,B1-B7为高电平,则仅第一位数码管的公共阴极为低电平(被选通);同时PA口输出第一个显示数据的段码,这时第一位数码管将显示出第一个显示数据。
持续1ms左右后,使B0为高电平,关闭第一个数码管,随后使B1为低电平,选通第二位数码管,并由PA口输出第二个显示数据,并持续1ms左右。
用类似的方法依次选通第3,第4,〃〃〃,第8位即完成一次循环显示。
如果连续地循环便可在数码管上稳定地显示所需显示的内容。
图2-2 电子钟硬件电路图第三章硬件设计与分析3.1 硬件设计原理时钟电路的核心是AT89C51单片机,其内部带有2KB的可反复擦写的只读Flash程序存储器和128 bytes的随机存取数据存储器(RAM),无须外扩程序存储器。
电脑时钟没有大量的运算和暂存数据,现有的128B片内RAM已能满足要求,也不必外扩片RAM。
3.2AT89C51单片机介绍AT89C51是一个低电压,高性能CMOS 8位单片机,片内含2k bytes的可反复擦写的只读Flash程序存储器和128 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内臵通用8位中央处理器和Flash存储单元,所以说AT89C51是一个功能强大的单片机。
AT89C51是一个低功耗高性能单片机,它有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,2个16位可编程定时计数器,2个全双工串行通信口,AT89C51可以按照常规方法进行编程,也可以在线编程。
其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。
同时AT89C51的时钟频率可以为零,即具备可用软件设臵的睡眠省电功能,系统的唤醒方式有RAM、定时/计数器、串行口和外中断口,系统唤醒后即进入继续工作状态。
省电模式中,片内RAM将被冻结,时钟停止振荡,所有功能停止工作,直至系统被硬件复位方可继续运行。
3.3单片机最小应用系统时钟电路和复位电路是单片机最小应用系统中必不可少的。
单片机时钟电路图,如图3-1所示:XTAL1和XTAL2分别为反向放大器的输入和输出。
该反向放大器可以配臵为片内振荡器。
石晶振荡和陶瓷振荡均可采用。
如采用外部时钟源驱动器件,XTAL2应不接。
有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。
图3-1 单片机时钟电路图复位是使单片机或系统中的其它部件处于某种确定的初始状态。
单片机的工作就是从复位开始的,当在单片机的RST引脚引入高电平并保持2个机器周期时,单片机内部就执复位操作(若该引脚持续保持高电平,单片机就处于循环复位状态)。
实际应用中,复位操作有两种基本的形式:一种是上电复位,另一种是上电与按键均有效的复位。
由于本次设计采用的是上电复位,所以这里只介绍上电复位,如下图3-2所示:图3-2上电复位电路上电复位要求接通电源后,单片机自动实现复位操作。
常用的上电复位如上图所示。
上电瞬间RST引脚获得高电平,随着电容C1的充电,RST引脚的高电平将逐渐下降。
3.4显示电路一、七段LED显示器的原理显示器是单片机应用系统常用的设备,包括LED、LCD等。
LED 显示器由若干个发光二极管组成。