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.

TMS320F280025: Problem of using EPWM Global Load

Part Number: TMS320F280025

Dear team:

A customer of mine encountered some problems when using EPWM Global Load.

EPWM_setTimeBasePeriod(base, period); // period = 200

EPWM_setTimeBaseCounterMode(base, EPWM_COUNTER_MODE_UP);

EPWM_setActionQualifierAction(base,EPWM_AQ_OUTPUT_A,EPWM_AQ_OUTPUT_HIGH,EPWM_AQ_OUTPUT_ON_TIMEBASE_ZERO);
EPWM_setActionQualifierAction(base,EPWM_AQ_OUTPUT_A,EPWM_AQ_OUTPUT_LOW,EPWM_AQ_OUTPUT_ON_TIMEBASE_UP_CMPA);

EPWM_setActionQualifierAction(base,EPWM_AQ_OUTPUT_B,EPWM_AQ_OUTPUT_HIGH,EPWM_AQ_OUTPUT_ON_TIMEBASE_ZERO);
EPWM_setActionQualifierAction(base,EPWM_AQ_OUTPUT_B,EPWM_AQ_OUTPUT_LOW,EPWM_AQ_OUTPUT_ON_TIMEBASE_UP_CMPB);

EPWM_enableGlobalLoadRegisters(base,EPWM_GL_REGISTER_CMPA_CMPAHR | EPWM_GL_REGISTER_CMPB_CMPBHR);

EPWM_setGlobalLoadTrigger(base,EPWM_GL_LOAD_PULSE_CNTR_ZERO_PERIOD);

EPWM_enableGlobalLoad(base);

After the above code runs, EPWM1A will always be high and EPMW1B will always be low.

If EPWM_disableGlobalLoad(base) is disabled; EPWM1A EPMW1B will send waves normally.

What could be the reason for this?

Best regards