DSP学习资料 Measuring our success is your success ! 第 5 课 F2812 中断系统的理解 作者:顾卫钢 接触过单片机的朋友应该都知道中断这个词汇,我想在任何一款事件驱动型的 CPU 里面都应该会有 中断,因为中断就是为响应某种事件而存在的。写过程序的朋友也应该知道,中断对于我们软件编程的意 义,中断的灵活使用不仅可以实现我们想要实现的功能,而且合理的中断安排可以提高事件执行的效率, 因此中断在 DSP 应用中的地位是很重要的。今天,我们就和大家一起来探讨 F2812 中的中断系统及其如何 正确编写外设的中断程序,以保证中断正确执行。 1. 什么是中断? 中断(Interrupt)是硬件和软件驱动事件,它使得 CPU 暂停当前的主程序,并转而去执行一个中断 服务程序。我们以办公时接电话为例来阐述一下中断的概念,通过这个例子大家也可以体会一下 CPU 执行 中断时候的一些流程的原理。 中断理解 假如您正在办公桌前专心致志的写程序,突然电话铃响了(很显然,电话是不可错过的,相比手中的活 而言肯定是更加重要和紧急的,电话事件相当于产生了一个中断请求,因为某种需要不得不请求您打断 手中正在做的事情) ,您拿起了电话进行交谈(您响应了电话的请求,相当于 CPU 响应了一个中断,停 下了正在执行的主程序,并转向执行中断服务程序)。电话很快就讲完了,您挂上了电话,又接着刚才 停下来的地方开始写程序了(中断服务子程序执行完成之后,CPU 又回到了刚才停下来的地方开始执行) ……