这一节专门介绍
51
单片机的中断系统,为后面学习外部中断、定时器中断、串口中断做好铺垫。
一、中断介绍
1.中断概念
中断是为使单片机具有对外部或内部随机发生的事件实时处理而设置的,中断功能的存在,很大程度上提高了单片机处理外部或内部事件的能力。它也是单片机最重要的功能之一,是我们学习单片机必须要掌握的。
为了能让大家更容易理解中断概念, 我们先来举一个生活事例: 你打开火,烧上一壶水。然后去洗衣服,在洗衣服的过程中,突然听到水壶发出水开的报警声,这时,你停止洗衣服动作,立即去关掉火,然后将开水灌入暖水瓶中,灌完开水后,你又回去继续洗衣服。这个过程中实际上就发生了一次中断。
对于单片机来讲,中断是指 CPU
在处理某一事件 A
时,发生了另一事件 B
,请求 CPU
迅速去处理(中断发生);CPU
暂时停止当前的工作(中断响应), 转去处理事件 B
(中断服务);待 CPU
将事件 B
处理完毕后,再回到原来事件 A
被中断的地方继续处理事件 A
(中断返回),这一过程称为中断。
再回来看前面讲的生活事例,与单片机中断结合分析,你的主任务是洗衣服,水开报警这是一个中断请求,这一时刻相当于断点处,你响应中断去关火,然后将开水灌入暖水瓶中,这一动作实际上就是处理中断程序,灌完开水后再回去继续洗衣服,相当于处理完中断程序后再返回主程序继续执行主程序。这里需要注意的是,水开是随时都有可能的,但是无论什么时候开,只要一开你将立即去处理它,处理完后再回来继续接着洗刚才那件衣服。单片机在执行程序时,中断也随时有可能发生,但无论何时发生,只要一旦发生,单片机将立即暂停当前程序,赶去处理中断程序,处理完中断程序后再返回刚才暂停处接着执行原来的程序。
单片机在执行程序时其程序流程图如下:
引起 CPU
中断的根源称为中断源。中断源向 CPU
提出中断请求,CPU
暂时中断原来的事务 A
,转去处理事件 B
,对事件 B
处理完毕后,再回到原来被中断的地方(即断点),称为中断返回。实现上述中断功能的部件称为中断系统(中断机构)。
当中央处理机 CPU
正在处理某件事的时候外界发生了紧急事件请求,要求CPU
暂停当前的工作,转而去处理这个紧急事件,处理完以后,再回到原来被中断的地方,继续原来的工作,这样的过程称为中断。实现这种功能的部件称为中断系统,请示