[STM32C0] 如何避免STM32C0 SysTick定时任务误差?

[复制链接]
618|12
 楼主| flycamelaaa 发表于 2025-6-21 16:17 | 显示全部楼层 |阅读模式
如何避免STM32C0 SysTick定时任务误差?
公羊子丹 发表于 2025-6-23 07:23 | 显示全部楼层
是不是用了 HAL_Delay 或 osDelay 这类函数?这些本身就有点误差。
周半梅 发表于 2025-6-23 07:24 | 显示全部楼层
如果系统里有高优先级中断,确实可能影响到 SysTick 的准确性。
帛灿灿 发表于 2025-6-23 07:25 | 显示全部楼层
你可以试试用TIM定时器替代SysTick,精度会更稳。
童雨竹 发表于 2025-6-23 07:26 | 显示全部楼层
定时误差一般是因为Tick时间不准,检查一下HCLK频率配置。
万图 发表于 2025-6-23 07:27 | 显示全部楼层
FreeRTOS下建议不要用SysTick当调度源,直接用TIM做系统时基。
Wordsworth 发表于 2025-6-23 07:28 | 显示全部楼层
有没有长时间关中断的操作?那样会导致SysTick中断延后。
Bblythe 发表于 2025-6-23 07:29 | 显示全部楼层
如果是用 HAL_GetTick() 这种函数,建议结合 DWT 或定时器做微调。
Pulitzer 发表于 2025-6-23 07:29 | 显示全部楼层
我用过C0系列,SysTick 配 1ms 会有点累积误差,调成TIM2后好了。
Uriah 发表于 2025-6-23 07:30 | 显示全部楼层
中断函数里别做太多事,越忙Tick越容易跑偏。
Clyde011 发表于 2025-6-23 07:31 | 显示全部楼层
如果对时间精度要求高,建议引入外部RTC或硬件时钟基准。
雾都浪漫 发表于 2025-7-5 22:08 | 显示全部楼层
使用外部晶振替代内部 RC;2. 配置 SysTick 使用 HCLK/8 分频;3. 避免在中断中执行耗时操作;4. 定期校准时间基准。
热爱浪漫 发表于 2025-7-29 15:59 | 显示全部楼层
[color=rgba(0, 0, 0, 0.85)]配置精准系统时钟,避免中断阻塞,使用滴答定时器重载值计算补偿。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

837

主题

4432

帖子

1

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