基于单片机的简易时钟设计-毕设论文

上传人:cl****1 文档编号:562469185 上传时间:2023-09-30 格式:DOC 页数:30 大小:517.50KB
返回 下载 相关 举报
基于单片机的简易时钟设计-毕设论文_第1页
第1页 / 共30页
基于单片机的简易时钟设计-毕设论文_第2页
第2页 / 共30页
基于单片机的简易时钟设计-毕设论文_第3页
第3页 / 共30页
基于单片机的简易时钟设计-毕设论文_第4页
第4页 / 共30页
基于单片机的简易时钟设计-毕设论文_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《基于单片机的简易时钟设计-毕设论文》由会员分享,可在线阅读,更多相关《基于单片机的简易时钟设计-毕设论文(30页珍藏版)》请在金锄头文库上搜索。

1、广西理工职业技术学院毕业设计(论文)说明书题 目: 简易电子时钟设计 系 别: 电气工程系 专业班级: 11机电2 姓 名: 黄武锦 学 号: 20112323 指导教师: 黎有好 二一三年七月二十四日目录1.概论12.整体设计思路22.1硬件各部分所能完成的功能32.2系统工作原理42.3时钟各功能分析及图解42.4.1电路各功能图解分析42.4.2电路功能使用说明73. 软件设计思路83.1 主程序模块83.2 数码管动态扫描模块93.3 当前时间计时模块93.4 闹钟输入输出模块103.5 当前时间调整模块123.6复位模块134.系统的调试和性能分析144.1系统的调试方法144.1.

2、1输入按键的调试144.1.2复位电路的调试144.1.3显示电路的调试144.1.4整个系统的联调144.2心得体会15参考文献15附录16附录A 系统原理图16附录B 程序源代码17电气信息学院课程设计评分表281.概论单片机系统作为一种典型的嵌入式系统,其系统设计包括硬件电路设计和软件编程设计两个方面, 其调试过程一般分为软件调试、硬件测试、系统调试3个过程。如果采用单片机系统的虚拟仿真软件Proteus,则不用制作具体的电路板也能够完成以上工作。数字钟是采用数字电路实现对时,分,秒,数字显示的计时装置,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表

3、,钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表的报时功能。数字钟已成为人们日常生活中的必需品,广泛应用于家庭、车站、码头、剧院、办公室等场所,给人们的生活、学习、工作带来极大的方便4。不仅如此,在现代化的进程中,也离不开电子钟的相关功能和原理,比如机械手的控制、家务的自动化、定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。而且是控制的核心部分。因此,研究数字钟及扩大其应用,有着非常现实的意义。电子钟在工业控制和日常生活中是很重要的,它不仅可以用于计时、提醒又可

4、用于对机器的控制,在自动化的过程中必然有电子钟的参与,因此电子钟的应用会越来越广泛。而且向着精确、低功耗、多功能发展。基于单片机设计的数字钟精确度较高, 因为在程序的执行过程中, 任何指令都不影响定时器的正常计数,即便程序很长也不会影响中断的时间。从而,使数字钟的精度仅仅取决于单片机的产生机器周期电路和定时器硬件电路的精确度。另外,程序较为简洁,具有可靠性和较好的可读性。如果我们想将它应用于实时控制之中,只要对上述程序和硬件电路稍加修改,便可以得到实时控制的实用系统,从而应用到实际工作与生产中去。数字电子钟的设计方法有多种,例如,可用中小规模集成电路组成电子钟, 也可以利用专用的电子钟芯片配以

5、显示电路及其所需要的外围电路组成电子钟还可以利用单片机来实现电子钟等等。这些方法都各有特点, 其中,利用单片机实现的电子钟具有编程灵活, 便于功能扩充, 精确度高等特点。2.整体设计思路这部分主要介绍工作安排和整体设计的思想。工作过程规划如下:熟悉硬件了解各引脚功能 分块设计各部分电路 完成整体电路图将分块的电路组合认真学习单片机C语言确定编程结构和思路综合各程序完成整体程序编辑各个程序模块用Proteus画出电路图调试程序,进行修改 对仿真中出现的问题 进行改正画出仿真图进行仿真准备器件、搭接电路仿真成功软硬件结合,完成任务书要求验证硬件电路成功对设计进行总结和分析 图2.1 整体设计思路

6、针对要实现的功能,拟采用AT89C51单片机进行设计,AT89C51 单片机是一款低功耗,高性能CMOS8位单片机,片内含4KB在线可编程(ISP)的可反复擦写1000次的Flash只读程序存储器,器件采用高密度、非易失性存储技术制造,兼容标准MCS- 51指令系统及80C51引脚结构7。这样,既能做到经济合理又能实现预期的功能。在程序方面,采用分块设计的方法,这样既减小了编程难度、使程序易于理解,又能便于添加各项功能。程序可分为显示程序、调时显示运用这种方法,关键在于各模块的兼容和配合,若各模块不匹配会出现意想不到的错误。本电子钟设计主要是依照图2.1中的流程做出来的,时间分配比较均匀。首先

7、,在编程之前必须了解硬件结构尤其是各引脚的用法,以及内部寄存器、存储单元的用法,否则,编程无从下手,电路也无法设计。这是前期准备工作。第二部分是硬件部分:依据想要的功能分块设计设计,比如输入需要开关电路,输出需要显示驱动电路和液晶电路等。第三部分是软件部分:先学习理解C语言的编程方法再根据设计的硬件电路进行分块的编程调试,最终完成程序设计。第四部分是软件画图部分:设计好电路后进行画图,包括电路图和仿真图的绘制。第五部分是软件仿真部分:软硬件设计好后将软件载入芯片中进行仿真,仿真无法完成时检查软件程序和硬件电路并进行修改直到仿真成功。第六部分是硬件实现部分:连接电路并导入程序检查电路,若与设计的

8、完全一样一般能实现想要的功能。2.1硬件各部分所能完成的功能(1)单片机发送的信号通过程序控制最终在数码管上显示出来。(2)单片机通过输出各种电脉冲信号来驱动控制各部分正常工作。(3)为使时钟走时与标准时间一致,校时电路是必不可少的,键盘用来校正数码管上显示的时间。(4)单片机通过控制闹铃电路来完成定时闹钟的功能。(5)单片机通过程序对闹铃信号灯进行控制,可方便我们对闹铃的开关以及是否在闹铃进行观察。(6)由于要设置定时功能,所以配置了对闹钟设置的键盘。2.2系统工作原理设计的电路主要由四模块构成:时间显示电路、信号显示电路、键盘控制电路、外设闹铃电路以及核心控制电路详细电路功能图如图2-2:

9、图2-2 详细电路功能图本设计采用汇编语言程序设计,使单片机控制数码管显示时、分、秒,当秒计数计满60时就向分进位,分计数器计满60后向时计数器进位,小时计数器按“23翻0”规律计数。时、分、秒的计数结果经过数据处理可直接送显示器显示。设计采用的是时、分、秒显示,单片机对数据进行处理同时在数码管上显示。2.3时钟各功能分析及图解2.4.1电路各功能图解分析(1) 时钟运行图仿真开始运行时,或按下K7键时,时钟从00:00:00开始运行,其中按下K1键可进入当前时间调节,K2和K3分别负责加一和减一,K5键为确认键。时钟运行图如图 2-3 所示:图2-3 时钟运行图(2) 闹钟开关指示图当按下K

10、4键后,可进入闹钟设时控制,设置完后按确认,按下K6,即开闹钟,信号显示区得开/关闹钟信号灯点亮,表示当时间到达闹钟的时间时,闹铃响;再次按下闹铃,为关闹铃,此时的信号显示区得开/关闹钟信号灯熄灭。如下图2-4:图2-4闹钟开关指示图(3)闹铃运行图当时间到达闹钟设置的时间时,蜂鸣器会按每秒两次的频率响,闹钟指示灯也会闪烁。如下图2-5:图2-5闹铃运行图该数字钟是用一片AT89C51单片机通过编程去驱动8个数码管实现的。通过7个开关控制,从上到下7个开关K1-K7的功能分别为: K1:设置当前时间时/分/秒 K2:加一按键 K3:减一按键 K4:设置闹钟时间时/分/秒 K5: 确认/关闭闹铃

11、 K6:开/关闹钟 K7: 复位控制键分别与P1.0P1.6口连接,通过P2口和P3口去控制数码管的显示如图所示P2口接数码管的ag端,是控制输出编码,P3口接数码管的18端,是控制动态扫描输出从P3.6输出一个信号使二极管发光,二极管在设置的闹钟时间到了时候发光,P3.7接一个蜂鸣器,若有乐曲可以去驱动扬声器实现。2.4.2电路功能使用说明 (1) 各个控制键的功能:可对时间进行校准调节(只能加);按下设置键数字时钟进入闹钟设置状态,设置闹钟的时间;时加、分加键是在校准时间时或设 置闹钟时间对小时数或分钟数调节而设置的;按下秒切换键就可以进入秒表模式,同时秒表也开始计时,按下秒表暂停、复位键

12、就暂停、归零,如果要重新对秒计时则可以按秒表开始、复位;清零键可以对闹钟清零。 (2)AT89C51单片机,通过编写程序对数码显示进行控制。 (3) 八个7段数码管显示时钟信号。3. 软件设计思路 根据设计的要求与内容,我们将该软件设计成七个模块,他们包括:主程序、数码管动态扫描模块、当前时间计时模块、闹钟输入输出模块、当前时间调整模块、数制转换模块以及复位模块。3.1 主程序模块主程序模块是单片机最先编译运行的模块,所以在这个模块里,我们要设置主程序和各个中断服务程序的入口地址、各种初始化以及开关扫描等。MCS-51系列单片机复位后,(PC)=0000H,而0003H002BH分别为各中断的

13、入口地址。所以,编程时应在0000H处写一条跳转指令。当CPU接受到中断请求信号并予以相应后,CPU把当前的PC内容压入栈中进行保护,然后转入相应的只能中断服务程序入口处执行。一般应在相应的中断服务程序入口处写一条跳转指令,并以跳转指令的目标地址作为中断服务程序的起始地址进行编程。初始化,是对将要用到的MCS-51系列单片机内部部件或扩展芯片进行初始工作状态设定。下图3-1是我们设计该主程序模块的程序框图。图3-1主程序设计框图3.2 数码管动态扫描模块在数码管动态扫描模块里,包含了两个子程序,一个是显示子程序,另一个是显示延时1MS子程序。其中显示延时1MS子程序是用软件延时的方法进行的,过

14、程较简单,这里就不画出它的程序框图,下图3-2为显示子程序的程序框图。图3-2显示子程序3.3 当前时间计时模块本软件中的当前时间计时模块实际上是T0定时器的中断服务程序,我们将T0定时器工作在方式一中,并让它每50MS产生一次中断。每产生一次中断,进入中断服务程序后,T0定时器重新转载初始值。MS50(它是对50MS中断次数统计的存储单元地址标号)就会自加一,接着对MS50进行判断,如果MS50没有到达20次(即一秒的时间),就返回到主程序。如果到达20次,MS50将清零,并将MIAO(MIAO是对秒进行计数的存储单元地址标号)将自加一。接着判断MIAO是否到达60次,没到就返回,到了60秒,MIAO将被清零,FEN(FEN是对分进行计数的存储单元地址标号)自加一。再判断FEN,过程与判断MIAO相识,也是到达60分就进1时并对分清零,时的寄存器地址标号是SHI,因为一天只有24小时,所以,如果S

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号