SPRACY3 June 2021 F29H850TU , F29H859TU-Q1 , TMS320F280023C , TMS320F280025C , TMS320F280025C-Q1 , TMS320F280040C-Q1 , TMS320F280041C , TMS320F280041C-Q1 , TMS320F280048C-Q1 , TMS320F280049C , TMS320F280049C-Q1 , TMS320F28076 , TMS320F28379D , TMS320F28379D-Q1 , TMS320F28379S , TMS320F28386D , TMS320F28386D-Q1 , TMS320F28386S , TMS320F28386S-Q1 , TMS320F28388D , TMS320F28388S , TMS320F28P650DH , TMS320F28P650DK , TMS320F28P650SH , TMS320F28P650SK , TMS320F28P659DH-Q1 , TMS320F28P659DK-Q1 , TMS320F28P659SH-Q1
The trip signal (active low) is required to set as CBC trip event, which forces EPWM1A/B or EPWM2A/B low.
The following code shows that GPIO14, that is EPWM8A, is set as the source for INPUT X-BAR 1, and then fed to ePWM X-BAR TRIP4.
XBAR_setInputPin(XBAR_INPUT1,14); // INPUT X-BAR 1 = GPIO14 = EPWM8
// Configure INPUT X-BAR 1 as EPWM X-BAR TRIP 4 source
XBAR_setEPWMMuxConfig(XBAR_TRIP4,XBAR_EPWM_MUX01_INPUTXBAR1);
XBAR_enableEPWMMux(XBAR_TRIP4, XBAR_MUX01);
The trip signal (EPWM8A) is configured as Digital Compare A High (DCAH) in both EPWM1 and EPWM2 modules, and DCAEVT2 event takes effect when DCAH becomes low. The following code snippet shows the configuration for EPWM1, which is achieved in the function “EPWM_CBC_CONFIG(uint32_t base1, uint32_t base2)”, and base1 and base2 are the base addresses of the 2 EPWM modules.
//EPWM1 CBC
// DCAH = TRIPIN4 = INPUT X-BAR 1 = EPWM8A
EPWM_selectDigitalCompareTripInput(base1,EPWM_DC_TRIP_TRIPIN4,EPWM_DC_TYPE_DCAH);
// DCAH = Low and DCAL = Don't care,Trigger DCAEVT2 when EPWM8A goes low
EPWM_setTripZoneDigitalCompareEventCondition(base1,EPWM_TZ_DC_OUTPUT_A2,EPWM_TZ_EVENT_DCXH_LOW);
EPWM_setTripZoneDigitalCompareEventCondition(base1,EPWM_TZ_DC_OUTPUT_B2,EPWM_TZ_EVENT_DCXL_LOW);
// Enable CBC Trip in ePWM1
EPWM_setTripZoneAction(base1,EPWM_TZ_ACTION_EVENT_TZA,EPWM_TZ_ACTION_LOW);
EPWM_setTripZoneAction(base1,EPWM_TZ_ACTION_EVENT_TZB,EPWM_TZ_ACTION_LOW);