Arm处理器系统异常管理与中断屏蔽寄存器详解
1. Armv8 - M处理器特性
Armv8 - M处理器(包括Cortex - M23处理器)支持中断活动状态寄存器和中断控制器类型寄存器,而Armv6 - M处理器则不具备这些寄存器。由于Armv8 - M处理器具备中断活动状态寄存器,运行在这些处理器上的特权软件可以动态更改中断的优先级,这在Armv6 - M处理器(如Cortex - M0和Cortex - M0 + 处理器)中是不允许的。
2. 系统控制块(SCB)寄存器概述
系统控制块(SCB)包含一系列用于特定功能的寄存器:
- 系统管理(包括系统异常)
- 故障处理
- 协处理器和Arm自定义指令功能的访问管理
- 软件通过多个ID寄存器确定处理器的可用特性
为了便于软件开发,CMSIS - CORE使用SCB数据结构定义为一系列处理器特性提供了标准化的软件接口。与系统异常管理相关的部分SCB寄存器定义如下表所示:
| 地址 | 寄存器 | CMSIS - CORE符号 | 功能 |
| -------------- | --------------------------- | ---------------- | ------------------------------------------------------------ |
| 0xE000ED04 | 中断控制和状态寄存器 | SCB->ICSR | 系统异常的控制和状态 |
| 0xE000ED08 | 向量表偏移寄存器 | SCB->VTOR | 使向量表能够重新定位到其他地址位置
超级会员免费看
订阅专栏 解锁全文

7274

被折叠的 条评论
为什么被折叠?



