打印
[STM32C0]

C0用SysTick跑定时任务没准点

[复制链接]
78|19
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Wordsworth|  楼主 | 2025-6-20 07:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1ms跑着跑着就有误差,定时任务对不上了,不知道哪出了问题。

使用特权

评论回复
沙发
Clyde011| | 2025-6-20 07:27 | 只看该作者
任务太多会影响定时精度,注意一下主循环时间。

使用特权

评论回复
板凳
公羊子丹| | 2025-6-20 07:28 | 只看该作者
用TIM定时器会更准一点。

使用特权

评论回复
地板
周半梅| | 2025-6-20 07:29 | 只看该作者
SysTick在跑中断多时确实不准。

使用特权

评论回复
5
帛灿灿| | 2025-6-20 07:30 | 只看该作者
优先级没设好也可能导致抖动。

使用特权

评论回复
6
童雨竹| | 2025-6-20 07:31 | 只看该作者
你有没有开RTOS?抢占会影响。

使用特权

评论回复
7
万图| | 2025-6-20 07:32 | 只看该作者
建议SysTick中断里只设置标志位。

使用特权

评论回复
8
Wordsworth|  楼主 | 2025-6-20 07:33 | 只看该作者
改成TIM中断处理效率提升不少。

使用特权

评论回复
9
Bblythe| | 2025-6-20 07:34 | 只看该作者
看是不是中断响应被卡住了。

使用特权

评论回复
10
Pulitzer| | 2025-6-20 07:35 | 只看该作者
我每次任务开始都打印一次时间对比。

使用特权

评论回复
11
Uriah| | 2025-6-20 07:36 | 只看该作者
SysTick默认是1ms,改成更细粒度试试。

使用特权

评论回复
12
jcky001| | 2025-6-20 16:12 | 只看该作者
SysTick时钟源不稳定?

使用特权

评论回复
13
elephant00| | 2025-6-20 16:13 | 只看该作者
高优先级中断频繁触发,导致SysTick中断被延迟。

使用特权

评论回复
14
classroom| | 2025-6-20 16:59 | 只看该作者
在CubeMX中配置SysTick优先级为最高,不被其他中断打断。

使用特权

评论回复
15
cr315| | 2025-6-20 17:12 | 只看该作者
是否是中断处理耗时过长?

使用特权

评论回复
16
cr315| | 2025-6-20 17:12 | 只看该作者
是否是中断处理耗时过长?

使用特权

评论回复
17
flycamelaaa| | 2025-6-20 19:14 | 只看该作者
未使用volatile修饰全局变量,导致编译器优化后变量更新不及时。

使用特权

评论回复
18
powerantone| | 2025-6-20 20:14 | 只看该作者
系统负载过高?

使用特权

评论回复
19
stormwind123| | 2025-6-20 22:15 | 只看该作者
若内核时钟由内部RC振荡器提供,建议切换为外部晶振提高稳定性。

使用特权

评论回复
20
probedog| | 2025-6-20 23:15 | 只看该作者
精简ISR代码,仅在ISR中设置标志位,复杂操作移至主循环。

使用特权

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

本版积分规则

102

主题

5109

帖子

1

粉丝