首页 理论教育简易秒表设计:实现方案

简易秒表设计:实现方案

【摘要】:定时器的使用要经过相关的设置和计算,本任务以1 s为单位计时,如果定时器设为50 ms,要计满1 s的时间而要计数20次,详细计算在后面介绍。图7-1 简易数字秒表Proteus仿真图完成以上任务的过程中用到了定时器中断的概念,什么是中断呢?

1.任务要求

在任务5.2的基础上,实现数码管精确显示时间,要求第3位、第4位显示分(0~59),第2位、第1位显示秒(0~59),计时60分钟归零。

2.任务目的

(1)通过本任务的设计,了解单片机中断的工作原理和定时器中断的应用。

(2)了解单片机定时器的结构、工作方式、工作模式的设定及初始值设置技能。

(3)掌握时间定时器的使用和编程方法。

(4)掌握外部中断的使用和编程方法。

(5)掌握在Keil环境中调试定时器的方法。

(6)掌握在Proteus环境中,实现定时器、外部中断的仿真应用。

3.任务分析

在前面学习的项目中多次用for循环语句来完成一定的延时,在项目4中也介绍过这种软件延时是不精确的,而且对编译系统的依赖很强,在一些需要精确延时的地方这种方法显然是行不通的,所以要用到精确的时间控制。在单片机中提供精确定时的部件是定时器,它是单片机内部单独的硬件部件,它与CPU和晶振通过内部某些控制线连接并相互作用,CPU一旦设置开启定时功能后,定时器在晶振的作用下自动开始计时,当定时器计数满后,会产生中断,即通知CPU该如何处理。

定时器的使用要经过相关的设置和计算,本任务以1 s为单位计时,如果定时器设为50 ms,要计满1 s的时间而要计数20次,详细计算在后面介绍。

4.电路设计(www.chuimin.cn)

在任务5.2的电路基础上实现。

5.源程序设计

6.Proteus仿真

Proteus仿真结果如图7-1所示。在Proteus环境下运行控制程序,可以看到数码管上的时间变化。

图7-1 简易数字秒表Proteus仿真图

完成以上任务的过程中用到了定时器中断的概念,什么是中断呢?中断的现象在生活中随处可见,例如你在工作时,电话突然响了,你放下手头的工作,去接听电话,电话接听完之后,你回到岗位上继续工作,这一过程就是中断的“产生—处理—返回”过程,相对于工作而言,电话这一事件就是工作的中断源。中断也是处理器必备的基本功能,通过中断可以有效地提高处理器应对突发事件的能力,使其在执行一个任务的同时,监视和处理其他几项任务,达到一“芯”多用的目的。