STM32中断优先级管理详解
需积分: 9 72 浏览量
更新于2024-07-17
收藏 148KB DOC 举报
STM32中断优先级和开关总中断
STM32(Cortex-M3)中有两个优先级的概念——抢占式优先级和响应优先级,都是 STM32 中断系统的关键概念。抢占式优先级决定了中断的嵌套关系,即高抢占式优先级的中断可以嵌套低抢占式优先级的中断。而响应优先级则决定了当两个中断同时到达时,中断控制器如何决定先处理哪一个。
在 STM32 中,每个中断源都需要被指定这两种优先级,因此需要有相应的寄存器位记录每个中断的优先级。在 Cortex-M3 中,定义了 8 个比特位用于设置中断源的优先级,这 8 个比特位可以有 8 种分配方式:
1. 所有 8 位用于指定响应优先级
2. 最高 1 位用于指定抢占式优先级,最低 7 位用于指定响应优先级
3. 最高 2 位用于指定抢占式优先级,最低 6 位用于指定响应优先级
4. 最高 3 位用于指定抢占式优先级,最低 5 位用于指定响应优先级
5. 最高 4 位用于指定抢占式优先级,最低 4 位用于指定响应优先级
6. 最高 5 位用于指定抢占式优先级,最低 3 位用于指定响应优先级
7. 最高 6 位用于指定抢占式优先级,最低 2 位用于指定响应优先级
8. 最高 7 位用于指定抢占式优先级,最低 1 位用于指定响应优先级
然而,STM32 为了减少寄存器位的使用,把指定中断优先级的寄存器位减少到 4 位。这些 4 个寄存器位的分组方式如下:
1. 第 0 组:所有 4 位用于指定响应优先级
2. 第 1 组:最高 1 位用于指定抢占式优先级,最低 3 位用于指定响应优先级
3. 第 2 组:最高 2 位用于指定抢占式优先级,最低 2 位用于指定响应优先级
4. 第 3 组:最高 3 位用于指定抢占式优先级,最低 1 位用于指定响应优先级
5. 第 4 组:所有 4 位用于指定抢占式优先级
STM32 中断优先级的概念是 STM32 中断系统的核心概念,它决定了中断的嵌套关系和处理顺序。正确地理解和应用中断优先级是 STM32 开发的关键。
2839 浏览量
103 浏览量
2021-10-07 上传
2024-03-10 上传
2024-01-24 上传
2012-10-01 上传
appleliuliupan
- 粉丝: 0
- 资源: 3
最新资源
- 基于DMA方式的实时数据采集处理系统设计
- python高级编程
- 学习oo好榜样(设计良品)
- 2008年下半年软件设计师
- 2008软件设计师考试
- 市1:1000000 ~ 1:5000 基本比例尺测绘成果元数据内容采集建库基本要求
- max1338芯片的详细介绍
- 应用光学中英文复习资料2
- Oracle 9i DBA指南.pdf
- 常用电子元器件检测方法与经验
- The C Programming Language (2nd Edition).pdf
- 电信运营商收入保障系统设计与实现
- MSP430常用模块应用原理
- 计算机网络自顶向下方法与intended特色
- sql常用语法.doc(初学数据库者必备 )
- 普通示波器及数字示波器基础知识