打印
[技术问答]

求助 32位单片机M058 PWM移相的实现方法和思路

[复制链接]
1188|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
CharlesPP|  楼主 | 2019-12-18 22:41 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 CharlesPP 于 2019-12-18 22:45 编辑

目前想要驱动一个H桥电路,硬件连接的是PWM0和PWM1口,想要实现PWM0和PWM1同频率,同占空比的90度相位差的PWM. 请教大家一下实现的思路,基于M051_Series_BSP_CMSIS_V3.01.003库。先行感谢.

使用特权

评论回复
沙发
jasontu| | 2019-12-19 08:27 | 只看该作者
pwm有個output invtert的設定暫存器

使用特权

评论回复
板凳
小灵通2018| | 2019-12-19 09:11 | 只看该作者
H桥?控制直流电机的?

使用特权

评论回复
地板
CharlesPP|  楼主 | 2019-12-19 09:58 | 只看该作者
jasontu 发表于 2019-12-19 08:27
pwm有個output invtert的設定暫存器

感谢回复。
还请近一步指教,翻看了M051的技术参考手册,好像并没有找到这个暂存器。附件是手册PWM这一章节的目录截图。
关于这个暂存器的功能介绍哪个文档里有介绍呢,还请告知一下,感谢。

00.jpg (108.27 KB )

M051PWM发生器

M051PWM发生器

使用特权

评论回复
5
小灵通2018| | 2019-12-19 11:43 | 只看该作者

使用特权

评论回复
6
小灵通2018| | 2019-12-19 11:46 | 只看该作者

使用特权

评论回复
7
小灵通2018| | 2019-12-19 11:46 | 只看该作者
这个INV应该就是那个单词吧,翻转啊。

使用特权

评论回复
8
wanduzi| | 2019-12-19 21:55 | 只看该作者
不太懂PWM怎么控制H桥。

使用特权

评论回复
9
tianxj01| | 2019-12-20 11:10 | 只看该作者
你这个H桥目的是什么?
什么叫移相?一般所谓的移相,是指占空比固定为50%(不算死区),2个驱动信号相位可通过数字控制。
你这里所谓的90°是个什么概念?
画一个2通道脉冲时序图出来吧,这样,才好明确需求

使用特权

评论回复
10
CharlesPP|  楼主 | 2019-12-20 11:59 | 只看该作者
tianxj01 发表于 2019-12-20 11:10
你这个H桥目的是什么?
什么叫移相?一般所谓的移相,是指占空比固定为50%(不算死区),2个驱动信号相位可 ...

感谢您的回复。想要实现的波形类似下图。同周期和占空比。脉冲高电平错开。


找到一份《玩转新唐M0_M4_V1.06》的文档,里面提到在M451上实现的方法。

文档里也提到这种实现方式需要芯片支持CMPDAT1和CMPDAT2。
因此觉得M058芯片是不是不支持这种实现方式.


暂时采用在中断函数中翻转IO的方式实现类似的波形,但是当输出频率达到KHz级别的时候,显然这种方式是行不通的。
所以,还请指教,再次感谢。

使用特权

评论回复
11
tianxj01| | 2019-12-20 14:46 | 只看该作者
CharlesPP 发表于 2019-12-20 11:59
感谢您的回复。想要实现的波形类似下图。同周期和占空比。脉冲高电平错开。

上图这个很难,必须要有高级定时器同步功能(STM32部分芯片可以),才可以做到。意思就是A定时器启动锯齿波,而B定时器则由和A同步的PWM同步启动,只是一个同步在前沿,一个同步在后沿。则该PWM的宽度就可以自由控制2脉冲的相位差。
下图的180°相位差很容易做到。你只需要采用三角波调制PWM,也就是采用升降计数模式,然后分别在对称位置有2个占空比比较值,比如我的升降计数模式是从0-200-0-200这样循环,我需要一个脉宽为20的180°方波,则2个占空比比较器分别设置为5和195,而5这路PWM输出极性反相,这样就获得180°差的10宽度正脉冲。同样的,我们只要朝中间分别修改2个占空比寄存器的值,就可以获得2路相位差180°,且占空比可控的PWM波形。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

10

帖子

0

粉丝