[技术问答] 高优先级中断被低优先级中断延迟,是不是中断嵌套规则没搞懂?

[复制链接]
104|43
everyrobin 发表于 2026-6-18 15:31 | 显示全部楼层
高优先级完全不响应,必须等低优先级执行完
hilahope 发表于 2026-6-18 16:46 | 显示全部楼层
低优先级中断里关了全局中断              
saservice 发表于 2026-6-18 17:08 | 显示全部楼层
缩短ISR,或使用RTOS将耗时操作移到任务
louliana 发表于 2026-6-18 18:06 | 显示全部楼层
即使规则全对,软件没毛病,高优先级中断依然会感受到极短的延迟,这是 单片机 硬件机制决定的,无法消除,只能理解。
mmbs 发表于 2026-6-19 10:08 | 显示全部楼层
能打断 = 抢占优先级更高              
burgessmaggie 发表于 2026-6-19 11:46 | 显示全部楼层
抢占优先级没分出来              
youtome 发表于 2026-6-19 14:11 | 显示全部楼层
如何判断中断是否被正确嵌套?              
maqianqu 发表于 2026-6-19 14:31 | 显示全部楼层
数值与优先级的方向搞反了              
mollylawrence 发表于 2026-6-19 15:45 | 显示全部楼层
在 Cortex-M 中,优先级数值越小,优先级越高
花开了相爱吧 发表于 2026-6-19 16:46 | 显示全部楼层
不完全是嵌套规则问题。M 内核仅更高抢占优先级可打断低优先级,同优先级无法嵌套。若高优中断被拖慢,多是低优中断里执行耗时运算、关中断过久,屏蔽全局中断会阻塞所有中断;也可能分组优先级配置错误,抢占与响应优先级混淆,导致高优中断无法抢占。
deliahouse887 发表于 2026-6-19 19:15 | 显示全部楼层
高优先级中断被低优先级中断延迟,确实有大概率是中断嵌套规则没搞懂,但这绝不是唯一的原因。
usysm 发表于 2026-6-19 19:30 | 显示全部楼层
即使抢占优先级高,也得等低优先级跑完
plsbackup 发表于 2026-6-19 19:52 | 显示全部楼层
低优先级ISR中能否安全使用局部中断屏蔽?
dspmana 发表于 2026-6-19 20:21 | 显示全部楼层
只有“抢占优先级更高”的中断,才能打断另一个中断
linfelix 发表于 2026-6-19 20:42 | 显示全部楼层
Cortex‑M 中断优先级的真实结构
tabmone 发表于 2026-6-19 21:00 | 显示全部楼层
重新配置优先级分组,为需要嵌套的中断分配不同抢占值
拿走一光年 发表于 2026-6-28 16:46 | 显示全部楼层
不完全是嵌套规则问题。若已配置抢占优先级,高优先级理应打断低优先级;出现延迟多是两点:一是高优先级抢占等级设置低于低优先级,二是低优先级中断内关全局中断、执行耗时操作阻塞响应。核对 NVIC 抢占分组与优先级数值,缩短低中断执行时长,避免长时间关中断即可解决。
uptown 发表于 2026-6-30 11:58 | 显示全部楼层
如果抢占优先级相同或更低,一定会被延迟。
benjaminka 发表于 2026-6-30 14:19 | 显示全部楼层
中断嵌套时如何避免优先级数值冲突?
maudlu 发表于 2026-6-30 15:53 | 显示全部楼层
在调试模式下,触发高低优先级同时存在的情况,查看 NVIC 寄存器。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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