单片机原理及系统课程设计。
专业。班级。
姓名。学号。
指导教师。兰州交通大学自动化与电气工程学院。
2013 年 3 月 7 日。
本设计是利用at89c51和数码管制作的简单电子钟,采用的是以单片机芯片为核心,辅以必要的外围电路包括时钟电路、复位电路、按键、数码管等部分,可实现时间的显示,调时,复位等功能。最后通过proteus**、测试,该电子钟系统完成了预期的效果。
关键词:电子钟;at8c51;数码管。
目录。1 引言 3
2 设计方案及原理 3
2.1 设计要求 3
2.2 实现时钟计时的基本方法 3
2.3 电子钟的时间显示 3
2.4 电子钟的时间调整 4
2.5 计时方案 4
2.6 控制方案 4
3 系统硬件电路设计 4
3.1 系统组成框图 4
3.2 电子钟硬件电路设计 5
4 系统软件设计 5
4.1 程序流程图 5
4.2 软件分析 7
5 系统**与实验调试 7
5.1 系统** 7
5.2 **结果分析 8
6 设计总结及体会 8
7 参考文献 8
附录 9基于at89c51单片机的电子钟设计。
数字钟是采用数字电路实现对时,分,秒,数字显示的计时装置,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过式钟表,钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表的报时功能。数字钟已成为人们日常生活中的必需品,广泛应用于家庭、车站、码头、剧院、办公室等场所,给人们的生活、学习、工作带来极大的方便,不仅如此,在现代化的进程中,也离不开电子钟的相关功能和原理,比如机械手的控制、家务的自动化、定时自动报警、按时自动打铃、时间程序自动控制、定时广播、自动起闭路灯、定时开关烘箱、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。而且是控制的核心部分。
因此,研究数字钟及扩大其应用,有着非常现实的意义。
1)时制式为24小时制。
2)采用led数码管显示时、分,秒采用数字显示。
3)具有方便的时间调校功能。
利用at89c51系列单片机的可编程定时/计数器、中断系统来实现时钟计数。
1) 计数初值计算:
把定时器设为工作方式1,定时时间为50ms,则计数溢出20次即得时钟计时最小单位秒,而100次计数可用软件方法实现。
假设使用定时器t,方式1,50ms定时,fosc=12mhz。
则初值x满足(216-x)×1/12mhz×12μs =50000μs
x=15536→0011110010110000→3cb0h
2) 采用中断方式进行溢出次数累计,计满20次为秒计时(1秒)。
3) 从秒到分和从分到时的计时是通过累加和数值比较实现。
电子钟的时钟时间在三个两位数码管上进行显示,因此,在内部ram中设置显示缓冲区共6个单元。
led6 led5 led4 led3 led2 led1
时十位时个位分十位分个位秒十位秒个位。
电子钟设置3个按键通过程序控制来完成电子钟的时间调整。
a键实现秒的调整。
b键实现分的调整。
c键实现时的调整。
利用at89c51单片机内部的定时/计数器进行中断时,配合软件延时实现时、分、秒的计时。该方案节省硬件成本,且能使读者在定时/计数器的使用、中断及程序设计方面得到锻炼与提高,对单片机的指令系统能有更深入的了解,从而对学好单片机技术这门课程起到一定的作用。
at89c51的p0口和p2口外接由三个两位led数码管(led6~led1)构成的显示器,用p2口作led的段码输出口,p3口作六个led数码管的位控输出线,p1口外接三个按键a、b、c构成键盘电路。
简易电子钟采用其现有的i/o直接驱动便可完成,所以本设计中采用这种设计方案。
根据以上的电子时钟的设计要求,该时钟可以分为以下的几个硬件电路模块:单片机模块、数码显示模块与按键模块,模块之间的关系图如下所示。
图1.硬件电路方框图。
系统采用动态显示方式,用p2口来控制led数码管的段控线,而用p3口来控制其位控线。
图2 数码显示电路。
本设计的软件部分采用c语言编写,并将其模块化,在主程序中进行调用。在主程序中首先要完成初始化工作,然后进入循环阶段,并带六位数码管显示。
软件设计的重点在于秒脉冲信号的产生、显示的实现、以及按键的处理等方面。基于软件的秒脉冲信号通常有延时法和定时中断法。延时法一般采用查询方式,在延时子程序前后需要查询和处理的程序,中断法的原理是,利用单片机内部的定时器溢出中断来实现。
按键程序查看是否有按键按下,以实现相应的按键功能。
系统定时程序流程图如图3所示。
图3 程序流程图。
在编程上,首先进行了初始化,定义程序的的入口地址以及中断的入口地址,在主程序开始定义了一组固定单元用来储存计数的时。分。秒,在显示初值之后,进入主循环。
在主程序中,采用扫描法循环扫描对不同的按键进行扫描,实现秒调整时分秒的功能。
运用proteus软件进行**现在proteus软件中建立一个新的文件,再根据自己的要求选择所需的器件,把器件进行适当的排位后进行连接,连接后运行软件进行**。首先打开proteus软件,在元件库中找到要选用的所有元件,然后进行原理图的绘制;绘制好后再选keil已经编译好的。hex文件,选择运行,观察显示结果,根据显示的结果和课设的要求再修改程序,再运行查,直到满足要求。
按下a键调整秒,按下b键调整分,按下c键调整时。用proteus软件进行**,其**的结果如图4所示。
图4. proteus**结果显示。
该电子钟在运行中存在一定的误差,误差产生有三种可能,首先是采用的计时方案是软件计时的,计时优势利用中断来实现。而当电子钟运行时间1秒时,又得去执行中断程序,这个过程是需要时间的,所以就产生了一定的误差,当然这个误差是避免不了的,其次还有硬件系统也有一定的影响。第三,设计用到11.
0592mhz的晶振,计算是满20次为一秒钟,但实际会慢很多。
回顾此次课程设计,至今仍感慨颇多,从拿到题目到完成整个电路,从理论到实践,在整整两个星期的时间里,可以学到很多的东西,同时不仅巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正掌握,从而提高自己的动手能力和独立思考的能力。刚开始无从下手,正所谓凡事开头难,的确不假。
把课本和一些资料书看了几遍,总算有点头绪,通过几天的思考和同学们的讨论,终于确定了自己的设计方案。接下来是元件把硬件连接起来,再结合设计好的程序调试,反复调试了好多次,得到了应有的效果。
在实验过程中,我们遇到了不少的问题。比如:显示不出数字,数字模糊这样的问题。
在老师和同学的帮助下,把问题一一解决,同时,在实验中暴露出我们在理论学习中所存在的问题,通过实验加深了我们对这些知识的理解。最后用一句话来结束吧。“实践是检验真理的唯一标准”。
只有把所学的理论知识运用到生活当中,才能发挥它最好的作用。
1] 李光飞。单片机课程设计实例指导[m].北京:北京航空航天大学出版,2004.
2] 曹才开。电工电子实训教程[m].北京:清华大学出版社,1998.
单片机课程设计
可变程序控制器是集微机技术 自动化技术 通讯技术于一体的通用工业控制装置。它可靠性强 性能 比高 使用方便,已在工业控制的各个领域里得到了极为广泛的应用,成为实现工业自动化的一种强有力的工具 1 plc的定义有许多种。国际电工委员会 iec 对plc的定义是 可编程控制器是一种数字运算操作的电子系统...
单片机课程设计
目录。内容提要2 关键词2引言3 一 硬件电路设计3 一 电路板原理3 二 电路元器件3 二 软件设计3 一 秒钟设计方案3 二 时钟设计方案4 结语7单片机时钟设计。内容摘要 一 在实验板上用动态扫描显示00 59秒钟,具体要求如下 一 6m晶振 二 l9 l10显示00 59十进制数并循环,间隔...
单片机课程设计
1 选题背景。1.1 家庭智能防盗报警系统设计的背景及目的。随着经济的发展,人们对防盗 防劫 防火保安设备的需求量大大增加。针对偷盗 抢劫 火灾 煤气泄漏等事故进行检测和报警的系统,其需求也越来越高。家居智能是以家为平台,兼备建筑 自动化,智能化于一体的高效 舒适 安全 便利的家居环境。自动化的家居...