The ePWM4 operates in UP-DOWN mode, and count up after synchronization. The ePWM1 SYNCOUT has been chosen as the SYNCIN of ePWM4.
TBPRD=1000(0x3E8), TBPHS=690(0x2B2), EPWM_COUNT_MODE_UP_AFTER_SYNC. However, after synchronization, TBCTR counts up and just exceeds TBPRD without changing direction.
When interrupt is triggered, the ePWM4 TBCTR is 0x2D3(723), which is slightly larger than 690. This indicates a correct synchronization(I think).
Then the TBCTR counts up. It exceeded TBPRD and didn't count down.
When I switched to EPWM_COUNT_MODE_DOWN_AFTER_SYNC, or even disable the synchronization, this phenomenon never happened again.
What could be the cause?
TBPRD=1000(0x3E8), TBPHS=690(0x2B2), EPWM_COUNT_MODE_UP_AFTER_SYNC. However, after synchronization, TBCTR counts up and just exceeds TBPRD without changing direction.
We have not seen this issue before. This should not occur since your TBPHS value is less than your TBPRD value. So the counter should count up then back down to zero.
Are you loading any other values of TBPHS to the EPWM or is TBPHS fixed? Is your TBPRD fixed?
If possible can you provide a code snippet of the PWM configuration?