1、毕业设计(论文)题 目: 基于单片机的作息时钟系统 专 业: 电子测量技术与仪器 班 级: 09251 班 学 号: 19 号 姓 名: 尹 林 指导老师: 高 燕 成都电子机械高等专科学校二一二年六月基于单片机的作息时钟系统设计 成都电子机械高等专科学校 I论 文 摘 要本设计是作息时钟系统设计,由单片机最小系统、按键模块、数码管显示模块、闹钟模块组成。采用单片机 AT89C52 与 12MHZ 晶振相连;通过按键K1、K2、K3、K4、K5 控制时间的显示、校正、闹钟时间设定。数码管显示模块用来显示时间,显示格式为“时分” ,并能够根据需要显示年、月、日,由数码管小数点闪动作为秒计数;闹钟
2、模块进行到时提醒并作出相应动作:发光二极管闪亮,同时播放一段音乐。本设计中,利用单片机定时器设计时间计时处理,采用单片机内部的 T0 定时器溢出中断来实现,工作在 T1 方式下,定时 50 微妙,则连续中断 20 次即为一秒,得到了我们所需时间的最小单位秒,60 秒为一分,60 分为一小时,24小时为一天,1、3、5、7、8、10、12 月为 31 天,4、6、9、11 月为 30 天,闰年二月为 29 天,非闰年二月为 28 天,12 个月为一年。采用这种时间设计思想来进行时间设置。在整个系统的设计中,单片机的 P0 口输出显示信号;P1 口按键输入控制;P2 口用来扫描,为动态显示;P3
3、口闹钟模块。该设计用 C51 编写程序,由于汇编语言的移植性比较差,而 C 语言则比较灵活。许多子函数都可以直接移植过去。关键词:单片机 AT89C52 C 语言 作息时间系统基于单片机的作息时钟系统设计 成都电子机械高等专科学校 IIAbstractThe design of the rest of the clock system design, from the smallest single-chip system, key module, digital tube display module, alarm module.Using single-chip AT89C52 and 1
4、2MHZ crystal connected through keys; K1, K2, K3, K4, K5 control time display, correction, alarm time setting.Digital tube display module to display the time, the display format for “time“, and according to the needs of display year, month, day, by the digital tube decimal point flashing counts as a
5、second alarm module; then remind and make corresponding action: the LED flashes, while playing a piece of music.This design, use single chip timer design time processing, using SCM internal timer to achieve T0, working in T1 mode, timing 50 subtle, continuously interrupted 20 times a second, is what
6、 we need the smallest unit of time in seconds, 60 seconds for a branch, is divided into a 60 hours, 24 hours a day, 1, 3, 5, 7, 8, 10, December for 31 days, 4, 6, 9, November for 30 days, a leap year in February for 29 days, a leap year in February for 28 days, 12 months for a year.By this time desi
7、gn ideas to set up time.In the design of the entire system, SCM P0 port output display signal; P1 export key input control; P2 port used to scan, dynamic display; P3 alarm module.The design using C51 programming, due to the less portable assembly language, C language is more flexible.Many functions
8、can be transplanted directly past.Key Words: SCM AT89C52 language C schedule system基于单片机的作息时钟系统设计 成都电子机械高等专科学校 III目 录论 文 摘 要 .IAbstract.II目 录 .III第一章 引 言 .- 1 -第二章 概 述 .- 2 -2.1 51 单片机简介 .- 2 -2.2 4 位数码管的驱动方式 .- 3 -2.3 设计要求 .- 4 -2.4 本设计实现的功能 .- 4 -第三章 系统总体方案及硬件设计 .- 5 -3.1 系统总体方案框图 .- 5 -3.2 单片机最小系
9、统 .- 5 -3.3 按键控制模块 .- 6 -3.4 时间显示模块 .- 7 -3.5 闹钟模块 .- 8 -第四章 软件设计 .- 10 -4.1 keil 软件介绍 .- 10 -4.2 系统软件设计思想 .- 11 -4.3 系统主程序 .- 11 -4.4 中断子程序 .- 12 -4.5 按键扫描子程序 .- 13 -4.6 系统程序(见附录 3) .- 14 -第五章 Proteus 软件仿真 .- 15 -5.1 Proteus 软件简介 .- 15 -5.2 Proteus 软件仿真 .- 16 -5.3 系统原理图(见附录 1) .- 20 -5.4 硬件实物图(见附录
10、2) .- 20 -5.5 原件清单 .- 20 -第六章 硬件调试 .- 21 -6.1 STC-ISP 软件介绍 .- 21 -6.2 焊接及程序下载 .- 23 -6.3 硬件调试 .- 23 -第七章 毕业设计体会 .- 26 -第八章 致谢 .- 27 -参考文献 .- 28 -附录 1.- 29 -附录 2.- 30 -附录 3.- 31 -基于单片机的作息时钟系统设计 成都电子机械高等专科学校 - 1 -第一章 引 言时钟,自从它发明的那天起,就成为人类的朋友,但随着时间的推移,科学技术的不断发展,人们对时间计量的精度要求越来越高,应用越来越广。怎样让时钟更好的为人民服务,怎样让
11、我们的老朋友焕发青春呢?这就要求人们不断设计出新型时钟。现今,高精度的计时工具大多数都使用了石英晶体振荡器,由于电子钟,石英表,石英钟都采用了石英技术,因此走时精度高,稳定性好,使用方便,不需要经常调校,数字式电子钟用集成电路计时,译码代替机械式传动,用LED 显示器代替显示器、指针显示,减小了计时误差,这种表具有时,分,秒显示时间的功能,还可以进行时和分的校对,片选的灵活性好。时钟电路在计算机系统中起着非常重要的作用,是保证系统正常工作的基础。在一个单片机应用系统中,时钟有两方面的含义:一是指为保障系统正常工作的基准振荡定时信号,主要由晶振和外围电路组成,晶振频率的大小决定了单片机系统工作的
12、快慢;二是指系统的标准定时时钟,即定时时间,它通常有两种实现方法:一是用软件实现,即用单片机内部的可编程定时/计数器来实现,但误差很大,主要用在对时间精度要求不高的场合;二是用专门的时钟芯片实现,在对时间精度要求很高的情况下,通常采用这种方法,典型的时钟芯片有:DS1302,DS12887,X1203 等都可以满足高精度的要求。单片机自 20 世纪 70 年代问世以来,以其极高的性能价格比,受到人们的重视和关注,应用很广、发展很快。单片机体积小、重量轻、抗干扰能力强、环境要求不高、价格低廉、可靠性高、灵活性好、开发较为容易。由于具有上述优点,在我国,单片机已广泛地应用在工业自动化控制、自动检测
13、、智能仪器仪表、家用电器、电力电子、机电一体化设备等各个方面,而 51 单片机是各单片机中最为典型和最有代表性的一种。这次毕业设计通过对它的学习、应用,由单片机 AT89S52、LED 数码管及闹钟模块为核心,辅以必要的电路,设计了一个简易的电子时钟,它能够准确显示时间,调整时间,以及闹钟的设定。基于单片机的作息时钟系统设计 成都电子机械高等专科学校 - 2 -第二章 概 述2.1 51 单片机简介单片微型计算机简称单片机,即把组成微型计算机的各个功能部件,如中央处理器、随机存储器、只读存储器、I/O 接口电路、定时器/计数器以及串行通信接口等集成在一块芯片上,构成一个完整的微型计算机。由于单
14、片机主要面对的是测控对象,突出的是控制功能,所以它从功能和形态上来说都是应测控功能领域应用的要求而诞生的。随着单片机技术的发展,它在芯片内集成了许多面对测控对象的接口电路,如 ADC、DAC、高速 I/O 口、脉冲宽度调制器、监视定时器等,这些接口电路已经突破了微型计算机传统的体系结构,所以单片机也成为微型控制。51 单片机是对目前所有兼容 Intel 8031 指令系统的单片机的统称。该系列单片机的始祖是 Intel 的 8031 单片机,后来随着 Flash rom 技术的发展, 8031 单片机取得了长足的进展,成为目前应用最广泛的 8 位单片机之一,其代表型号是 ATMEL 公司的 A
15、T89 系列,它广泛基于单片机的作息时钟系统设计 成都电子机械高等专科学校 - 3 -应用于工业测控系统之中。目前很多公司都有 51 系列的兼容机型推出,在目前乃至今后很长的一段时间内将占有大量市场。2.2 4 位数码管的驱动方式1、静态驱动也称直流驱动。静态驱动是指每个数码管的每一个段码都由一个单片机的 I/O 端口进行驱动,或者使用如 BCD 码二-十进制译码器译码进行驱动。静态驱动的优点是编程简单,显示亮度高,缺点是占用 I/O 端口多,如驱动5个数码管静态显示则需要58=40根 I/O 端口来驱动,而一个89S52单片机可用的 I/O 端口才32个,实际应用时必须增加译码驱动器进行驱动
16、,增加了硬件电路的复杂性。2、数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划“a,b,c,d,e,f,g,dp“的同名端连在一起,另外为每个数码管的公共极COM 增加位选通控制电路,位选通由各自独立的 I/O 线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通 COM 端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的 COM 端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数
17、码管的点亮时间为12ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速基于单片机的作息时钟系统设计 成都电子机械高等专科学校 - 4 -度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的 I/O 端口,而且功耗更低。2.3 设计要求本设计是作息时间控制器,其设计实现的功能主要有:使用 4 位七段显示器来显示现在的时间,显示格式为“时分” ,由 LED 闪动作为秒计数表示。可以设定时间和闹钟时间,当现在时间与闹钟设定时间相同时,闹钟响起,此时播放一段音乐。2.4 本设计实现的功能本设计实现的功
18、能为:使用七段显示器显示时间,显示格式为“时分” ,并可显示日期,显示格式为“月日” ,年份单独显示。可以设定作息时间,进行到时提示,并作出相应动作:发光二极管闪亮,同时播放音乐。基于单片机的作息时钟系统设计 成都电子机械高等专科学校 - 5 -第三章 系统总体方案及硬件设计3.1 系统总体方案框图按 键 控 制 模 块单片机最小系统数 码 管 显 示 模 块闹 钟 模 块图 3-1 系统方框图本次设计实现的功能主要有:使用 4 位七段显示器来显示现在的时间,显示格式为“时分” ,由 LED 小数点闪动作为秒计数表示。可以设定作息时间,并进行到时提示。由按键输入控制设置年月日以及当前时间、并可设置闹钟定时,时间到由蜂鸣器发出响声并作出相应动作:二极管闪亮,同时播放一段音乐。基于单片机的作息时钟系统设计 成都电子机械高等专科学校 - 6 -3.2 单片机最小系统图 3-2 单片机最小系统单片机最小系统由复位电路,一个晶振,两个瓷片电容构成。当复位引脚(RESET)连接高电平超过 2 个机器周期,即可产生复位的操作。3.3 按键控制模块