我们用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.
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
我们用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.
Hi sulin su,
看一下ePWM模块TB子模块的同步原理:
(sprui10a_TMS320F2803x Microcontrollers Technical Reference Manual (Rev. A)第243页)
您将EPWM3的同步输入信号关闭,或者将EPWM1或EPWM2的同步信号输出关闭即可。
如果我要独立启动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 的输入同步信号
可以,最好再指定一下EPWM3的输出同步信号源:
如果不配置的话默认是主EPWM的输入同步信号或软件触发:
另外在sprui10a_TMS320F2803x Microcontrollers Technical Reference Manual (Rev. A)中是有参考代码的,从第297页的Example 3-9开始到Example 3-15都配置了移相,您可以参考一下。