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

请问一下,如何让两路pwm相差半个周期?

我产生了两路一模一样spwm,想让第一路spwm先送出,然后过半个spwm周期的时间,再输出第二路spwm,那该怎么配置啊

mangui zhang:

你的正弦表是怎么弄的   

如果是正弦表       你应该从数据中看出哪里是180度的数据啊 

然后两路开始取数的位置相差180度就可以了

我产生了两路一模一样spwm,想让第一路spwm先送出,然后过半个spwm周期的时间,再输出第二路spwm,那该怎么配置啊

CHENG LIANG:

TBPHS,在 Technical Reference Manual 里搜一下这个寄存器,控制PWM移相的。

我产生了两路一模一样spwm,想让第一路spwm先送出,然后过半个spwm周期的时间,再输出第二路spwm,那该怎么配置啊

lin wen:

回复 CHENG LIANG:

我这样配置   

 

  EPwm1Regs.TBCTL.bit.PHSEN = TB_ENABLE;  

  EPwm1Regs.TBPHS.half.TBPHS = 0;  

  EPwm2Regs.TBCTL.bit.PHSEN = TB_ENABLE ;   

 EPwm2Regs.TBPHS.half.TBPHS =100;

但是两路输出还是一模一样,是不是哪里还要配置啊

我产生了两路一模一样spwm,想让第一路spwm先送出,然后过半个spwm周期的时间,再输出第二路spwm,那该怎么配置啊

CHENG LIANG:

回复 lin wen:

SYNCOSEL可配了?

EPwm1Regs.TBCTL.all = 0x2010; // FREE,SOFT=0,PHSDIR=1,SYNCOSEL=1,PHSEN=0,CTRMODE=0EPwm2Regs.TBCTL.all = 0x2004; // FREE,SOFT=0,PHSDIR=1,SYNCOSEL=0,PHSEN=1,CTRMODE=0

赞(0)
未经允许不得转载:TI中文支持网 » 请问一下,如何让两路pwm相差半个周期?
分享到: 更多 (0)