00到99秒表的课程设计方法 单片机秒表课程设计

这是我上个月做的单片机秒表课程设计,这个课程设计是实现00到99秒的一个秒表,
并且有开始和复位功能,
用了一个星期的时间,
附件里面包含秒表的单片机源程序,proteus仿真电路图和课设文档,
都是自己做的,请大家多多指教 。
仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)
00到99秒表的课程设计方法 单片机秒表课程设计

文章插图
文章插图
秒表的设计与仿真
一、设计要求
设计一个2位的LED数码显示的“秒表”:显示时间为00—99秒,每秒自动加1,另设计一个“开始”键和一个“复位”键 。
二、方案论证
方案一:
用数字电路来实现秒表的设计 。由NE555定时器组成的多谐振荡器通过开关控制,把脉冲送到计数器,通过计数器计数,在送入译码器进行译码,最后送入数码管进行显示 。框图如下:
(见附件)
优点:用到了之前学习的数电的相关知识,用NE555等一系列芯片就可以实现秒表的数字电路,显示直观,读取方便,精度高,不需要软件编程 。
缺点:使用的硬件非常多,使用的空间非常大,电路十分复杂,从经济上也不是很划算 。
方案二:
用单片机控制秒表来实现,采用AT89C51单片机为中心器件,利用其定时器/计数器定时和记数的原理,结合硬件电路如电源电路,晶振电路,复位电路,显示电路,以及一些按键电路等来设计计时器,将软件和硬件结合起来 。其中软件部分采用的是C语言编写程序,包含了显示程序,中断,延时程序等等,硬件用的Proteus软件来连接的秒表电路,主要使用了AT80C51芯片,晶振,电容等基本器件 。框图如下:(见附件)
优点:利用了单片机的定时功能,只需要少量的连线再加上软件编程控制,就可以实现秒表的设计电路,节省了花费,提高了技术的精度,更加容易修改 。
缺点:除了连接硬件电路,增加了软件的编程,需要额外掌握软件的编程技术,还要考虑到硬件的连接来进行编程 。
通过上面两种方案的比较,可以发现单片机使用的硬件更加少,计时的精度也很高,节省了很大的空间,修改时只需要修改部分程序和部分接线就可以改变计数方式和技术范围,所以这次的秒表的设计应该选择单片机设计的方案二 。
三、理论设计
硬件部分
1.按键电路:
00到99秒表的课程设计方法 单片机秒表课程设计

文章插图
文章插图
1.1 当按下K1键时给P1.6接口一个低电平,单片机工作,数码管开始显示,进行开始功能 。
1.2 当按下K2键时给P1.7接口一个低电平,单片机工作,数码管清零,进行复位功能 。
2.复位电路:
00到99秒表的课程设计方法 单片机秒表课程设计

文章插图
文章插图
2.1按键按下给单片机的RST接口一个高电平,让单片机系统复位 。
3.晶振电路:
00到99秒表的课程设计方法 单片机秒表课程设计

文章插图
文章插图
3.1晶振电路为单片机合格的时钟信号流,给整个电路的时序提供一个基本时钟,这里晶振频率为11.0592MHz 。
4.显示电路:
00到99秒表的课程设计方法 单片机秒表课程设计

文章插图
文章插图
4.1采用两个共阳LED数码管,通过单片机的P0接口和P3接口来驱动显示出秒数的个位和十位 。
软件部分
  • 软件流程图如下:
(见附件)
四、电路仿真及仿真结果分析

经验总结扩展阅读