ARM单片机的中断详细过程(重要)

ARM单片机的中断详细过程(重要)

一、ARM异常中断

ARM的异常(中断源)总共分为三类(八种):

  • 三类:
    • (1)执行指令引起的直接异常:软件中断,未定义的指令和预取指令终止(地址无效、权限问题、内存故障、缓冲一致性)等。
    • (2)指令执行引起的间接异常:读取和存储数据时的数据终止。
    • (3)外部产生的异常(与指令流无关):复位,IRQ,FIQ(快速中断)。
  • 在8种异常中断中,向量中断控制器VIC仅仅控制外部中断源,然后将其输出为FIQ和IRQ!!!"向量中断控制器VIC"的作用就是控制允许哪些中断源可以产生中断可以产生那类中断产生中断后执行哪段服务程序

二、关于中断向量表(多级中断向量表)

异常有四种:中断、陷阱、故障、终止。每一种异常都有对应的处理子程序,所以系统启动时初始化有一个中断向量表在从地址0开始的32个字节的空间内。

  • 异常细分下来总共有8种:复位未定义指令软件中断SWI指令预取终止数据访问终止保留IRQFIQ。其中FIQ和IRQ是由向量中断控制器(VIC)来进行管理的外部中断,细分下来总共有大概30种左右的中断源。这些中断也对应一个中断向量表,大概是从0x0000020-0x000000c0。也就是说,由于IRQ数量众多,所以还需要一个二级普通中断向量表!这些中断源经由VIC之后可以由VIC自由决定其属于那一种中断。
相关推荐
2601_95079068几秒前
深圳国产单片机厂商怎么选?技术能力与服务能力检查表
单片机·嵌入式硬件·国产mcu·芯片厂商·深圳单片机·单片机选型
hongmai6668882 小时前
MP2348GTL-Z:这颗24V/4A同步降压芯片,把性能和体积平衡得恰到好处
c语言·开发语言·arm开发·单片机·5g
笨笨饿3 小时前
#135_代码中的类型重定义艺术:从基础封装到函数类型设计
开发语言·stm32·单片机·嵌入式硬件·mcu·物联网·嵌入式实时数据库
西城微科方案开发3 小时前
高精度低功耗胎压计方案——气压表解决方案
单片机·嵌入式硬件
小+不通文墨6 小时前
使用vscode里的U8G2 库编写OLED菜单控制
经验分享·笔记·单片机·嵌入式硬件·学习
oshan20127 小时前
零基础STM32入门教程--12-I2C 串行通迅
stm32·单片机·嵌入式硬件
Messy create7 小时前
【继续充值】
单片机
智购科技无人售货机工厂8 小时前
2026自动售货机防拆机物理安全设计:从安全螺丝到结构互锁的工程实践~YH
android·网络·驱动开发·python·单片机·安全·云原生
RedJACK~8 小时前
Windows11一级右键菜单添加Alacritty教程
单片机·嵌入式硬件
智闲电子设计9 小时前
STM32 DAC 实战:用 DMA 把定时器表变成波形,自制信号发生器
stm32·单片机·嵌入式硬件