基于51单片机设计的多功能数字时钟毕业设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于51单片机多功能数字时钟
1系统设计
1.1设计要求
设计制作一个24小时制多功能数字钟。
1.1.1主要性能指标
1、数字显示年、月、周、日、时、分、秒。
1.1.2创意部分
要求准确的进行年、月、周、日、时、分、秒的转换,切换两种显示模式。
1.2总体设计方案
1.2.1概述及设计思路
该设计方案是以MC51单片机为核心,采用LCD液晶屏幕显示系统,温度采集模块、日期提醒、键盘时间调整预设置等模块,所构建的数字时钟系统,能动态显示实时时钟的时、分、秒,数据显示(误差限制在30每天)。
1.2.2方案论证
(1)时钟模块
【方案一】采用单片机内置定时/计数器。它的处理过程主要是先设定单片机内部定时/计数器的工作方式,对机器周期计数确定基准时间,然后用另外一个定时器软件计数的方法对基准时间形成秒,秒计60次形成分,分计60次形成小时。依此类推,获取日期也是采用相同的方法。该方案在具体实现过程中,计时存在较大的误差。如果晶振受到其他外界信号干扰,或者基准时间计算不准确,都会导致时间显示错误。【方案二】采用555多谐振荡器。由555定时器组成一个多谐振荡器,产生周期为100HZ的脉冲,然后经过两个74LS160组成的分频器得到1HZ的秒脉冲。多谐振荡器的稳定度及频率的准确度决定了数字钟计时的准确程度,通常选用成品晶振构成振荡器电路。计时精度取决于振荡器的频率,振荡器频率越高计时精度越高。
【方案三】采用DS1302时钟芯片。DS1302是一种高性能、超低功耗的实时时钟芯片,附加31字节静态RAM,可以通过串行接口与单片机进行通信。实时时钟提供秒、分、时、日、星期、月、年的信息,每个月的天数和闰年的天数可自动调整,时钟操作可通过AM/PM标志位决定采用24或12小时时间格式。芯片内部集成备用电源,当外围电路电路有电源供应的时候,备用电源充电储能。当外围电路掉电时,DS1302芯片工作在休眠状态,以备用电源供电。当外围电路再次供电,即可唤醒休眠进入正常工作状态,显示时间无任何异常。
该系统设计中,采用方案三。
(2)数据显示
【方案一】采用LED数码管显示数据。LED数码管是由若干个发光二极管组成的显示字段的显示器件,当数码管中的某个发光二极管导通的时候,相应的一个字段便发光,不导通则不发光。一般来说,LED数码管的控制可分为段选控制和位选控制。段选是LED所显示的字段,如:a,b,c,d,e,f,g,dp,当a,b,c同时点亮时显示数字7;当a,b,d,e,g同时点亮时显示数字2。位选则是显示该数字的位。根据以上控制原理,可实现对时间和温度的显示。
【方案二】采用LCD1602液晶屏显示数据。液晶屏的应用非常广泛,比如日常生活中的手表、时钟、计算器、仪器仪表、家电、医疗器械、车船仪表、声象设备文体用品、通讯设备视频图像显示和大画面显示等等。LCD1602 液晶模块的读写操作,屏幕
和光标的操作都是通过指令编程来实现的。如清除显示指令 01H,光标复位到地址00H 位置;光标复位指令00H,光标返回到地址。LCD1602液晶屏具有字符发生器,可以直观的显示汉字、图形、字符,并且显示容量大,进行数据的实时显示简单方便。
该系统设计中,需要显示的数据比较多。如果使用LED数码管,那么就要用分屏切换来显示数据,那样既不直观又不方便,并且对单片机的I/O口开销比较大。若使用LCD液晶屏显示数据,则不需要分屏切换,而且还节省了I/O资源。因此,采用方案二。
2系统组成与工作原理
2.1系统框图及工作原理
图2-1 系统框架图
工作原理:本设计采用STC89C51单片机作为本次课程设计的控制模块。单片机可把由DS18B20、DS1302中的数据利用软件来进行处理,从而把数据传输到显示模块,实现温度、日历的显示。以LCD液晶显示器为显示模块,把单片机传来的的数据显示出来,并且显示多样化,在显示电路中,主要靠按键来实现各种显示要求的选择与切换。
2.2 单元电路设计 2.2.1 M C-51单片机
89S51各引脚功能介绍: VCC :
89S51 电源正端输入,接+5V 。 VSS :
电源地端。 XTAL1:
单芯片系统时钟的反相放大器输入端。 XTAL2:
系统时钟的反相放大器输出端,一般在设计上只要在 XTAL1 和 XTAL2 上接上一只石英振荡晶体系统就可以动作了,此外可以在两引脚与地之间加入一 20PF 的小电容,可以使系统更稳定,避免噪声干扰而死机。
EA/Vpp :
"EA"为英文"External Access"的缩写,表示存取外部程序代码之意,低电平动作,也就是说当此引脚接低电平后,系统会取用外部的程序代码(存于外部EPROM 中)来执行程序。因此在8031及8032中,EA 引脚必须接低电平,因为其内部无程序存储器空间。如果是使用 8752 内部程序空间时,此引脚要接成高电平。此外,在将程序代码烧录至8751内部EPROM 时,可以利用此引脚来输入21V 的烧录高压(Vpp )。 ALE/PROG : 端口3的管脚设置:
P3.0:RXD ,串行通信输入。
P3.1:TXD ,串行通信输出。 P3.2:INT0,外部中断0输入。
P3.3:INT1,外部中断1输入。 P3.4:T0,计时计数器0输入。 P3.5:T1,计时计数器1输入。
P3.6:WR:外部数据存储器的写入信号。
P3.7:RD,外部数据存储器的读取信号。
2.2.2复位电路
MCS-51单片机的复位是由外部的复位电路来实现的。复位引脚RST通过一个斯密特触发器与复位电路相连,斯密特触发器用来抑制噪声,在每个机器周期的S5P2,斯密特触发器的输出电平由复位电路采样一次,然后才能得到内部复位操作所需要的信号。
上电复位:上电复位电路是—种简单的复位电路,只要在RST复位引脚接一个电容到VCC,接一个电阻到地就可以了。上电复位是指在给系统上电时,复位电路通过电容加到RST复位引脚一个短暂的高电平信号,这个复位信号随着VCC对电容的充电过程而回落,所以RST引脚复位的高电平维持时间取决于电容的充电时间。为了保证系统安全可靠的复位,RST引脚的高电平信号必须维持足够长的时间。
上电自动复位是通过外部复位电路的电容充电来实现的。只要Vcc的上升时间不超过1ms,就可以实现自动上电复位。
图2-2-2 复位电路
2.2.3时钟电路
时钟是单片机的心脏,单片机各功能部件的运行都是以时钟频率为基准,有
条不紊的一拍一拍地工作。因此,时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。常用的时钟电路有两种方式:一种是
内部时钟方式,另一种为外部时钟方式。本文用的是内部时钟方式(如图3-3所示)。