Tool/software:
Hi champs,
I am asking this for our customer.
The user wonders if there is any limitation/concern/consideration when using software one-shot trip of EPWM.
That is,
EPWMx.TZFRC.OST
EPWMx.TZCLR.OST
1)
For example, if a PWM period is 1 sec and this PWM is 100% duty on, and the user uses EPWMx.TZFRC.OST and then use to EPWMx.TZCLR.OST to trip it low and then clear alternatively every 1 ms.
Is it possible to have on and off and on and off like that?
2) As long as the user uses EPWMx.TZFRC.OST and then TZFLG.OST=1, it means the one-shot trip is effective until the user uses EPWMx.TZCLR.OST to clear TZFLG.OST. Is our understanding correct?
Hi Wayne,
Yes you can use one-shot trip to set the trip event and then clear the flag to clear the action applied that's possible.
Although the TZFRC.OST will work only if EPWMCLKDIV is /1 as mentioned in thread here - https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1345272/tms320f28p650dk-unexpected-results-of-force-trip-action
Other option is to use T1/T2 action events generated from the Digital compare submodule and take actions based on the events
Thanks
Hi Bhatt,
That explains it.
After setting EPWMCLKDIV = /1, we found our issue has been resolved.
ClkCfgRegs.PERCLKDIVSEL.bit.EPWMCLKDIV = 0; // EPWMCLK = 200MHz /1 of PLLSYSCLK
Questions:
1) On F2837x, where SYSCLK = 200 MHz and EPWM = 100 MHz max . Is there also such an issue? EPWMCLK cannot be set /1 there.
2) On F2838x, where SYSCLK = 200 MHz and EPWM = 200 MHz max. Is there also such an issue?
3) On F28P65x, where SYSCLK = 200 MHz and EPWM = 200 MHz max, have we documented this in errata or TRM note? This is critical because many users would just use EPWMx.TZFRC.OST without realizing this issue.
4) On F29H85x/P58x, where SYSCLK = 200 MHz and EPWM = 200 MHz max. Is there also such an issue?