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

28035 PWM1和PWM2进行同步,并可调频率

调频电源中,想使得PWM1A与PWM2B的波形完全相同,PWM1B与PWM2A的波形完全相同,工作时会缓慢调节PWM的频率,占空比是固定的,这种情况PWM如何配置?

Green Deng:

据我了解,一个PWM模块只能有一个同步源,没办法做到一个模块的两路PWM输出分别同步。
如果要PWM1A与PWM2B同步,PWM1B与PWM2A同步的话,可以考虑硬件上将PWM2B与PWM2A的位置换一下。

,

user4730663:

嗯,硬件更换后,需要实现PWM1A与PWM2A同步,将PWM2的周期寄存器和占空比比较寄存器与PWM2相同(与下图的配置有不同,禁用了死区),上机不改变EPwm1Regs.TBPRD的值时(PWM2与PWM1周期寄存器1相等),PWM2脉冲有100ns左右的延迟,可以接受;刚改变周期寄存器的值时,延迟增加,改变多次后延迟就大于1us以上了,示波器查看的脉冲,不知道什么原因。

//PWM启动 EALLOW; SysCtrlRegs.PCLKCR0.bit.TBCLKSYNC = 0; // Stop all the TB clocks EDIS; InitEPwm1Example();//PWM1工作方式配置 InitEPwm2Example();//PWM1工作方式配置 EPwm1Regs.TBCTR = 0x0000; //时基计数器值清零 EPwm2Regs.TBCTR = 0x0000; //时基计数器值清零 EALLOW; SysCtrlRegs.PCLKCR0.bit.TBCLKSYNC = 1; EDIS;

,

Green Deng:

抱歉抱歉,我说错了,不是PWM2B与PWM2A的位置换一下。应该是由原来的:

PWM1A——PWM2A

PWM1B——PWM2B

换成:

PWM1A——PWM2B

PWM2A——PWM1B

这样从模块的角度讲,PWM1A和PWM1B是同一个ePWM模块,而PWM2A和PWM2B也是同一个模块。这样的话就不需要做模块间的同步

赞(0)
未经允许不得转载:TI中文支持网 » 28035 PWM1和PWM2进行同步,并可调频率
分享到: 更多 (0)