关键词不能为空

当前您在: 主页 > 英语 >

基于单片机的简易电子时钟设计

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2020-10-25 06:25
tags:hrl

柘怎么读-believed

2020年10月25日发(作者:张涵予)



基于单片机的简易电子时钟设计
1 设计任务与要求
1.1 设计背景
数字钟已成为人们日常生活中必不可少的必需品,广泛用于个人家庭以及办公室
等公 共场所,给人们的生活、学习、工作、娱乐带来极大的方便。由于数字集成电路
技术的发展和采用了先进 的石英技术,使数字钟具有走时准确、性能稳定、携带方便
等优点,它还用于计时、自动报时及自动控制 等各个领域。尽管目前市场上已有现成
的数字钟集成电路芯片出售,价格便宜、使用也方便,但鉴于单片 机的定时器功能也
可以完成数字钟电路的设计,因此进行数字钟的设计是必要的。在这里我们将已学过< br>的比较零散的数字电路的知识有机的、系统的联系起来用于实际,来培养我们的综合
分析和设计电 路,写程序、调试电路的能力。
单片机具有体积小、功能强可靠性高、价格低廉等一系列优点,不仅已 成为工业
测控领域普遍采用的智能化控制工具,而且已渗入到人们工作和和生活的各个角落,
有 力地推动了各行业的技术改造和产品的更新换代,应用前景广阔。
1.2 课程设计目的
(1)巩固、加深和扩大单片机应用的知识面,提高综合及灵活运用所学知识解决
工业控制的能力; < br>(2)培养针对课题需要,选择和查阅有关手册、图表及文献资料的自学能力,提
高组成系统、编 程、调试的动手能力;
(3)过对课题设计方案的分析、选择、比较、熟悉单片机用系统开发、研制的 过
程,软硬件设计的方法、内容及步骤。
1.3 设计要求
1).时制式为24小时制。
2).采用LED数码管显示时、分,秒采用数字显示。


3).具有方便的时间调校功能。
4).计时稳定度高,可精确校正计时精度。
2 总体方案设计
2.1 实现时钟计时的基本方法
利用MCS-51系列单片机的可编程定时计数器、中断系统来实现时钟计数。
(1) 计数初值计算:
把定时器设为工作方式1,定时时间为50ms,则计数溢出20次即得时钟计时最< br>小单位秒,而100次计数可用软件方法实现。
假设使用TC0,方式1,50ms定时,fosc=12MHz。
则初值X满足(216-X)×112MHz×12μs =50000μs
X=15536→0000→3CB0H
(2) 采用中断方式进行溢出次数累计,计满20次为秒计时(1秒);
(3) 从秒到分和从分到时的计时是通过累加和数值比较实现。
2.2 电子钟的时间显示
电子钟 的时钟时间在六位数码管上进行显示,因此,在内部RAM中设置显示缓
冲区共8个单元。
LED8 LED7 LED6 LED5 LED4 LED3 LED2 LED1
37H 36H 35H 34H 33H 32H 31H 30H
时十位 时个位 分隔 分十位 分个位 分隔 秒十位 秒个位
2.3 电子钟的时间调整
电子钟设置3个按键通过程序控制来完成电子钟的时间调整。
A键调整时;
B键调整分;
C键复位


2.4 总体方案介绍
2.4.1 计时方案
利用AT89S51单片机内部的定时计数器进行中断 时,配合软件延时实现时、分、
秒的计时。该方案节省硬件成本,且能使读者在定时计数器的使用、中断 及程序设
计方面得到锻炼与提高,对单片机的指令系统能有更深入的了解,从而对学好单片机
技 术这门课程起到一定的作用。
2.4.2 控制方案
AT89S51的P0口和P2口外接 由八个LED数码管(LED8~LED1)构成的显示器,
用P0口作LED的段码输出口,P2口作 八个LED数码管的位控输出线,P1口外接四
个按键A、B、C构成键盘电路。
AT89S51 是一种低功耗,高性能的CMOS 8位微型计算机。它带有8K Flash 可< br>编程和擦除的只读存储器(EPROM),该器件采用ATMEL的高密度非易失性存储
器技术制 造,与工业上标准的80C51和80C52的指令系统及引脚兼容,片内Flash 集
成在一个芯片 上,可用与解决复杂的问题,且成本较低。简易电子钟的功能不复杂,
采用其现有的IO便可完成,所以 本设计中采用此的设计方案。
3 系统硬件电路设计
根据以上的电子时钟的设计要求可以分 为以下的几个硬件电路模块:单片机模
块、数码显示模块与按键模块,模块之间的关系图如下面得方框电 路图1所示。

图1 硬件电路方框图


3.1单片机模块设计
3.1.1 芯片分析
AT89C51单片机引脚图如下:

图2 AT89C51引脚图
MCS-51单片机是标准的40引脚双列直插式集成电路芯片,其各引脚功能如下:
VCC:+5V电源。
VSS:接地。
RST:复位信号。当输入的复位信号延续 两个机器周期以上的高电平时即为有效,
用完成单片机的复位初始化操作。
XTAL1和XT AL2:外接晶体引线端。当使用芯片内部时钟时,此二引线端用于
外接石英晶体和微调电容;当使用外 部时钟时,用于接外部时钟脉冲信号。
P0口:P0口为一个8位漏极开路双向IO口,当作输出口使 用时,必须接上拉
电阻才能有高电平输出;当作输入口使用时,必须先向电路中的锁存器写入“1”,< br>使FET截止,以避免锁存器为“0”状态时对引脚读入的干扰。
P1口:P1口是一个内部提 供上拉电阻的8位双向IO口,它不再需要多路转接
电路MUX;因此它作为输出口使用时,无需再外接 上拉电阻,当作为输入口使用时,
同样也需先向其锁存器写“1”,使输出驱动电路的FET截止。 < /p>


P2口:P2口电路比P1口电路多了一个多路转接电路MUX,这又正好与P0口
一样。P2口可以作为通用的IO口使用,这时多路转接电路开关倒向锁丰存器Q端。
P3口:P3 口特点在于,为适应引脚信号第二功能的需要,增加了第二功能控制
逻辑。当作为IO口使用时,第二功 能信号引线应保持高电平,与非门开通,以维持
从锁存器到输出端数据输出通路的畅通。当输出第二功能 信号时,该位应应置“1”,
使与非门对第二功能信号的输出是畅通的,从而实现第二功能信号的输出, 具体第二
功能如表1所示。

3.1.2 晶振电路
右图所示为时钟电路 原理图,在AT89S51芯片内部有一个高增益反相放大器,
其输入端为芯片引脚XTAL1,输出端 为引脚XTAL2。而在芯片内部,XTAL1和
XTAL2之间跨接晶体振荡器和微调电容,从而构成 一个稳定的自激振荡器。时钟电
路产生的振荡脉冲经过触发器进行二分频之后,才成为单片机的时钟脉冲 信号。

图3晶振电路
3.1.3 复位电路
单片机复位的条件是:必须使RSTVPD 或RST引(9)加上持续两个机器周期
(即24个振荡周期)的高电平。例如,若时钟频率为12 M Hz,每机器周期为1μs,
则只需2μs以上时间的高电平,在RST引脚出现高电平后的第二个机器 周期执行复
位。单片机常见的复位如图所示。电路为上电复位电路,它是利用电容充电来实现的。
在接电瞬间,RESET端的电位与VCC相同,随着充电电流的减少,RESET的电位
逐渐下降。 只要保证RESET为高电平的时间大于两个机器周期,便能正常复位。该


电路除具有上 电复位功能外,若要复位,只需按图中的RESET键,此时电源VCC
经电阻R1、R2分压,在RE SET端产生一个复位高电平。

图4 单片机复位电路
3.2 数码显示模块设计
系统采用动态显示方式,用P0口来控制LED数码管的段控线,而用P2口来控< br>制其位控线。动态显示通常都是采用动态扫描的方法进行显示,即循环点亮每一个数
码管,这样虽 然在任何时刻都只有一位数码管被点亮,但由于人眼存在视觉残留效应,
只要每位数码管间隔时间足够短 ,就可以给人以同时显示的感觉。


图5 数码显示电路
3.3 按键模块
下图为按键模块电路原理图,A为复位键,B为时钟调控键,C为分钟调控键。

图 6 按键模块电路原理图
4、系统软件设计
4.1 软件设计分析 在编程上,首先进行了初始化,定义程序的的入口地址以及中断的入口地址,在
主程序开始定义了一 组固定单元用来储存计数的时.分.秒,在显示初值之后,进入主
循环。在主程序中,对不同的按键进行 扫描,实现秒表,时间调整,复位清零等功能,
系统总流程图如下图7:



图 7 系统总体流程图
4.2 源程序清单
ORG 0000H
MOV 30H,#1 设置时钟的起始时间12.00.00,分配显示数据
内存
MOV 31H,#2
MOV 32H,#0
MOV 33H,#0
MOV 34H,#0
MOV 35H,#0



MOV TMOD,#01 启动计数器
XS0: SETB TR0 使 TRO位置1
MOV TH0,#00H 计数器置零
MOV TL0,#00H
XS:
MOV 40H,#0FEH 扫描控制字初值
MOV DPTR,#TAB 取段码表地址
MOV P2,40H 从P2口输出
MOV A,30H 取显示数据到A
MOVC A,@A+DPTR 查显示数据对应段码
MOV P0,A 段码放入P0中
LCALL YS1MS 显示1MS
MOV P0,#0FFH PO端口清零
MOV A,40H 取扫描控制字放入A中
RL A A中数据循环左移
MOV 40H,A 放回40H地址段内
MOV P2,40H


MOV A,31H
ADD A,#10 进位显示
MOVC A,@A+DPTR
MOV P0,A
LCALL YS1MS
MOV P0,#0FFH
MOV A,40H
RL A
MOV 40H,A
MOV P2,40H
MOV A,32H
MOVC A,@A+DPTR
MOV P0,A
LCALL YS1MS
MOV P0,#0FFH
MOV A,40H
RL A
MOV 40H,A


MOV P2,40H
MOV A,33H
ADD A,#10
MOVC A,@A+DPTR
MOV P0,A
LCALL YS1MS
MOV P0,#0FFH
MOV A,40H
RL A
MOV 40H,A
MOV P2,40H
MOV A,34H
MOVC A,@A+DPTR
MOV P0,A
LCALL YS1MS
MOV P0,#0FFH
MOV A,40H
RL A


MOV 40H,A
MOV P2,40H
MOV A,35H
MOVC A,@A+DPTR
MOV P0,A
LCALL YS1MS
MOV P0,#0FFH
MOV A,40H
RL A
MOV 40H,A
JB TF0,JIA 如果TF0为1时,则执行JIA,否则顺序执行
JNB P1.0,P100 为0则 转移到P100
JNB P1.1,P1000 为0则 转移到P1000
JNB P1.2,P10000 为0则 转移到P10000
AJMP XS 跳转到 XS
P100: MOV 30H,#0 清零程序
MOV 31H,#0
MOV 32H,#0


MOV 33H,#0
MOV 34H,#0
MOV 35H,#0
JIA: CLR TF0 TF0清零
MOV A,35H 秒单位数据到A
CJNE A,#9,JIA1 与 9进行比较,大于9就转移到JIA1
MOV 35H,0 秒个位清零
MOV A,34H 秒十位数据到A
CJNE A,#5,JIA10 与5进行比较,大于5就转移到JIA10
MOV 34H,#0 秒十位清零
P10000: JNB P1.2,P10000 为0则 转移到P10000
MOV A,33H 取分的个位到A
CJNE A,#9,JIA100 与 9进行比较,大于9就转移到JIA100
MOV 33H,#0 分的个位清零
MOV A,32H 分十位数据到A
CJNE A,#5,JIA1000 与5进行比较,大于5就转移到JIA1000
MOV 32H,#0 分的十位清零
P1000: JNB P1.1,P1000 为0则 转移到P1000


MOV A,31H 时个位数据到A
CJNE A,#9,JIA10000 与 9进行比较,大于9就转移到JIA10000
MOV 31H,#0 时的个位清零

MOV A,30H
CJNE A,#2,JIA100000
MOV 30H,#0
AJMP XS0
JIA100000:
INC 30H
AJMP XS0
JIA10000:
CJNE A,#3,JIAJIA
MOV A,30H
CJNE A,#02,JIAJIA
MOV 30H,#0
MOV 31H,#0
AJMP XS0
时十位数据到A
与2进行比较,大于5就转移到JIA100000
时的十位清零
转移到 XSO

加1
跳转到 XS0
与3进行比较,大于则转移到JIAJIA
将时的十位放到 A
与2进行比较,大于则转移到JIAJIA
时段清零
跳转到XSO












JIAJIA:
INC 31H 加一
AJMP XS0
JIA1000:INC 32H
AJMP XS0
JIA100: INC 33H
AJMP XS0
JIA10: INC 34H
AJMP XS0
JIA1: INC 35H
AJMP XS0
RET
YS1MS: MOV R6,#9H
YL1: MOV R7,#19H
DJNZ R7,$$
DJNZ R6,YL1
RET
TAB:
返回
延时程序



DB 0C0H,0F9H,0A4H,0B0H,099H,092H,082H,0F8H,080H,090H 共阳段码表
DB 040H,079H,024H,030H,019H,012H,002H,078H,000H,010H
END
5 系统仿真与实验测试
5.1 系统仿真
运用 proteus软件进行仿真现在proteus软件中建立一个新的文件,再根据自己的
要求选择所需 的器件,把器件进行适当的排位后进行连接,连接后运行软件进行仿真。
5.2 实验测试 < br>电子时钟主要的设计要求是能够实现时钟的一般功能,以及包括时间的调整功
能,这个基于单片机 的电子时钟基本上实现了上述功能,能够通过时间调整电路对时
间进行调整以及复位。下述为18:30 :30的仿真图:

图8
18:30:30时刻的仿真效果图


6 心得体会
单片机作为我 们主要的专业课程之一,我觉得单片机课程设计很有必要,而且很
有意义。但当拿到题目时,确实不知道 怎么着手,有些迷茫,上网查资料,问老师,
在老师的帮助下,历时两个星期,解决一个又一个的困难, 终于完成任务。
在这次课程设计中,运用到了很多以前的专业知识,虽然过去从未独立应用过它
们,但在学习的过程中带着问题去学我发现效率很高,这是我做这次课程设计的一大
收获。另外,要做 好一个课程设计,就必须做到:在设计程序之前,对所用单片机的
内部结构有一个系统的了解,知道该单 片机内有哪些资源;要有一个清晰的思路和一
个完整的的软件流程图;在设计程序时,不能妄想一次就将 整个程序设计好,反复修
改、不断改进是程序设计的必经之路;要养成注释程序的好习惯,一个程序的完 美与
否不仅仅是实现功能,而应该让人一看就能明白你的思路,这样也为资料的保存和交
流提供 了方便;在设计课程过程中遇到问题是很正常德,但我们应该将每次遇到的问
题记录下来,并分析清楚, 以免下次再碰到同样的问题的课程设计结束了,但是从中
学到的知识会让我受益终身。发现、提出、分析 、解决问题和实践能力的提高都会受
益于我在以后的学习、工作和生活中。设计过程,好比是我们人类成 长的历程,常有
一些不如意,但毕竟这是第一次做,难免会遇到各种各样的问题。在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,不能
灵活运用。 < br>通过这次设计,我懂得了学习的重要性,了解到理论知识与实践相结合的重要意
义,学会了坚持、 耐心和努力,这将为自己今后的学习和工作做出了最好的榜样。另
外,要非常感谢我的指导老师,是她指 引我克服一个由一个的困难,让我学会对困难
无所畏惧,以及对问题的一些很重要的思考方法。
我学会对困难无所畏惧,以及对问题的一些很重要的思考方法。


参考文献
[1] 郑君里,应启珩,杨为理. 信号与系统(第二版)上册[M]. 高等教育出版
社,2000
[2] 郑君里,应启珩,杨为理. 信号与系统(第二版)下册[M]. 高等教育出版
社,2000
[3] 谭浩强. C程序设计(第二版)[M]. 清华大学出版社,2003
[4] d Stevens,范建华译. TCPIP详解卷1:协议[M]. 机械工业出版社,
2000
[5] Androw S. Tanenbaum. 计算机网络(第4版)[M]. Pearson,2004
[6] 吴坚,刘高平.基于GPRS网络的点对点图像传输方案[J] .计算机应用研究,
2004,5:222-223,231
[7] n, Editor. The Point-to-Point Protocol, RFC1661 [EBOL]. July 1994
[8] WAVECOM. AT Commands Interface Guide, Revision 002[EBOL].6th
November 2003


附录
附录1 硬件电路总图








附录2 元器件清单
表2 电子钟元器件清单
序号 元件名称
单片机
显示驱动三极

晶振
电容
电容
按键
排阻
规格型号参数 数量(个) 备注
1
2
3
4
5
6
7
AT89S52
A1013
11.0592MHz
30pF
22μF
BUTTON
RESPACK-810K
1
8
1
2
1
3
1








结 论
过去人们应用时钟仅仅是为了明确当前 时间。随着生产力的发展,社会的进步,生产生活对
时钟的需求越来越大,对时钟的体型、功能的要求也 各有不同。所以多功能电子时钟在今后的应
用也会越来越广泛。
基于单片机实现电子时钟,仅 仅是众多方法之一。并且市场上的实时时钟日历芯片品类繁多,
IC化的传感器各种各样,显示方式也愈 趋于人性化。所以多功能电子时钟有多种实现方案,能够
实现的功能也很多,笔者已经通过仿真和调试, 实现了时间日历显示和校对、闹铃等功能。本文
采用51单片机C语言进行编程,当然也可以应用汇编语 言编程。由于笔者能力有限,提供的程
序还可以进一步优化,并且还可以根据需求为电子时钟增设新功能 。
(1)巩固、加深和扩大单片机应用的知识面,提高综合及灵活运用所学知识解决
工业控制 的能力;


(2)培养针对课题需要,选择和查阅有关手册、图表及文献资料的自学能力 ,提
高组成系统、编程、调试的动手能力;
(3)过对课题设计方案的分析、选择、比较、熟 悉单片机用系统开发、研制的过
程,软硬件设计的方法、内容及步骤。

叶子英语-利事签是什么意思


instincts-smt是什么


恐象-斩钉截铁的反义词


剑桥少儿英语官网-轨迹的意思


经久-合伙的拼音


淙淙的读音-favorite是什么意思


啼叫-idler


獐怎么读音-视而不见的反义词



本文更新与2020-10-25 06:25,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/424826.html

基于单片机的简易电子时钟设计的相关文章