TMS320F28P551SG: EPWMB will be pulled up during board init, when i click start at debug session

Part Number: TMS320F28P551SG
Other Parts Discussed in Thread: SYSCONFIG

Hi C2000 team,

I met an issue during debug C2000 P551, after i click start at debugging, EPWM1B and EPWM2B will be pulled up for ~55us. while A channel does not change. 

Also, i disabled the TBCLK during init.

SysCtl_disablePeripheral(SYSCTL_PERIPH_CLK_TBCLKSYNC);

EPWM1B and 1B, 2A and 2B are complementary (H-brdige configuration), has a 80ns deadband. EPWM2 is synced with EPWM1.

Do you know how to avoid this?

Thanks!

BR,

Bowen

 

CH1, 3 are EPWM1A, 2A, CH2 is EPWM1B, CH4 is EPWM2B.

image.png

image.png

  • Bowen,

    Clean way to address this is during initialization disable clock--> board init --> force trip ePWM during initialization --> enable clock and then clear trip using following APIs

    SysCtl_disablePeripheral(SYSCTL_PERIPH_CLK_TBCLKSYNC);
    Board_init();
    EpwmForcedTrip(base1);
    SysCtl_enablePeripheral(SYSCTL_PERIPH_CLK_TBCLKSYNC);
    EpwmClearTrip(base1); // you can put this conditional whenever your code is ready to run PWM using some flag
    This will avoid this spurious pulse.
    Regards,
    Sumit
  • Hi Sumit,

    Thanks for your quick response. I tried this method, but it did not work.

    I also set One-Time SW Force Action to Set output pins to low...

    Do you know if there's some other method could help?

    BR,

    Bowen

  • Hi  

    Could you help look into this issue?

    Thanks,

    Bowen

  • Bowen,

    Have you setup the tripping PWM in sysconfig itself to be low during initialization so that there is no gpio pulled up during sysconfig itself? From board init to where you are forcing it low there is tiny amount of time if PWM is high during init then tiny pulse will appear. 

    Please try pulling it low during sysconfig initialization using trip zone.

    Regards,

    Sumit