嵌入式系统 - 中断管理

本文详细介绍了嵌入式系统中断管理,包括中断的类别、功能、分类、处理过程和实时内核的中断管理。重点讲解了中断的类型如硬件中断、软件中断,以及中断的触发方式如边缘触发和电平触发。此外,还讨论了中断响应时间、恢复时间以及中断服务程序的设计原则。
摘要由CSDN通过智能技术生成

教材:嵌入式系统及应用,罗蕾、李允、陈丽蓉等,电子工业出版社


嵌入式系统开发

中断管理

实时内核的中断管理

广义中断的类别

通常被分为中断、自陷和异常(exception)

  • 中断是由于CPU外部的原因而改变程序执行流程的过程,属于异步事件,又称为硬件中断。自陷和异常则为同步事件
  • 自陷表示通过处理器所拥有的软件指令、可预期地使处理器正在执行的程序的执行流程发生变化,以执行特定的程序。自陷是显式的事件,需要无条件地执行
  • 异常为CPU自动产生的自陷,以处理异常事件。异常没有对应的处理器指令,当异常事件发生时,处理器也需要无条件地挂起当前运行的程序,执行特定的处理程序
中断的功能
  • 提高系统效率
  • 确保关键的功能及时执行

中断的分类

分类方式
  • 硬件中断是否可以被屏蔽:可屏蔽中断和不可屏蔽中断
  • 中断源:硬件中断和软件中断
  • 中断信号的产生:边缘触发中断和电平触发中断
  • 中断服务程序的调用方式:向量中断、直接中断和间接中断
可屏蔽中断和不可屏蔽中断
  • 可屏蔽中断:能够被屏蔽掉的中断
    • 外部设备的中断请求信号一般需要先通过CPU外部的中断控制器,再与CPU相应的引脚相连
    • 可编程中断控制器可以通过软件进行控制,以禁止或是允许中断
  • 不可屏蔽中断:在任何时候都不可屏蔽的
    • 一个比较典型的例子是掉电中断,当发生掉电时,无论程序正在进行什么样的运算,它都肯定无法正常运行下去。这种情况下,急需进行的是一些掉电保护的操作。
    • 对这类中断,应随时进行响应
硬件中断和软件中断
  • 硬件中断:由于CPU外部的设备所产生的中断
    • 可能在程序执行的任何位置发生,发生中断的时间通常是不确定的
    • 异步事件
  • 软件中断:同步中断或是自陷,通过处理器的软件指令来实现
    • 产生中断的时机是预知的,可根据需要在程序中进行设定
    • 软件中断的处理程序以同步的方式进行执行
    • 系统可通过该机制在用户模式执行特权模式下的操作
    • 软件调试的一个重要手段
边缘触发中断和电平触发中断
  • 边缘触发中断:
    • 中断线从低变到高或是从高变到低时,中断信号就被发送出去,并只有在下一次的从低变到高或是从高变到低时才会再度触发中断
    • 事件发生的时间非常短,有可能出现中断控制器丢失中断的情况
  • 电平触发中断:
    • 在硬件中断线的电平发
  • 4
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值