Wordsworth 发表于 2025-5-10 08:03

SysTick定时器跟我设置的不一样,是不是被什么抢走了?

设置1ms节拍,打印出来却有偏差,是不是优先级设置有问题?

Clyde011 发表于 2025-5-10 08:05

看手册SysTick默认是外部时钟吗?

公羊子丹 发表于 2025-5-10 08:06

是不是被别的中断打断了SysTick?

周半梅 发表于 2025-5-10 08:07

HAL库里的Tick用的SysTick吗?

帛灿灿 发表于 2025-5-10 08:07

我这边用TIM替代SysTick更准。

童雨竹 发表于 2025-5-10 08:08

看看主频设的是不是准的?

万图 发表于 2025-5-10 08:09

低功耗模式回来后SysTick可能会乱。

Wordsworth 发表于 2025-5-10 08:10

尝试调一下中断优先级顺序。

Bblythe 发表于 2025-5-10 08:10

有没有用FreeRTOS?它也会改Tick。

Pulitzer 发表于 2025-5-10 08:11

打点调试看看多久跑一次Tick。

Uriah 发表于 2025-5-10 08:12

你用debug看下LOAD和VAL是多少?

qintian0303 发表于 2025-5-10 10:59

主要得看偏差多少,把SysTick的中断优先级提高一点   

咚咚咚015 发表于 2025-6-1 09:57

用示波器观察,systick使用外部的32768hz晶振。最多实现1.23ms的延时,不知道什么原因。减小load的值也无法降低延时了

codingtuzi 发表于 2025-6-1 21:46

systick很靠谱的的啊!
它也不能使用LSE晶振输入源吧

冰春彩落下 发表于 2025-6-7 11:30

在STM32U5中,SysTick定时器出现节拍偏差,可能由中断优先级设置不当、代码执行效率问题、硬件噪声干扰或系统时钟配置错误引起

一秒落纱 发表于 2025-6-7 12:01

当多个外设共享相同的中断线或存在更高优先级的中断抢占CPU资源时,可能导致SysTick中断响应延迟,从而影响计时精度。

淡漠安然 发表于 2025-6-7 12:43

确保SysTick定时器的优先级设置合理,避免被其他高优先级中断频繁抢占。例如,在STM32中,可通过NVIC_SetPriority函数来设置SysTick的中断优先级。

三生万物 发表于 2025-6-7 13:00

合理规划系统中断的优先级,对于对实时性要求较高的任务,赋予其较高的优先级

别乱了阵脚 发表于 2025-6-7 13:30

滴答定时器本身优先级就比较低吧,不像是优先级的问题啊

暖了夏天蓝了海 发表于 2025-6-7 14:00

程序中的其他部分可能占用过多CPU时间片,使得SysTick计数未能及时更新,进而造成延时误差
页: [1]
查看完整版本: SysTick定时器跟我设置的不一样,是不是被什么抢走了?