打印
[STM32G4]

中断任务调度问题

[复制链接]
1338|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
大家好,请教一个关于中断任务调度的问题,
开发板:STM32G431RBT6


现象:
系统里设置了俩个中断任务,分别为100us任务(ADC注入中断)和0.5ms任务(定时器计数中断),0.5ms任务的中断优先级低于100us任务。
有一个现象是当关闭0.5ms任务组件A运行的时候,100us任务的执行时间基本平稳。当开启0.5ms任务组件A运行的时,100us任务的执行时间有明显上升,组件A运行完毕,执行时间又变的正常了。
我理解的高中断优先级任务不应该被低优先级任务打断,期望的现象是即使0.5ms组件A运行或者不运行,100us任务的执行时间应该都是平稳的,但是现实情况
是高优先级的任务会被低优先级影响,这个是为什么呢?



我的中断配置和相关代码如图片所示

低优先级定时器任务.png (291.08 KB )

低优先级定时器任务.png

高优先级ADC任务.png (451.43 KB )

高优先级ADC任务.png

优先级问题.png (308.2 KB )

优先级问题.png

使用特权

评论回复
沙发
Hufei1994|  楼主 | 2024-2-2 09:11 | 只看该作者
请求支援

使用特权

评论回复
板凳
xch| | 2024-2-2 10:14 | 只看该作者
响应时间差多少?

使用特权

评论回复
地板
ayb_ice| | 2024-2-2 10:47 | 只看该作者
优先级没设置对吧

使用特权

评论回复
5
xch| | 2024-2-2 10:55 | 只看该作者
TIM 14?
TIM 4?
搞错TIMER编号数字?

使用特权

评论回复
6
一叶倾城wwq| | 2024-2-2 13:36 | 只看该作者
ADC还用啥中断,定时查询得了

使用特权

评论回复
7
Hufei1994|  楼主 | 2024-2-2 18:17 | 只看该作者
xch 发表于 2024-2-2 10:55
TIM 14?
TIM 4?
搞错TIMER编号数字?

这个知识注释的问题,实际上没错的

使用特权

评论回复
8
Hufei1994|  楼主 | 2024-2-2 18:18 | 只看该作者
一叶倾城wwq 发表于 2024-2-2 13:36
ADC还用啥中断,定时查询得了

不行啊,做电机控制的电流采样呢

使用特权

评论回复
9
Hufei1994|  楼主 | 2024-2-2 18:19 | 只看该作者
xch 发表于 2024-2-2 10:14
响应时间差多少?

大概是A组件没使能时,100us任务执行时间40us,开启A组件后执行时间变为50us

使用特权

评论回复
10
Hufei1994|  楼主 | 2024-2-2 18:20 | 只看该作者
ayb_ice 发表于 2024-2-2 10:47
优先级没设置对吧

优先级设置如图片所示,看起来是对的

使用特权

评论回复
11
zchong| | 2024-2-3 11:51 | 只看该作者
优先级分组有没有搞对?

使用特权

评论回复
12
delin17| | 2024-2-3 15:39 | 只看该作者
设置好优先级,应该可以嵌套好

使用特权

评论回复
13
Hufei1994|  楼主 | 2024-2-4 09:24 | 只看该作者
优先级如上图,应该是对的

使用特权

评论回复
14
Hufei1994|  楼主 | 2024-2-19 11:28 | 只看该作者
还有大佬能给点建议嘛

使用特权

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

本版积分规则

28

主题

160

帖子

0

粉丝