Part Number:TMS320F280039C
不同PWM模块,可以将PWM2作为Slave module, PWM1作为Master Module,通过TBPHS寄存器来产生phase offset。
同一个PWM模块,UP-DOWM 计数模式,比如PWM1, 是不是可以实现EPM1A 与EPM1B 180° phase offset输出?
Green Deng:
你好,当然可以,只不过同一个模块内的相移就不是用类似TBPHS寄存器来设置,而是直接通过设置CMPA/B比较器值就可以实现了。
其实正确来说,这不算是相移,就是设置不同的相位点而已。类似芯片TRM第2183页开始的几个波形。
,
Yan JIANG:
谢谢回复。
从第2183页的波形开始看,第2188页Figure 20-32是有可能满足我想要的需求的,但是那个波形我有点不明白。从波形看EPWMxB的占空比是固定的50%,在CTR = 0拉低,CTR = PRD时拉高。这个是不是也可以由CMPB的值决定?能不能给一个180°的phase offset的示意图,麻烦了,谢谢。
,
Yan JIANG:
另外,看2182页的描述:• TBPRD, CMPA, and CMPB refer to the value written in their respective registers. The active register, not theshadow register, is used by the hardware. not the shadow registere, 这个意思是说不需要用到影子寄存器嘛?另外,这个hardware指得是什么?
,
Green Deng:
Yan JIANG 说:这个是不是也可以由CMPB的值决定?
这是可以的,但问题是动作点只有4个,也就是ZERO PRD CMPA CMPB,相位上差180°的话只要设置的时候把上升点设置的差180°就可以了,但是如果PWMA的占空比超过50%的话,PWMB的下降点就不一定能满足180°了。
,
Yan JIANG:
那这应该不是我想要的。我EPWM1A和EPWM1B的CMPA和CMPB值是环路独立计算出来的,可能都是超过50%。
“上升点设置的差180°就可以”通过什么设置呢?死区还是其他?
,
Green Deng:
其实就是那几个动作点,比如设置
PWMA:ZERO的时候拉高,CMPA的时候拉低
PWMB:PRD的时候拉高,CMPB的时候拉低
这样PWMA/B就是180°的相位差
,
Yan JIANG:
按照上面的方式画出来是这个意思嘛?
这样能实现180°相位差啊,但是pwm duty不符合吧?
,
Green Deng:
是的,所以我前面说的,180°相位差是可以实现的
Green Deng 说:相位上差180°的话只要设置的时候把上升点设置的差180°就可以了
占空比的话就要看你是什么应用了。如你图中画的,如果要求PWMB的占空比超过50%,那就没办法实现了。