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.

2808 EPWM比较值大于三角波幅值时输出信号不正常



我用2808芯片输出逆变器的驱动信号,原理如第三幅图所示,正确的波形应该如第一幅图浅蓝色波形所示,但实际波形每个周期都如第二幅图浅蓝色波形所示,多了一个开关周期的低电平。不知道是什么原因。

源代码如下:

ur1 = _IQ15int(_IQ15mpyIQX(_IQ15(4500),15, PLLConReg.Sin_Theta,28));

if(ur1 >= PWM_HALF_PERIOD)
     ur1 = PWM_HALF_PERIOD;
else if (ur1 < 0)
     ur1=0;
else
     ur1 = _IQ15int(_IQ15mpyIQX(_IQ15(4500),15, PLLConReg.Sin_Theta,28));

EPwm1Regs.CMPB = ur1;

其中PLLConReg.Sin_Theta为幅值为1的正弦波。PWM_HALF_PERIOD为三角波幅值,等于2500。