基于单片机的多功能秒表的课程设计(编辑修改稿)内容摘要:

表示数码管的四个位。 图 22 四位共阴数码管 6 3 系统硬件设计 本系统中,硬件电路主要有电源电路,时钟电路,复位电路,显示电路,以及一些按键电路等。 电源电路 电源电路是指提供给用电设备电力供应的电源部分的电路设计、使用的电路形式和特点。 电源有交流电源也有直流电源。 电源电路是系统最基 本的部分,任何电路都离不开电源部分,由于三端集成稳压器件所组成的稳压电源线路简单、性能稳定、工作可靠、调整方便,已逐渐取代分立元件,在生产中被广泛采用。 时钟电路 MCS51 单片机内部的振荡电路是一个高增益反相放大器,引线 XTAL1 和 XTAL2 分别为反向振荡放大器的输入及内部时钟工作电路的输入和来自反向振荡器的输出,该反向放大器可以配置为片内振荡器。 这里,我们选用 51 单片机 12MHZ的内部振荡方式,电容器 C C2 起稳定振荡频率、快速起振的作用, C1 和 C2 可在 20100PF 之间取 ,这里取 33P,接线时要使晶体振荡器 X1 尽可能接近单片机。 电路见图 31 所示: 图 31 时钟电路 7 复位电路 采用上电和和按键复位电路。 上电后,由于电容充电,使RST 持续一段高电平时间。 当单片机已在运行之中时,按下复位键也能使用使 RST 持续一段时间的高电平,从而实现上电加开关复位的操作。 这不仅能使单片机复位,而且还能使单片机的外围芯片也同时复位。 当程序出现错误时,可以随时使电路复位。 电路见图 32 所示: 图 32 复位电路 显示电路 我们采用的是数码管显示电 路。 在用数码管显示时,我们有静态和动态两种选择,静态显示程序简单,显示稳定,但是占用端口比较多;动态显示所使用的端口比较少,可以节省单片机的 I/O 口。 在设计中,我们采用 LED 动态显示,用 P0 口驱动显示。 由于 P0 口的输出级是开漏电路,用它驱动时需要外接上拉电阻才能输出高电平。 电路见图 33 所示: 8 图 33 显示电路 键盘电路 通过 1/0 口连接,将每个按钮的一端接到单片机的 I/O 口,另一端接地,这是最简单的办法。 如图 34 所示是实验板上按钮的接法,其功能很简单,五个键定义如下: 按键 1:开始 /暂停计时 按键 2:记录时刻 按键 3:上翻记录时刻 按键 4:下翻记录时刻 按键 5:清零当前记录时刻 9 图 34 键盘电路 4 软件设计 在软件设计中,一般采用模块化的程序设计方法,它具有明显的优点。 把一个多功能的复杂的程序划分为若干个简单的、功能单一的程序模块,有利于程序的设计和调试,提高了程序的阅读性和可靠性,使程序的结构层次一目了然。 各程序模块都要完成一个明确的任务,实现某个具体的功能,如:加计数、减计数、延时、快加、快减,计数和显示等,在具体需要时调用相应的模块即可 ,设计流程框图见图 41 所示: 10 开始 初始化化 =0?? =0?? =0?? =0?? =0?? 停止 下翻 上翻 够 8 个个。 N Y 记录 N N N N N Y Y Y Y Y 清零 图 41 设计流程框图 11 5 系统调试及结果分析 因为整个系统都是数字电路,因此可以用仿真软件来对其进行调试。 本次实际的电子秒表系统是用于测量较短而且较精准的时间,它具体有以下一些功能: ( 1)整个系统由六个小开关控制。 ( 2)系统在用之前能清零,即电子秒表开始计时之前,其他时间显示零。 ( 3)若不需要计时或需要中途暂停计时,则秒表能及时停止计时,但能保留停止计时之前所计的时间。 用 PROTEUS将编译生成的秒表 .HEX 文件下到单片机中,点击运行按相应的操作键即可看到下图的 效果: 图 51 仿真结果 经 proteus 软件仿真后,系统运行良好,结果正确。 12 6 总结 经过一个星期的课程设计,过程有曲折也有顺利。 在此期间我也失落过,也曾一度热情高涨。 在老师的指导下,我们顺利完成了课程设计的实物设计。 让我学到了以下几点: 1 将学习的理论知识通过实验融会贯通 ,让我对它的理解更加深刻,对程序的编译过程了解透彻。 2 本次课程设计以合作设计为主,因此培养了学习的积极性,让我能够配合同伴去分析问题、发现问题、解决问题,更增强与老师同学交流沟通和合作完成任务的能力。 3 由于这次课程设计不仅设计编程方面的知识,还涉及了其它学科的知识,例如 PROTEUS 等的基本知识。 程序是用汇编语言来编写的。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。