[STM32F0] 为什么在用F030F4P6点灯测试时发现延时函数老感觉不太准

[复制链接]
447|12
公羊子丹 发表于 2025-9-12 07:27 | 显示全部楼层 |阅读模式
写了个小延时函数跑在循环里,结果发现LED闪烁节奏总有点奇怪。
Clyde011 发表于 2025-9-12 07:31 | 显示全部楼层
你是用内核时钟还是外部?
 楼主| 公羊子丹 发表于 2025-9-12 07:33 | 显示全部楼层
是不是用的软件延时?
周半梅 发表于 2025-9-12 07:34 | 显示全部楼层
我感觉跟主频有关系。
帛灿灿 发表于 2025-9-12 07:36 | 显示全部楼层
用systick会稳很多。
童雨竹 发表于 2025-9-12 07:37 | 显示全部楼层
是不是编译优化影响了?
万图 发表于 2025-9-12 07:38 | 显示全部楼层
我之前也遇到过,眼睛很敏感。
Wordsworth 发表于 2025-9-12 07:38 | 显示全部楼层
可以加个定时器校准试试。
Bblythe 发表于 2025-9-12 07:39 | 显示全部楼层
用while循环延时总有偏差。
Uriah 发表于 2025-9-12 07:40 | 显示全部楼层
看下是不是晶振没准。
Pulitzer 发表于 2025-9-12 07:42 | 显示全部楼层
小芯片跑延时本来就不稳。
毛雪121225 发表于 2025-9-12 08:16 | 显示全部楼层
定时器肯定稳
flycamelaaa 发表于 2025-9-12 16:32 | 显示全部楼层
可能是延时精度不足或中断干扰导致的。
powerantone 发表于 2025-9-12 17:37 | 显示全部楼层
如果使用HAL_Delay()或基于SysTick的延时,要确认SysTick是否被其他库占用。
probedog 发表于 2025-9-12 19:38 | 显示全部楼层
看看SystemCoreClock变量值是否与实际主频一致。
七毛钱 发表于 2025-9-12 20:39 | 显示全部楼层
检查HAL_SYSTICK_Config()的参数是否正确。
内政奇才 发表于 2025-9-12 21:40 | 显示全部楼层
如果启用了其他中断,且优先级高于SysTick,可能导致HAL_Delay()被意外延长。
海滨消消 发表于 2025-9-12 22:41 | 显示全部楼层
在关键延时代码段临时禁用中断。
豌豆爹 发表于 2025-9-12 22:42 | 显示全部楼层
电源噪声影响时钟精度。
麻花油条 发表于 2025-9-12 18:22 | 显示全部楼层
推荐用硬件定时器。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

199

主题

6523

帖子

3

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