TI中文支持网
TI专业的中文技术问题搜集分享网站

TMS320F28035: 当有两组PWM主从如何进行主从指定?

Part Number:TMS320F28035

我们用DSP的PWM1A,PWM1B,PWM2A,PWM2B控制A全桥电路,PWM3A,PWM3B,PWM4A,PWM4B控制B全桥电路。A全桥和B全桥同一时刻只开启一个。DSP中的PWM可以指定主从,当我开启A全桥工作时,将PWM1设置成主模式,PWM2设置成从模式,可以获得我们需要的PWM输出。但是我的问题是如果我要开启B全桥,PWM3,PWM4如何设置主从,比如PWM3为主,PWM4为从,如何将PWM4的从指向PWM3,而不是PWM1.

Yale Li:

Hi sulin su,

看一下ePWM模块TB子模块的同步原理:

(sprui10a_TMS320F2803x Microcontrollers Technical Reference Manual (Rev. A)第243页)

您将EPWM3的同步输入信号关闭,或者将EPWM1或EPWM2的同步信号输出关闭即可。

,

sulin su:

感谢你的回复,对我有价值,我先看下!

,

sulin su:

能否提供一段示例代码?原理我知道了,所有PWM用外设时钟同步,但是具体如何写代码还不太清楚

,

Yale Li:

Hi sulin su,

不光是外设时钟同步,还有同步移相。外设时钟同步只保证所有ePWM模块的计数器在同一时刻增/减计数;而同步移相可以使得从PWM按照期望的移相值相对于主PWM移相。

TI提供的例程都在–>C2000WARE<–中。没有针对这个系列的同步移相例程。

但是这一功能配置并不困难。在您阅读上述TRM中的相关部分了解清楚相关模块(TB)的工作原理后,在例程的基础上修改相应寄存器即可。

简单来说需要配置两个部分:一个是配置需要用到的模块的同步输入/输出信号;另一个是配置移相值。当然相应的使能位需要使能。

,

sulin su:

如果我要独立启动B全桥EPWM3,EPWM4两个PWM  其中PWM3为主,PWM4为从,那么这样设置是否可以:

 EPwm2Regs.TBCTL.bit.SYNCOSEL = TB_SYNC_DISABLE; //关闭PWM2的同步输出信号

EPwm3Regs.TBCTL.bit.PHSEN = TB_DISABLE;  //启用PWM3为主,屏蔽PWM3输入同步信号

EPwm4Regs.TBCTL.bit.PHSEN = TB_ENABLE; //将PWM3的输出同步信号作为PWM4 的输入同步信号

 

,

Yale Li:

可以,最好再指定一下EPWM3的输出同步信号源:

如果不配置的话默认是主EPWM的输入同步信号或软件触发:

另外在sprui10a_TMS320F2803x Microcontrollers Technical Reference Manual (Rev. A)中是有参考代码的,从第297页的Example 3-9开始到Example 3-15都配置了移相,您可以参考一下。

赞(0)
未经允许不得转载:TI中文支持网 » TMS320F28035: 当有两组PWM主从如何进行主从指定?
分享到: 更多 (0)