[STM32F4] 互补PWM问题。

[复制链接]
326|9
地瓜patch 发表于 2025-10-13 21:13 | 显示全部楼层 |阅读模式
本帖最后由 地瓜patch 于 2025-10-13 21:14 编辑

用STM32f401ccu6(Blackpill)生成250kHz的PWM信号来驱动高侧和低侧MOSFET。我使用了定时器1通道1及其互补PWM功能来利用死区时间特性。目前我已经生成了250kHz的PWM信号,但CHN PWM与CH PWM并不相反。两者都从高电平开始并过渡到低电平。同时变为高电平或低电平而相互干扰。我在引脚配置中将CHN极性改为高电平到低电平,但这只是反转了占空比。CHN PWM的转换并没有从低电平到高电平发生。还试了通过更改CH和CHN的极性、空闲状态来解决。请见下图。

这是CHN极性为高电平时的输出。
5498868ecfa27d0e4d.png

输出高电平有效。
4653068ecfa5c05487.png

时钟配置如下
3323568ecfa6677b56.png

8527368ecfa81df4f8.png

6758468ecfa900ed93.png

cr315 发表于 2025-10-14 16:05 | 显示全部楼层
好像是PWM模式配置错误了
duo点 发表于 2025-10-14 17:06 | 显示全部楼层
如果配置为 PWM Mode 1 或 PWM Mode 2,但未正确设置计数器方向或比较值,可能导致主/互补输出同步变化。
elephant00 发表于 2025-10-14 16:07 | 显示全部楼层
CC1P和 CC1NP需配置为相反值。
jcky001 发表于 2025-10-14 19:07 | 显示全部楼层
死区时间可能未生效?
onlycook 发表于 2025-10-14 20:08 | 显示全部楼层
定时器进入空闲状态时,主/互补输出的电平由 OIS1 和 OIS1N 决定。若配置不当,可能导致启动时同步变化。
powerantone 发表于 2025-10-14 21:08 | 显示全部楼层
检查 OCPolarity 和 OCNPolarity 是否配置为相反值。
probedog 发表于 2025-10-14 21:09 | 显示全部楼层
检查DeadTime值是否合理
solty 发表于 2025-10-14 16:40 | 显示全部楼层
若使用中央对齐模式,需调整 OCMode 为 TIM_OCMODE_PWM2 或重新计算占空比。
 楼主| 地瓜patch 发表于 2025-10-14 16:13 | 显示全部楼层
elephant00 发表于 2025-10-14 16:07
CC1P和 CC1NP需配置为相反值。

这个不是配置出来的,是使能PWM ch1/ch1n后自动生成的的反向
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:出一块TI-PLABS-AMP-EVM

1961

主题

15320

帖子

31

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