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.

280049 PWM 模块 中AQ模块toggle功能

AQ中设置PWMA在Counter= zero的时候进行反转,请问反转之后的结果经过DB模块后,为什么会没有死区?是死区配置问题还是toggle功能就不会产生死区?谢谢

  • 请问你具体指的是哪个寄存器?怎么配置的?
  • PWM的AQ部分配置如下:
    EPwm1Regs.AQCTLA.bit.ZRO = AQ_TOGGLE;

    DB配置如下:
    EPWM_setRisingEdgeDeadBandDelayInput(EPWM1_BASE,EPWM_DB_INPUT_EPWMA);
    EPWM_setFallingEdgeDeadBandDelayInput(EPWM1_BASE,EPWM_DB_INPUT_EPWMA); //配置死区输入模式
    EPWM_setDeadBandDelayPolarity(EPWM1_BASE,EPWM_DB_RED,EPWM_DB_POLARITY_ACTIVE_HIGH);
    EPWM_setDeadBandDelayPolarity(EPWM1_BASE,EPWM_DB_FED,EPWM_DB_POLARITY_ACTIVE_LOW);//配置极性
    EPWM_setDeadBandDelayMode(EPWM1_BASE,EPWM_DB_RED,true);
    EPWM_setDeadBandDelayMode(EPWM1_BASE,EPWM_DB_FED,true);
    EPWM_setDeadBandOutputSwapMode(EPWM1_BASE,EPWM_DB_OUTPUT_A,false);
    EPWM_setDeadBandOutputSwapMode(EPWM1_BASE,EPWM_DB_OUTPUT_B,false);


    在零点处AQ翻转,翻转的结果经过DB模块,原有的上升沿、下降沿死区还会继续存在么?
  • 由于目前还没有F280049的PWM例程,我是用F28335的例程测试的,配置为AQ_TOGGLE原有的死区和上升下降沿都是存在的。
  • 感谢你的回复,原因找到了。现在有另外一个问题:
    正如之前所说,PWM2会在Counter=0处发生反转。同步信号采用的是PWM的DCA_EVENT1来进行触发的,请问该触发信号是高有效来触发PWM_SYNC信号么?
    测试出来的发现是Event的下降沿触发了PWM2的反转。