单片机数字电子时钟设计Word文档下载推荐.docx
《单片机数字电子时钟设计Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《单片机数字电子时钟设计Word文档下载推荐.docx(11页珍藏版)》请在冰豆网上搜索。
而51系列单片机是各单片机中最为典型和最有代表性的一种。
这次课程设计通过对它的学习,应用,从而达到学习、设计、开发软、硬的能力。
本设计主要设计了一个基于AT89C51单片机的电子时钟。
并在数码管上显示相应的时间。
并通过一个控制键用来实现时间的调节和是否进入省电模式的转换。
该方法仿真效果真实、准确,节省了硬件资源。
关键字:
单片机、电子时钟、程序
第一章电子时钟的设计
1.1电子时钟简介
电子钟是一种利用数字电路来显示秒、分、时的计时装置,与传统的机械钟相比,它具有走时准确、显示直观、无机械传动装置等优点,因而得到广泛应用。
随着人们生活环境的不断改善和美化,在许多场合都用到电子时钟。
现在高精度的计时工具大多数都使用了石英晶体振荡器,由于电子钟、石英钟、石英表都采用了石英技术,因此走时精度高,稳定性好,使用方便,不需要经常调试,数字式电子钟用集成电路计时时,译码代替机械式传动,用LED显示器代替指针显示进而显示时间,减小了计时误差,这种表具有时、分、秒显示时间的功能,还可以进展时和分的校对,片选的灵活性好。
LCD数字电子钟除了在城市的主要营业场所、车站、码头等公共场所使用,还可以改装在摩托车和汽车上,LCD显示,带蓝色背光,白天在太阳光下也能非常清楚的看到显示时间,关钥匙可以关闭蓝色背光,时间还能显示也不会清零,因LCD的显示耗电量很省的,所以一直工作也不必担心耗电问题。
在骑摩托车时,为了看时间,先要停下车子,取出手机,才能看时间,是否有点麻烦,现在车上改装了一个蓝色背光的液晶电子钟后,不管白天黑夜色,随时可以看时间,非常方便。
1.2电子时钟的工作原理
一般电子钟是一个将“时〞,“分〞,“秒〞显示于人的视觉器官的计时装置。
它的计时周期为24小时,显示满刻度为23时59分59秒,另外应有校时功能和报时功能。
因此,一个根本的数字钟电路主要由译码显示器、“时〞,“分〞,“秒〞计数器、校时电路、报时电路和振荡器组成。
主电路系统由秒信号发生器、“时、分、秒〞计数器、译码器与显示器、校时电路、整点报时电路组成。
秒信号产生器是整个系统的时基信号,它直接决定计时系统的精度,一般用石英晶体振荡器加分频器来实现。
将标准秒信号送入“秒计数器〞,“秒计数器〞采用60进制计数器,每累计60秒发出一个“分脉冲〞信号,该信号将作为“分计数器〞的时钟脉冲。
“分计数器〞也采用60进制计数器,每累计60分钟,发出一个“时脉冲〞信号,该信号将被送到“时计数器〞。
“时计数器〞采用24进制计时器,可实现对一天24小时的累计。
译码显示电路将“时〞、“分〞、“秒〞计数器的输出状态用七段显示译码器译码,通过七段显示器显示出来。
整点报时电路时根据计时系统的输出状态产生一脉冲信号,然后去触发一音频发生器实现报时。
校时电路时用来对“时〞、“分〞、“秒〞显示数字进展校对调整。
而该电子时钟由89C51,六段数码管等构成,采用晶振电路作为驱动电路,由延时程序和循环程序产生的一秒定时,达到时分秒的计时,六十秒为一分钟,六十分钟为一小时,满二十四小时为一天。
而电路中唯一的一个控制键却拥有多种不同的功能,按下又松开,可以实现屏蔽数码管显示的功能,达到省电的目的;
直接按下不松开,那么可以通过按键实现分钟的累加,每按一次分钟加一;
而连续两次按下按键不放松,那么可实现小时的调节,同样每按一次小时加一。
第二章设计方案../白字内容添加页脚-新建文件夹5-doc/Shop.ebdoor./Shops/536257/-#
2.1硬件电路的设计方案
根据设计要求和设计思路,硬件电路有两局部组成,即单片机按键电路,LED显示器电路。
图1为硬件电路设计框图。
硬件电路设计框图
2.2硬件电路的原理图
设计原理图,如下图。
设计原理图
本设计电路,硬件局部共由五个模块组成:
按键模块、复位电路模块、晶振电路模块、发声指示模块、时间显示模块。
晶振电路模块负责给单片机提供时钟周期。
复位单路模块负责上电后自动复位,或按键后强制复位。
上电后,由单片机内部定时器计时,同时通过动态显示函数自动将时分秒显示到数码管上。
与此同时,按键扫描函数,一直扫描按键引脚状态,一旦扫描到按键被按下,即进入相应的功能函数。
如果检测到定时时间到,那么驱动蜂鸣器发声提示。
2.3硬件电路说明
2.3.1按键模块
按键模块如下图。
按键模块
在该模块中,采用四个按键作为电子时钟的控制输入,通过按键来实现时钟的时间设置、定时、秒表功能。
电路中将四个按键的一端接公共地,而单片机的P2口默认为高电平,一旦按键被按下,那么该按键对应的额管脚被拉低,通过软件扫描按键即可知道用户所要实现的功能,调用相应的按键子程序来完成该操作。
按键的去抖动由软件来实现。
2.3.2单片机的复位电路
单片机的复位电路,如下图。
单片机的复位电路
当MCS-5l系列单片机的复位引脚RST(全称RESET)出现2个机器周期以上的高电平时,单片机就执行复位操作。
如果RST持续为高电平,单片机就处于循环复位状态。
根据应用的要求,复位操作通常有两种根本形式:
上电复位和上电或开关复位。
上电复位要求接通电源后,自动实现复位操作。
上电后,保持RST一段高电平时间。
2.3.3单片机的晶振电路
单片机的晶振电路,如下图。
单片机的晶振电路
石英晶体也连接在晶振引脚的输入和输出之间,等效为一个并联谐振回路,振荡频率应该是石英晶体的并联谐振频率。
晶体旁边的两个电容接地,实际上就是电容三点式电路的分压电容,接地点就是分压点。
以接地点即分压点为参考点,振荡引脚的输入和输出是反相的,但从并联谐振回路即石英晶体两端来看,形成一个正反应以保证电路持续振荡。
2.3.5时间显示模块
时间显示模块如下图。
液晶显示电路
时间显示局部的电路也很简单,由三个两位的共阴8段数码管、四盏Led灯,加上一个4511译码驱动电路组成。
在显示过程中,单片机将要显示的数字传递给4511芯片,同时通过位选选通要显示的数码管。
4511芯片实现将BCD码数字转换为七段数码管段选码通过其输出端输出,同时提供约500mA的电流驱动数码管点亮。
数码管译码驱动驱动电路
第三章控制系统的软件设计
3.1程序流程图
系统的流程图如图a和图b所示:
图a主程序流程图
图b中断处理流程图
3.2依据流程图编写程序
本系统的软件系统主要可分为主程序、定时计数中断程序、时间调整程序、延时程序四大模块。
在程序设计过程中,加强了局部软件抗干扰措施,下面对局部模块作介绍。
主程序
;
START:
MOV
R0,#70H
清70H-7AH共11个内存单元
R7,#0BH
CLEARDISP:
R0,#00H
INC
R0
DJNZ
R7,CLEARDISP
20H,#00H
清20H〔标志用〕
7AH,#0AH
放入"
熄灭符"
数据
TMOD,#11H
设T0、T1为16位定时器
TL0,#0B0H
50MS定时初值〔T0计时用〕
TH0,#3CH
50MS定时初值
TL1,#0B0H
50MS定时初值〔T1闪烁定时用〕
TH1,#3CH
SETB
EA
总中断开放
ET0
允许T0中断
TR0
开启T0定时器
R4,#14H
1秒定时用初值〔50MS×
20〕
START1:
LCALLDISPLAY
调用显示子程序
JNB
P3.5,SETMM1
P3.5口为0时转时间调整程序
SJMP
START1
P3.5口为1时跳回START1
SETMM1:
LJMPSETMM
转到时间调整程序SETMM
定时计数中断程序:
MOVTMOD,#00H;
写控制字
MOVTH0,#0F0H;
写定时常数
MOVTLO,#0CH
SETBTR0;
启动T0
SETBETO;
SETBEA;
开放CPU中断
AJMP$
时间调整程序:
SETMM:
cLRET0;
关定时器T0中断
CLRTR0;
关闭定时器T0
LCALLDL1S;
调用1秒延时程序
P3.7,CLOSEDIS;
键按下时间小于1秒,关闭显示〔省电〕MOVR2,#06H;
进入调时状态,赋闪烁定时初值SETBET1;
允许T1中断
SETBTR1;
开启定时器T1
SET2:
JNBP3.7,SET1;
P3.7口为0〔键未释放〕,等待
SETB00H;
键释放,分调整闪烁标志置1
SET4:
P3.7,SET3;
等待键按下
LCALLDL05S;
有键按下,延时0.5秒
JNBP3.7,SETHH;
按下时间大于0.5秒转调小时状态
MOVR0,#77H;