[STM32G0] PWM输出频率正常但占空比偶尔乱跳

[复制链接]
300|20
Bblythe 发表于 2025-11-6 07:16 | 显示全部楼层 |阅读模式
调节占空比时,用示波器看波形偶尔闪一下。代码没问题,怀疑是更新机制导致的瞬态。像是CCR寄存器“卡顿”了一帧。
Clyde011 发表于 2025-11-6 07:19 | 显示全部楼层
我最后通过定时器主从同步搞定了。
公羊子丹 发表于 2025-11-6 07:21 | 显示全部楼层
我遇到过同样问题,要注意使用shadow register更新。
周半梅 发表于 2025-11-6 07:22 | 显示全部楼层
TIMx_CR1的ARPE位打开没?
帛灿灿 发表于 2025-11-6 07:23 | 显示全部楼层
有时候DMA写CCR也会导致更新冲突。
童雨竹 发表于 2025-11-6 07:23 | 显示全部楼层
可以用中断同步更新试试。
万图 发表于 2025-11-6 07:24 | 显示全部楼层
是不是有别的中断打断了更新过程?
Wordsworth 发表于 2025-11-6 07:26 | 显示全部楼层
我那次是因为写CCR太频繁导致的。
 楼主| Bblythe 发表于 2025-11-6 07:27 | 显示全部楼层
注意预装载寄存器和刷新时机。
Pulitzer 发表于 2025-11-6 07:28 | 显示全部楼层
波形“闪”一下就是没同步好更新。
Uriah 发表于 2025-11-6 07:29 | 显示全部楼层
你可以打印下更新中断的触发频率看看。
mintspring 发表于 2026-2-2 15:45 | 显示全部楼层
频率正常说明定时器时基、时钟源、分频配置无核心问题,占空比乱跳核心原因集中在占空比更新机制异常、寄存器被意外篡改、硬件干扰、中断冲突 / 优先级不合理这四类
cr315 发表于 2026-2-2 16:46 | 显示全部楼层
双缓冲机制未启用
classroom 发表于 2026-2-2 16:46 | 显示全部楼层
可能是CCR寄存器更新冲突
duo点 发表于 2026-2-2 16:47 | 显示全部楼层
中断优先级冲突?PWM更新在中断中执行,且中断被更高优先级中断打断,可能导致CCR写入延迟。
elephant00 发表于 2026-2-2 16:48 | 显示全部楼层
若使用DMA更新CCR,可能因DMA传输未完成时计数器已进入下一周期,导致数据不一致。
jcky001 发表于 2026-2-2 16:49 | 显示全部楼层
检查下系统时钟是否稳定
onlycook 发表于 2026-2-2 16:50 | 显示全部楼层
同步更新时机,在更新事件后更新CCR
powerantone 发表于 2026-2-2 16:50 | 显示全部楼层
建议禁用中断或提高优先级
probedog 发表于 2026-2-2 16:51 | 显示全部楼层
试试提高中断优先级或改用主循环轮询
您需要登录后才可以回帖 登录 | 注册

本版积分规则

199

主题

7875

帖子

1

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