我用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。

