ST意法半导体
直播中

efwedfd

8年用户 1048经验值
擅长:EMC/EMI设计
私信 关注
[问答]

HRTIM将100%占空比脉冲插入PWM,PWM的单个脉冲是错误的怎么解决?

我正在研究基于 STM32 的 BLDC 驱动程序。我正在使用 HRtiM 在向上向下计数模式下以 20Khz 生成 3 个免费 PWM。时不时地,PWM 的单个脉冲是错误的,就像它具有 100% 的占空比一样。该问题是非周期性的(似乎以随机时间间隔发生,范围从 ~0.1 Hz 到 ~10Hz),并且发生在 HRTIM 的所有通道上。它会导致电机发出很大的噪音。
在下图中,您可以看到事件的示波器屏幕。顶部曲线是电机相位之一的电流,下方两个是互补 PWM(在 STM 侧,在 mosfet 驱动器之前)。我正在使用 20 kHz 控制环路来更新 PWM 占空比并进行标准化,以确保我不会意外地将非法值写入寄存器。我已经尝试过启用和禁用重新加载。我还将控制回路频率降低到 12 kHz 和 5 kHz,但问题仍然存在。





回帖(1)

廉凌刚

2023-1-16 10:35:11
我想我已经解决了我的问题。解决方案是启用预加载,设置重复事件更新(以便在计数器达到 0 时进行更新),并将我使用的 CMP 单元从 CMP1 切换到 CMP2 。如参考手册的 27.3.12 部分所述,CMP1 和 CMP3 具有无延迟更新功能,这导致了该问题。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分