《嵌套向量中断》PPT课件.ppt
《《嵌套向量中断》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《嵌套向量中断》PPT课件.ppt(44页珍藏版)》请在三一办公上搜索。
1、嵌套向量中断,中断的概念,CPU正在执行程序时,单片机外部或内部发生的某一事件,请求CPU迅速去处理。CPU暂时中止当前的工作,转到中断服务处理程序处理所发生的事件。处理完该事件后,再回到原来被中止的地方,继续原来的工作,这称为中断。CPU处理事件的过程,称为CPU的中断响应过程。,执行主程序,主程序,继续执行主程序,中断请求,中断响应,执行中断处理程序,中断返回,对事件的整个处理过程,称为中断处理(或中断服务,ISR)。,中断方式优点:大大地提高了CPU的工作效率。,能够实现中断处理功能的部件称为中断系统,能实现中断响应、中断处理(服务)、中断返回和中断屏蔽。这是中断系统最基本的功能。能实现
2、中断优先级管理。即当有多个中断源同时申请中断时,CPU能够优先响应最紧急的中断申请。能实现中断嵌套。即当CPU正在为优先级较低的中断源服务时,具有较高优先级的中断源提出中断申请,此时中断系统应当允许较高优先级的中断源中断较低优先级的中断源,待较高优先级的中断处理完成后,再接着处理较低优先级的中断。这种中断服务程序再被中断的过程称为中断嵌套。一般的中断系统应能够处理多级中断嵌套,中断系统需要解决的问题:,产生中断的请求源称为中断请求源。,常见的中断源有:一般的I/O设备,如键盘、打印设备。数据通道中断源,如AD等。实时时钟。故障源,中断源向CPU提出的处理请求,称为中断请求(或中断申请)。进入中
3、断保护现场中断处理恢复现场 中断返回,首先,CPU应收到一个可靠的中断请求信号,且该中断请求信号应一直保持到它被响应为止。如果中断请求信号中途撤销,则CPU将不再响应。其次,在中断请求的同时,没有更高级的请求信号发生。如果它们同时发生,CPU将先处理优先级别较高的请求。第三,CPU内部应处在开中断(允许中断)状态。第四,CPU至少要在当前指令执行完成时才可能响应中断。,异常/中断,系统异常是Cortex-M3内核自带的一些异常,比如复位、总线Fault和SysTick等等外设中断是指制造CPU的厂家加入的,比如串口、定时器中断等等异常和中断都可以“中断”正常执行的代码流区别在于:异常是Cort
4、ex-M3内核产生的“中断”信号,在执行指令或访问存储器时产生的,对Cortex-M3 内核来说是“同步”的而中断是Cortex-M3内核外部(片上外设或外部中断信号)产生的“中断”信号中断请求信号一般来自内核的外部片上外设或外扩的设备等,对Cortex-M3 内核来说是“异步”的。,NVIC(Nested Vectored Interrupt Controller),Cortex-M3 处理器在内核水平上搭载了一个中断控制器嵌套向量中断控制器NVIC 功能:1 可嵌套中断支持 所有异常都可被赋予不同的优先级,当前异常的优先级被存储在特殊功能寄存器PSRs的专用字段中,当一个新的异常发生时,硬
5、件会自动进行优先级比较,若发现最新异常的优先级较高,处理器则会中断当前的服务例程(或者是普通程序),而响应新来的异常即抢占了低优先级异常。,NVIC 功能,2.向量中断支持 当开始响应一个中断后,Cortex-M3 会自动定位一张向量表,根据中断号从表中找出相应中断的入口地址,然后跳转过去执行3.动态优先级调整支持 优先级在中断运行期间可以通过软件进行修改。在中断服务例程执行完成前,中断是被锁定的,无法进行深度激活,避免了意外重入的风险。4.中断延迟大大缩短 Cortex-M3 为了缩短中断延迟,引入了多个新特性。包括中断现场的自动保护与恢复,“咬尾中断”和“晚到中断”机制的支持5 中断可屏蔽
6、 通过设置BASEPRI、PRIMASK 和FAULTMASK 等寄存器,既可屏蔽优先级低于某个阈值的中断,也可以屏蔽所有中断,保证时间关键的任务能在最后期限前完成。,异常类型,Cortex-M3 在内核水平上搭载了一个异常响应系统,支持11 种系统异常和240 个外部中断输入,如表2.9 所列。其中,编号115 对应的是系统异常,大于等于16 的则全是外部中断。除了个别异常有固定的优先级外,其它异常的优先级都是可编程的。系统异常和外部中断通过不同的寄存器组进行控制。系统异常是Cortex-M3 内核支持的基本异常,与具体的芯片无关,而外部中断则是与芯片相关的,芯片厂商会根据需要和用途设计中断
7、源数目(1-240)和优先级的位数。LPC1700 系列Cortex-M3 支持35 个外部中断和32 个中断优先级。,异常向量表,当有中断发生并得到响应时,处理器首先将定位其中断服务函数的入口地址,以便进行相应的处理。中断向量即是指中断服务程序的入口地址,在Cortex-M3 中,规定内存储器的最低一部分区域用来存放中断向量(共256 个),称这一片内存区为向量表。缺省情况下,Cortex-M3中的向量表位于Flash 空间的零地址处,表中每个向量占用4 个字节,中断的具体行为,一个中断输入被认为有效后,就会被挂起。即使一段时间后该中断的中断源取消了此次请求,挂起状态仍然会被保存,直到此中断
8、成为系统中最高的优先级时,就会得到处理器的响应但是,如果挂起中断在得到响应之前,其挂起状态被清除了(通过修改PRIMASK 或FAULTMASK 寄存器),则此次中断请求无效,中断的挂起状态在NVIC 的寄存器中是可写的,用户通过修改相关寄存器可挂起一个中断,也可清除一个中断。,中断的具体行为,当某中断的服务例程开始执行时,就称此中断进入了“活跃”状态,并且其悬起位会被硬件自动清除。在一个中断活跃后,直到其服务例程执行完毕,并且返回(亦称为中断退出)后,才能对该中断的新请求予以响应(单实例)。当然,新请求在得到响应时,亦是由硬件自动清零其悬起标志位。中断服务例程也可以在执行过程中把自己对应的中
9、断重新悬起,中断的具体行为,如果在执行某中断的服务函数期间,中断源一直保持请求信号有效,该中断就会在其服务程序返回后再次被挂起,,同样,若中断在服务例程执行过程中释放了请求,但在服务例程返回前又发出了新的请求信号,则处理器会记住此动作,将再次挂起该中断,中断的具体行为,如果中断在得到响应之前,其请求信号以脉冲的形式出现若干次,则被视为只有一次请求,中断的具体行为,中断源,每一个外围设备可以有一条或几条中断线连接到向量中断控制器。多个中断源也可以共用一条中断线。除过ARM内核指定的某些标准外,哪一条中断线连接到哪一个中断源是无关紧要的或没有优先级的,寄存器,每个外部中断都在NVIC的下列寄存器中
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌套向量中断 嵌套 向量 中断 PPT 课件

链接地址:https://www.31ppt.com/p-5633806.html