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.

TMS320F280039C: ePWM AQ模块失效

Part Number: TMS320F280039C

Hi expert:

我们在epwm模块的应用中遇到一些问题,请帮忙看一下。如下为我们EPWM模块的配置方式,上升计数模式,驱动上升沿使用CMPB产生,实际应用中需要将CMPB由图中的CMPB1(ZERO)变化到CMPB2(PRD-T1),测试中发现EPWM6A会出现常低,对应互补的EPWM6B常高的问题。看样子是CMPB在由0突变到PRD的过程中,EPWM6A的上升沿没有出来。请帮忙看一下是什么原因,谢谢!

  • Hi Han Meng,

    因为装载是在0时刻,如果不改变CMPB的话本身应该在0时刻拉高,改变了之后就会在(PRD-T1)处拉高,所以从上个周期的CMPA到本周期的(PRD-T1)就会持续处于低电平状态。

  • Hi Yale:

    感谢回复,请问有什么推荐的解法吗?谢谢!

  • Hi Han Meng,

    您把CMPA以及CMPB的所有比较值左移(比如左移一到两个计数值),仍然选择在CTR=0处装载。

    这样做相当于是将波形整体左移了一个或两个计数值,不影响占空比;但是却保证了CMPB无论在哪里,都在装载时刻之前,避免了中间的空周期。

  • Hi Yale:

    这种方法在下降沿只往左移的情况下看起来是可以的。但是我们的应用需求是需要上升沿在ZERO值左右移动,即CMPB值会在100~(PRD-100)之间来回变化,这种方法看起来也不能解决这个问题呢

  • Han Meng,

    可以把装载模式从shadow改为立即装载试一下;

    或者将计数模式改为上下计数模式(up-down count mode),重新设计周期以及占空比,并将装载时刻(LOADBMODE)改为在CTR = Zero以及CTR = PRD处都装载。

    这本质上来说并不算是一个问题,因为一切的动作都是按照器件的设定来执行。

    解决方案也可以根据您的具体设计,增加相应的TZ保护。比如在控制开关管时,当AFE检测到开关管过流时,通过TZ来将相应的PWM置低来关断管子。当然也可以在程序中改变比较值时主动配置TZ来使PWM进行相应的动作,并且TZ的动作可以配置成one shot,即动作只保持一个周期。

  • 好的,明白,感谢!

  • 不客气。如果觉得这些回答有帮助,可以点击绿色按钮确认答案,方便日后其他工程师参考。