数字电子钟设计.docx
- 文档编号:23823359
- 上传时间:2023-05-21
- 格式:DOCX
- 页数:27
- 大小:181.34KB
数字电子钟设计.docx
《数字电子钟设计.docx》由会员分享,可在线阅读,更多相关《数字电子钟设计.docx(27页珍藏版)》请在冰豆网上搜索。
数字电子钟设计
电子线路课程设计说明书
数字电子钟
系、部:
电气与信息工程系
学生姓名:
*********
指导教师:
****职称*****
专业:
电气自动化
班级:
电气*****班
完成时间:
*****年***月***号
摘要
本文主要介绍用单片机内部的定时/计数器来实现电子时钟的方法,本设计由单片机AT89S52芯片和LED数码管为核心,辅以必要的电路,构成了一个单片机电子时钟。
与传统机械表相比,它具有走时精确,显示直观等特点。
它的计时周期为24小时,显满刻度为“23时59分59秒”,另外具有校时功能等特点。
该钟的显示电路采用LED数码管与AT89S52的外部I/O引脚,即采用P0口为输出口,选取P2口的P2.2、P2.3、P2.4经38译码器(74LS138)输出为位选,P1用来与外部输入按钮相连接,以用来控制数字钟的各个功能。
P0口要直接驱动8位LED是不够的,我们通过74LS245对功率进行放大以达到要求,如果没有,LED管将不能正常显示。
关键词电子时钟;单片机;LED显示
ABSTRACT
Thisarticlefocusesonusingtheinternalmicrocontrollertimer/countertoimplementthemethodofelectronicclocks,thisdesignbytheMCUAT89S52chipandLEDdigitaltubeasthecore,supplementedbythenecessarycircuitrytoformamicrocontrollerelectronicclock.Comparedwiththetraditionalmechanicalwatch,ithasatravel-timeaccuracy,displayandintuitiveandsoon.Itisatimeperiodof24hours,substantiallyfull-scaleas"23:
59:
59",anotherwithamedicalschoolfunctionsandsoon.
TheclockdisplaycircuitwithLEDdigitaltubeandAT89S52externalI/Opins,thatis,usingtheoutputportP0port,selecttheP2portP2.2,P2.3,P2.4through38decoder(74LS138)Choiceofoutput,P1withtheexternalinputbuttonisusedtoconnecttodigitalclockusedtocontrolthevariousfunctions.P0porttodirectlydrivean8-bitLEDisnotenough,andwezoomthroughthe74LS245onpowertomeettherequirements,ifnot,LEDtubeswillnotbedisplayedproperly.
Keywordselectronicclock;SCM;LEDDisplay
目录
1数字电子钟的功能要求说明及设计方案介绍5
1.1电子钟基本功能5
1.2设计方案介绍5
1.2.1计时方案5
1.2.2键盘/显示方案5
2数字电子钟的工作原理7
2.1实现时钟计时的基本方法7
2.2电子钟的时间显示7
2.3电子钟的启、停及时间调整7
3数字电子钟的硬件系统8
3.1各单元电路介绍8
3.2数字电子钟电路总原理图9
3.3PCB图及元器件面板布置图9
3.4数字电子钟的元器件清单9
4软件系统的设计10
4.1设计数字电子钟的模块使用情况10
4.2数字电子钟的流程图10
4.3数字电子钟的程序清单14
5设计小结21
5.1数字电子钟的使用说明21
5.2设计心得及体会22
参考文献23
致谢24
附录一总体电路原理图25
附录二总体电路PCB图、元器件分布图26
1数字电子钟的功能要求说明及设计方案介绍
1.1电子钟基本功能
可调整运行的电子钟具有三种工作状态:
“P.”状态、运行状态、调整状态。
(1)、“P.”状态,依靠上电或按复位键进入,在此状态下,按键均无效,按A键有效,进入运行状态;
(2)、运行状态,按奇数次A键进入,在此状态下,按B、C、D键均无效,只有按A键有效,按下A键后,退出运行状态,进入调整状态;
(3)、在运行状态时候时,按下A键后,进入暂停状态,数码管上显示暂停时的时间,再次按下A键后,从暂停时时间起进入运行状态;
(4)、调整状态,按偶数次A键进入,在此状态下,按A、B、C、D键均有效。
若按下A键,则退出调整状态,进入运行状态;若按下B、C、D键,则分别对时、分、秒加1,调整结束后必须按A键,即可退出调整状态,进入运行状态。
基本功能要求:
“P.”稳定地显示在LED显示器的数码管上,无A键按下(在“P.”状态下,按下B、C、D键无效),则不进入电子钟的运行状态,继续显示“P.”。
按下A键后,电子钟以起始时间:
00时00分00秒开始运行。
再次按下A键后,电子钟退出运行状态,进入调整状态,利用B、C、D键把电子钟的显示时间修改为当前实时时间,时间修改正确后可再次按下A键,电子钟则退出调整状态,进入运行状态。
注意:
每次按下B、C、D键,只允许加一,不允许连加。
1.2设计方案介绍
1.2.1计时方案
利用AT89S52单片机内部的定时/计数器进行中断定时,配合软件延时实现时、分、秒的计时。
该方案节省硬件成本,且能使读者在定时/计数器的使用、中断及程序设计方面得到锻炼与提高,对单片机的指令系统能有更深入的了解,从而对学好单片机技术这门课程起到一定的作用。
1.2.2键盘/显示方案
AT89S52的P0口和74LS138译码器输出口外接由两个四位一体LED数码管构成的显示器,用P0口作LED的段码输出口,38译码器输出口作为数码管的位控输出线,P1口外接四个按键A、B、C、D构成键盘电路。
AT89S52是一种低功耗,高性能的CMOS8位微型计算机。
它带有8KFlash可编程和擦除的只读存储器(EPROM),该器件采用ATMEL的高密度非易失性存储器技术制造,与工业上标准的80C51和80C52的指令系统及引脚兼容,片内Flash集成在一个芯片上,可用与解决复杂的问题,且成本较低。
简易电子钟的功能不复杂,采用其现有的I/O便可完成,所以本书中采用此的设计方案,结构如图1.1如示。
2数字电子钟的工作原理
2.1实现时钟计时的基本方法
利用MCS-51系列单片机的可编程定时/计数器、中断系统来实现时钟计数。
(1)计数初值计算:
把定时器设为工作方式1,定时时间为50ms,则计数溢出20次即得时钟计时最小单位秒,而100次计数可用软件方法实现。
假设使用T/C0,方式1,50ms定时,fosc=12MHz。
则初值X满足(216-X)×1/12MHz×12μs=50000μs
X=15536→0011110010110000→3CB0H
(2)采用中断方式进行溢出次数累计,计满20次为秒计时(1秒);
(3)从秒到分和从分到时的计时是通过累加和数值比较实现。
2.2电子钟的时间显示
电子钟的时钟时间在八位数码管上进行显示,因此,在内部RAM中设置显示缓冲区共8个单元。
如表2.1所示:
表2.1各位显示表
LED8
LED7
LED6
LED5
LED4
LED3
LED2
LED1
37H
36H
35H
34H
33H
32H
31H
30H
时十位
时个位
间隔符“-”
分十位
分个位
间隔符“-”
秒十位
秒个位
2.3电子钟的启、停及时间调整
电子钟设置4个按键通过程序控制来完成电子钟的启、停及时间调整。
A键控制电子钟的启动,暂停,开始;
B键调整时;
C键调整分;
D键调整秒。
3数字电子钟的硬件系统
数字电子钟主要由时钟电路、复位电路、显示电路以及键盘电路构成整个系统。
时钟电路由震荡电路和分频电路组成,用来产生我们所需的时钟信号;复位电路采用上电复位和按键复位相结合来产生复位信号;显示电路由LED数码管来显示时间、键盘电路采用独立式键盘,4个按键通过程序控制来完成电子钟的启、停及时间调整。
3.1各单元电路介绍
(1)时钟电路
时钟电路由振荡电路和分频电路组成。
其中振荡电路由反相器以及并联外接的石英晶体和电容构成产生振荡脉冲。
而分频电路则用于把振荡脉冲分频,已得到所需的时钟信号。
振荡电路由单片机芯片的XTAL1端输入,XTAL2端输出。
通过这俩个引脚并连接一个石英晶体振荡器和俩个电容(电容一般取33pF)。
晶振频率是指晶体振荡器的振荡频率,也就是振荡电路的脉冲频率,也称振荡频率。
晶振频率范围一般为1.2~33MHz。
本设计中根据实际情况我们选择12MHz的。
(2)复位电路
复位电路共有上电复位、按键电平复位和按键脉冲复位3种。
其中上电自动复位是通过电容充电来实现的;手动复位是通过按键来实现的,有电平方式和脉冲方式俩种。
其中按键电平复位端经电阻与Vcc电源接通而实现的,而按键脉冲复位是利用RC微分电路产生的正脉冲来实现的。
本设计中采用相对简单而实用的按键电平复位方式。
(3)电源电路
电源电路主要由开关、俩针插头、发光二极管、电阻组成。
其发光二极管主要是观察电源是否一直保持稳定。
(4)键盘电路
键盘电路主要由四个按键和电阻组成。
将其接在P1口的P1.0~P1.3。
(5)下载电路
下载电路主要由一个十口插针组成。
其6脚接电源,1脚接单片机P1.5脚,3脚接单片机的RET,4脚接P1.7,5脚接P1.6。
3.2数字电子钟电路总原理图
结合前一节,电路总原理图见附录一。
3.3PCB图及元器件面板布置图
PCB图、元器件面板布置图见附录二。
3.4数字电子钟的元器件清单
如表3.1所示:
表3.1元器件清单
器件名称
规格型号
数量(单位)
芯片
AT89C52
1(块)
数码管
四位一体(共阳)
2(块)
电容
33pF
2(个)
22μF
1(个)
芯片插座
IC-40P
1(块)
电阻
1K
5(个)
4.7K
4(个)
470Ω
8(个)
200Ω
1(个)
排阻A102J
1(个)
晶振
12MHZ
1(个)
按键
欧姆龙
5(只)
插针
单排插针
2(排)
三极管
S8550
8(个)
4软件系统的设计
4.1设计数字电子钟的模块使用情况
本设计的硬件系统主要采用以下基本模块来实现,单片机最小系统模块,输入模块、输出模块、电源模块。
(1)单片机最小系统模块:
包括低功耗、高性能CMOS8位微控制器AT89S52;复位电路;晶振电路。
(2)输入模块:
本模块共用到了4个按键,1个电源开关,一个复位键,单片机运行期间,利用按键完成复位操作。
(3)输出模块:
本次设计显示为8位,采用两个四位一体数码管(共阳极)作为显示窗口,既可以节约成本又能简化电路。
数码管驱动为74LS245芯片。
4.2数字电子钟的流程图
(1)主程序流程框图
主程序流程图如图4.1所示
(2)键扫子程序流程框图
键扫子程序流程框图如图4.2所示
(3)中断服务程序流程框图
中断服务程序流程框图如图4.3所示:
(4)“P.”点显示子程序流程框图
“P.”点显示子程序流程图如图4.4所示
(5)显示子程序流程框图
显示子程序流程图如图4.5所示
(6)加1子程序流程框图
加1子程序流程图如图4.6所示
4.3数字电子钟的程序清单
ORG0000H
AJMPMAIN
ORG000BH
LJMPINTT0
ORG0030H
MAIN:
MOVIP,#02H;IP初始化,优先定时器0
MOVIE,#82H;IE初始化,
MOVTMOD,#01H;定时器0方式1工作
LCALLPP;调P.子程序
NEXT:
LCALLKEY;按键检测子程序
JBACC.0,RUNF;A键按下运行
LCALLDISP;调用显示子程序
SJMPNEXT
RUNF:
LCALLOUTT;调传送子程序
LCALLTIME;开电子钟
JK:
LCALLDISP;调用显示子程序
LCALLKEY;按键检测子程序
JZJK
LCALLANKEY
LCALLDISP;调用显示子程序
SJMPJK
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;P点显示;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
PP:
MOV30H,#12;P点编码送寄存器
MOVR0,#37H;P点编码送寄存器
MOVR7,#07H
PPP:
MOV@R0,#10
DECR0
DJNZR7,PPP
RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;键扫子程序;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
KEY:
LCALLKEYS;调键值处理子程序
JZEXIT;没有键按下转到返回
LCALLDISP
LCALLDISP;调显示去抖动
LCALLKEYS
JZEXIT
MOVB,20H;保存键值
KEYSF:
LCALLKEYS;调键值处理子程序
JZKEYY;键释放,转到恢复键值
LCALLDISP;调显示子程序延时
AJMPKEYSF;等到键释放
KEYY:
MOVA,B;键值送20H单元保存
EXIT:
RET;返回
KEYS:
MOVP1,#0FFH;先向P1口写1
MOVA,P1;P1口值送累加器A
CPLA;A值取反
ANLA,#0FH;保存P1口的低4位
MOV20H,A;A值送20H保存
RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;键功能子程序;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
ANKEY:
CLREA;关中断
CHECK:
JBTR0,YXZ;判断是否运行
K0:
CJNEA,#01H,K1
AJMPRUN;转运行
K1:
CJNEA,#02H,K2
AJMPKEY1;转时调整
K2:
CJNEA,#04H,K3
AJMPKEY2;转分调整
K3:
CJNEA,#08H,OUT
AJMPKEY3;转秒调整
YXZ:
JBACC.0,STOP
AJMPOUT
STOP:
CLRTR0;关电子钟并跳出
RET
KEY1:
MOVR0,#45H;时调整
LCALLADD1
CLRC
CJNEA,#24H,OUTT
ACALLCLR0
AJMPOUTT
KEY2:
MOVR0,#43H;分调整
LCALLADD1
CLRC
CJNEA,#60H,OUTT
ACALLCLR0
AJMPOUTT
KEY3:
MOVR0,#41H;秒调整
ACALLADD1
CLRC
CJNEA,#60H,OUTT
ACALLCLR0
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;传送显示数据;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
OUTT:
MOV30H,40H;秒显示单元40H-41H
MOV31H,41H
MOV32H,#11;"-"
MOV33H,42H;分显示单元42H-43H
MOV34H,43H
MOV35H,#11;"-"
MOV36H,44H;时显示单元44-45H
MOV37H,45H
RET
RUN:
LCALLTIME;运行电子钟
OUT:
SETBEA;无键按下或完成功能跳出
RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;运行电子钟;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
TIME:
SETBEA
MOVTL0,#0B0H
MOVTH0,#3CH;3CB0H
MOVR4,#14H;50ms,20次循环
SETBTR0;启动定时器0
RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;定时中断;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
INTT0:
PUSHACC
PUSHPSW
CLRET0
CLRTR0
MOVTL0,#0B0H;重新设定定时初值
MOVTH0,#3CH
SETBTR0;启动定时器0
DJNZR4,OUTT0;1秒到
ADDSS:
MOVR4,#14H;20次计数
MOVR0,#41H;秒十位
ACALLADD1;加1程序
CLRC
CJNEA,#60H,ADDMM;1分到
ADDMM:
JCOUTT0
ACALLCLR0
MOVR0,#43H
ACALLADD1;加1程序
CLRC
CJNEA,#60H,ADDHH;1小时到
ADDHH:
JCOUTT0
ACALLCLR0
MOVR0,#45H
ACALLADD1;加1程序
CLRC
CJNEA,#24H,HOUR;1天到
HOUR:
JCOUTT0
ACALLCLR0
OUTT0:
MOV30H,40H;秒显示单元40H-41H
MOV31H,41H
MOV32H,#11;"-"
MOV33H,42H;分显示单元42H-43H
MOV34H,43H
MOV35H,#11;"-"
MOV36H,44H;时显示单元44-45H
MOV37H,45H
POPPSW
POPACC
SETBET0
RETI
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;时间清零子程序;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
CLR0:
CLRA
MOV@R0,A
DECR0
MOV@R0,A
RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;加一子程序;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
ADD1:
MOVA,@R0;取十位
DECR0
SWAPA
ORLA,@R0;组合十位与个位
ADDA,#01H;加1
DAA;十进制调整
MOVR3,A;暂存
ANLA,#0FH;屏蔽十位
MOV@R0,A;放入个位单元
MOVA,R3;取值
INCR0
SWAPA
ANLA,#0FH;屏蔽个位
MOV@R0,A;放入十位单元
MOVA,R3;数值放入A中等待判断
RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;显示子程序30H;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DISP:
MOVR1,#30H;显示缓冲存储单元首地址
MOVR2,#1CH;从右至左显示
DISP1:
MOVP2,R2;送位控
MOVA,@R1
MOVDPTR,#TAB
MOVCA,@A+DPTR
MO
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字 电子钟 设计