qazplm3218 发表于 2020-3-15 13:04:05

STM32F103 PWM波控制H桥,用于单相逆变器

有接触过逆变器开发的吗?
能否通过STM32F103 的TIM1输出两l路互补的PWM波,PWM频率12KHZ,控制H桥,TIM1的PWM具体参数应该如何设置?

ldptest 发表于 2020-3-17 12:03:22

硬件方式输出互补PWM波形我没研究
使用TIM产生PWM中断,软件控制IO口电平方式输出互补PWM,可以参考我的帖子,最后一种方法。
https://www.stmcu.org.cn/module/forum/thread-623653-1-2.html

你若安好_清风徐来 发表于 2020-3-17 18:16:11

使用一组互补的PWM即可,两边桥控制信号反接,程序没什么好说的 ,先去定义一个SIN函数表(有软件可以生成),定时器分频,你最后输出波形频率 = 主频/分频器/CNT/SIN函数表的点数,
输出为50Hz 的正弦波,72Mhz主频分频系数 1
50 =72000000/1/SIN函数表点数/CNT
1440000 =SIN函数表点数*CNT
,开启定时器溢出中断,关闭自动更新通道数据寄存器,每次溢出中断更新CCR寄存器,更新的数据去查表, 查完一圈表就是一个周期

qazplm3218 发表于 2020-3-22 20:59:07

你若安好_清风徐来 发表于 2020-3-17 18:16
使用一组互补的PWM即可,两边桥控制信号反接,程序没什么好说的 ,先去定义一个SIN函数表(有软件可以生成 ...

如何在上电开机状态和PWM关闭状态下,使两组互补的PWM都为高电平(H桥电路设计,没有PWM输出时都是高电平)?现在因为是互补的关系,所以两组PWM默认情况下电平都是反向的。

你若安好_清风徐来 发表于 2020-3-23 10:33:48

qazplm3218 发表于 2020-3-22 20:59
如何在上电开机状态和PWM关闭状态下,使两组互补的PWM都为高电平(H桥电路设计,没有PWM输出时都是高电平 ...

H桥电路没有PWM输出时都是高电平?那不上电就把MOS管子烧了嘛,肯定是互补或者全部为低才对呀

qazplm3218 发表于 2020-3-23 22:09:39

你若安好_清风徐来 发表于 2020-3-23 10:33
H桥电路没有PWM输出时都是高电平?那不上电就把MOS管子烧了嘛,肯定是互补或者全部为低才对呀 ...

由于H桥电路设计是通过光耦隔离驱动的。高电平时光耦时截止的,低电平才导通。所以初始上电状态和关闭状态都需要是高电平。

你若安好_清风徐来 发表于 2020-3-24 11:27:47

qazplm3218 发表于 2020-3-23 22:09
由于H桥电路设计是通过光耦隔离驱动的。高电平时光耦时截止的,低电平才导通。所以初始上电状态和关闭状 ...

:lol那你加一个3.3V的MOS管或者一共三极管反向就可以了嘛,如果要保证全部截至那你不使能通道啊,等要用了再使能通道

butterflyspring 发表于 2020-3-27 16:14:54

                设置强制输出为高就可以了,由于CHx与CHxN是强制互补的,如果二者极性(polarity)设置相同,输出会是一高一低,但是二者极性设置相反,可以做到输出相同的电平。
定时器只需要设置合理的输出极性,如:
                输出电平:强制高
                CHx   polarity: 1
                CHxNpolarity: 0
页: [1]
查看完整版本: STM32F103 PWM波控制H桥,用于单相逆变器