[求助] 单相spwm滤波后,频率和理论值不一样,怎么回事啊

王温林   2015-5-13 15:40 楼主
用dsp28035来产生spwm,三角波频率为30khz,正弦波频率为50hz,载波比为n=600;

时基的周期数值为1000,

比较器的值;

duty=500*sin(6.288*k/n)

部分程序如下:


EPwm2Regs.TBPRD = 1000;

   EPwm2Regs.TBPHS.half.TBPHS = 0x0000;

   EPwm2Regs.TBCTR = 0x0000;



   EPwm2Regs.CMPA.half.CMPA =500;

   EPwm2Regs.CMPB = 500;



EPwm2Regs.AQCTLA.bit.CAU = AQ_CLEAR;

   EPwm2Regs.AQCTLA.bit.CAD =AQ_SET;

   EPwm2Regs.AQCTLB.bit.CAU = AQ_SET;

   EPwm2Regs.AQCTLB.bit.CAD = AQ_CLEAR;


中断程序:


duty=500*(sin(6.283*k1/600))+500;

   EPwm2Regs.CMPA.half.CMPA = duty;

   EPwm2Regs.CMPB = duty;

   k1++;




产生的spwm滤波后,馒头波频率为10hz,和理论值50hz,不一样,这是哪里出错了,求帮忙啊

回复评论 (2)

中断程序有问题
点赞  2015-5-13 23:45
什么问题啊,求指教
点赞  2015-5-14 15:47
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复