[技术手册] Cortex-M3工作模式与异常

[复制链接]
 楼主| eefas 发表于 2022-9-10 21:52 | 显示全部楼层 |阅读模式
一、工作模式
线程模式和手柄模式。

当处理器处在线程状态下时,既可以使用特权级,也可以使用用户级;另一方面, handler模式总是特权级的。在复位后,处理器进入线程模式+特权级。
二、异常和中断
Cortex-M3 支持大量异常,包括 16-4-1=11个系统异常,和最多 240 个外部中断——简称 IRQ。具体使用了这 240 个中断源中的多少个,则由芯片制造商决定。由外设产生的中断信号,除了 SysTick的之外,全都连接到 NVIC 的中断输入信号线。典型情况下,处理器一般支持 16 到 32 个中断。

类型编号为 1-15 的系统异常,从 16 开始是外部中断类型。
三、向量表

因为地址 0 处应该存储引导代码,所以它通常映射到 Flash或者是 ROM 器件,并且它们的值不得在运行时改变。然而,为了支持动态重分发中断, CM3 允许向量表重定位——从其它地址处开始定位各异常向量。这些地址对应的区域可以是代码区,但更多是在 RAM 区。在 RAM 区就可以修改向量的入口地址了。为了实现这个功能, NVIC中有一个寄存器,称为“向量表偏移量寄存器”(在地址 0xE000_ED08处),通过修改它的值就能重定位向量表。
向量表偏移量寄存器(VTOR)(地址:0xE000_ED08)

AloneKaven 发表于 2022-10-5 20:27 | 显示全部楼层
目前还没遇到过
szt1993 发表于 2022-10-6 15:38 | 显示全部楼层
我也还没遇到过,可能理解还不是很深入
海滨消消 发表于 2022-10-10 14:24 来自手机 | 显示全部楼层
还是楼主研究的深入,这样的问题都被你遇到了
l1uyn9b 发表于 2023-2-1 15:13 | 显示全部楼层
线程模式是不是就属于操作系统了啊
g0d5xs 发表于 2023-2-1 16:22 | 显示全部楼层
我觉得线程模式就是利用了中断的方法
ex7s4 发表于 2023-2-1 17:26 | 显示全部楼层
中断嵌套吧,这算是
w2nme1ai7 发表于 2023-2-1 18:23 | 显示全部楼层
线程是不是就操作系统这么叫啊
q1ngt12 发表于 2023-2-1 19:45 | 显示全部楼层
一般都用不到这么深入的
su1yirg 发表于 2023-2-4 06:05 | 显示全部楼层
中断向量表吧这算是,这个我还不咋懂
tax2r6c 发表于 2023-2-4 08:02 | 显示全部楼层
向量表好像跟存储有关系,就是让程序如何运行的那种
lamanius 发表于 2023-2-4 10:00 | 显示全部楼层
一般我都是用中断,就能解决大部分的问题了
zhizia4f 发表于 2023-2-4 11:23 | 显示全部楼层
其实还是操作系统有点意思,使用起来很不错
t1ngus4 发表于 2023-2-4 12:13 | 显示全部楼层
手柄模式都没听说过,楼主能展开说说吗
您需要登录后才可以回帖 登录 | 注册

本版积分规则

95

主题

3114

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部

95

主题

3114

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部