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自由决定其属于那一种中断。
相关推荐
Porco.w2 小时前
STM32 DMA
stm32·单片机·嵌入式硬件
BreezeJuvenile3 小时前
外设模块学习(17)——5V继电器模块(STM32)
stm32·单片机·嵌入式硬件·学习·5v继电器模块
GilgameshJSS3 小时前
STM32H743-ARM例程40-U_DISK_IAP
c语言·arm开发·stm32·单片机·嵌入式硬件
hazy1k5 小时前
51单片机基础-GPIO结构详解
stm32·单片机·嵌入式硬件·51单片机
云山工作室5 小时前
基于协同过滤算法的话剧购票系统(论文+源码)
单片机·物联网·毕业设计·课程设计·毕设
辰哥单片机设计6 小时前
STM32项目分享:智能水产养殖系统
stm32·单片机·嵌入式硬件
一枝小雨6 小时前
【OTA专题】2 初级bootloader架构和基础工程移植
stm32·单片机·嵌入式·ota·bootloader·固件升级·加密升级
BreezeJuvenile14 小时前
外设模块学习(15)——MQ-2烟雾气体传感器(STM32)
stm32·单片机·学习·mq-2·烟雾气体传感器
Jie_jiejiayou16 小时前
定时器详解以及呼吸灯实现 — STM32(HAL库)
stm32·单片机·嵌入式硬件·定时器
逆小舟16 小时前
【STM32】定时器、PWM
stm32·单片机·嵌入式硬件