你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

如何在keil中观测各中断的优先级顺序

[复制链接]
骑着单车追捷豹 提问时间:2016-2-26 12:00 /
各位前辈,我设置了个中断的优先级,想在KEIL中观测程序运行后,各中断优先级的顺序,如何查看?是在Peripherals中的NVIC窗口中看吗??其中的   E   P   A   Priority各代表什么意思呢??谢谢

1.jpg
收藏 1 评论7 发布时间:2016-2-26 12:00

举报

7个回答
creep 回答时间:2016-2-26 15:09:54
E表示 enable    使能中断
P表示 pending 有中断挂起
A表示active     有中断激活
Priority    中断优先级

猜的,不一定对
watershade 回答时间:2016-2-26 22:29:05
本帖最后由 watershade 于 2016-2-26 22:30 编辑

creep大神也但是优先级怎么还有208.这是甚意思
yanhaijian 回答时间:2016-2-27 10:29:46
应该无法观测吧。还是看代码推算。
creep 回答时间:2016-2-27 11:52:00
本帖最后由 creep 于 2016-2-27 11:53 编辑
watershade 发表于 2016-2-26 22:29
creep大神也但是优先级怎么还有208.这是甚意思

1、首先STM32的优先级只使用8个bit中的高4bit来表达中断源优先级,低四个bit总是为0.类似如下(下面的情况使用了高3个bit):
1.png
2.png
2、其次是中断优先级进行了分组:

3.png
3、假设我们使用优先级组2话那就是2个bit的抢占优先级和2个bit的相应优先级,同时我们设置抢占优先级为3,响应优先级为1。
     也就是对应的优先级寄存器Bit7为1,Bit6为1,Bit5为0,Bit4为1 ,bit3到bit0默认为0,那么中断源优先级的值就是208(1101 0000)
然后将这个值写到对应中断源的寄存器中:
4.png
具体的参考《CM3权威指南》异常和中断控制部分:
Cortex-M3 权威指南.pdf (6.52 MB, 下载次数: 13)
watershade 回答时间:2016-2-27 20:42:22
creep 发表于 2016-2-27 11:52
1、首先STM32的优先级只使用8个bit中的高4bit来表达中断源优先级,低四个bit总是为0.类似如下(下面的情况 ...

谢谢了。我知道有主优先级和sub-priority但是不确定208(0xD0)到底是几位子优先级,几位是主优先级。
此外还应看到的是,小于0的优先级是内核使用的优先级。所以那张图片的细节还是蛮多的。

再次谢谢
creep 回答时间:2016-2-27 22:56:32
watershade 发表于 2016-2-27 20:42
谢谢了。我知道有主优先级和sub-priority但是不确定208(0xD0)到底是几位子优先级,几位是主优先级。
此 ...

优先级分组可以从下面的红框中看出,应该是优先级分组2,2个bit的主优先级2个bit的子优先级。
120009gse9wuuevynxeebi.jpg
watershade 回答时间:2016-2-28 19:43:18
creep 发表于 2016-2-27 22:56
优先级分组可以从下面的红框中看出,应该是优先级分组2,2个bit的主优先级2个bit的子优先级。

...

谢谢了,我回头细细看一下

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版