深入理解Cortex-M中断体系(基于stm32)

目录

1. 中断/异常介绍

2. Cortex-M的中断体系理论知识

3. 中断配置流程

4. 中断相关的一些概念

1)向量表

2)中断优先级


1. 中断/异常介绍

        ARM Cortex-M中的异常和中断用于响应和处理各种事件,其中异常是处理器预先定义的一些特定事件,异常拥有固定的优先级,用户不可更改,常见的异常包括:

1)复位异常:上电或复位时发生

2)NMI:不可屏蔽中断,用来处理高优先级的紧急事件

3)HardFault: 硬件错误,处理系统的严重错误,如存储器访问错误,系统总线错误等

4)软件错误:CPU执行某个操作时导致的错误,如除零异常、非法地址访问异常等

5)SVC:系统调用,用在用户模式切花到特权模式以执行系统服务

6)PendSV:可挂起系统调用,用在多任务操作系统的上下文切换

7)SysTick:系统滴答定时,常用来作为操作系统的时基

        中断是由CPU外部设备(GPIO/其它外部引脚)或内部外设(Timer/ADC/USART)产生的信号,优先级可由用户自行控制,常用在实时和多任务操作的场景中。

2. Cortex-M的中断体系理论知识

        如图Fig1所示,多个外部中断源最终汇聚至NVIC中断控制器中(管理多个中断源的使能开关、优先级等,提供‘异常向量表’,NVIC中的每个异常/中断都有一个中断编号),NVIC会从中获取优先级最高的中断,随后向CPU发出最高优先级的中断信号来处理。

  • 27
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值