打印
[应用相关]

为什么有些STM32中断没有子优先级?

[复制链接]
322|15
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
中国龙芯CDX|  楼主 | 2023-12-23 15:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
有时候在使用STM32CubeMX配置时,发现只有Preemption Priority【抢占优先级】,而没有Sub Priority【次优先级】,为什么?

使用特权

评论回复
沙发
两只袜子| | 2023-12-28 10:44 | 只看该作者
不同型号的STM32微控制器和不同版本的STM32CubeMX软件可能具有不同的功能和特性。某些版本或型号可能仅支持抢占优先级,而不支持次优先级。

使用特权

评论回复
板凳
jcky001| | 2023-12-28 10:44 | 只看该作者
在某些情况下,STM32CubeMX的配置可能受到限制,例如某些寄存器和设置可能不可用或被禁用。这可能导致在配置过程中无法选择或设置次优先级。

使用特权

评论回复
地板
cr315| | 2023-12-28 10:44 | 只看该作者
某些STM32CubeMX生成的代码可能基于特定的固件或库版本。如果这些固件或库版本不支持次优先级,那么在配置过程中也可能无法选择或设置次优先级。

使用特权

评论回复
5
elephant00| | 2023-12-28 10:45 | 只看该作者
在某些情况下,工程需求可能只需要使用抢占优先级来满足系统的要求。因此,可能没有选择或设置次优先级的必要。

使用特权

评论回复
6
AdaMaYun| | 2023-12-28 17:58 | 只看该作者
这个跟版本以及MCU 有关系了,其实有抢占基本就不用再分了

使用特权

评论回复
7
夜阑风雨| | 2024-1-21 15:38 | 只看该作者
可能是你的这款芯片不带这个功能?

使用特权

评论回复
8
三生万物| | 2024-1-21 18:00 | 只看该作者
因为在ARM Cortex-M架构中,优先级分组的设置决定了抢占优先级和次优先级的位数,而不是单独设置抢占优先级和次优先级。

使用特权

评论回复
9
暖了夏天蓝了海| | 2024-1-21 20:00 | 只看该作者
在ARM Cortex-M架构中,优先级分组的设置由NVIC_PriorityGroupConfig函数来实现。

使用特权

评论回复
10
别乱了阵脚| | 2024-1-21 22:00 | 只看该作者
优先级分组的设置决定了抢占优先级和次优先级的位数,以及它们之间的分布。

使用特权

评论回复
11
远山寻你| | 2024-1-22 01:00 | 只看该作者
在STM32CubeMX中,通常会在生成代码时自动调用NVIC_PriorityGroupConfig函数来设置优先级分组。

使用特权

评论回复
12
冰春彩落下| | 2024-1-22 03:00 | 只看该作者
当你在STM32CubeMX中设置抢占优先级时,实际上是在设置整个优先级的数值,包括抢占优先级和次优先级。

使用特权

评论回复
13
一秒落纱| | 2024-1-22 05:00 | 只看该作者
其实这是为了简化了配置过程,同时也符合ARM Cortex-M架构的优先级分组机制。

使用特权

评论回复
14
淡漠安然| | 2024-1-22 07:00 | 只看该作者
之前好像是需要设置NVIC的等级,然后再配置优先级啥的

使用特权

评论回复
15
江河千里| | 2024-1-22 11:00 | 只看该作者
这个就按cubemx来配置吧,基本上是没有问题的

使用特权

评论回复
16
光辉梦境| | 2024-1-22 15:00 | 只看该作者
次优先级是平等的抢占优先级之后,再看次优先级?是不是?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

269

主题

2139

帖子

4

粉丝