Hi, I use the eTPU2 on MPC5745R to generate PWMs for motor control.
A recommended design strategy for eTPUs is to assign the base and complementary pwm outputs to adjacent channels in order to leverage the registers for parameter passing between the two.
I assigned the phase W pwm channels as below:
PhaseW_Base eTPU9_A PG[2]
//PG[3], PG[4] not available on LQFP
PhaseW_Complementary eTPU11_A PG[5]
Note that physically they are not adjacent channels. However, on the LQFP package, eTPU10_A configurable port, PortPG[4] is not available. It is too late in the design to search for another set of 3 adjacent eTPU chans. So my questions are:
(a) if the port is unavailable on the package, will the eTPU still schedule the chan processing? I would think so, for the eTPU scheduler has no knowledge of package. Need confirmation.
(b) Is it possible to prevent scheduling eTPU10_A ? Or in other words, can I force the eTPU to transition from chan9_A to chan11_A, in which case the two will effectively be "adjacent" and I can leverage the registers for parameter passing.
Thank you for your suggestions.
Hi,
a) Yes, eTPU has no knowledge of the package.
b) You would have to modify eTPU source code to allow something like that. I have checked eTPU source code (both PWMMAC/PWMMDC and PWMM from new implementation), both uses for complementary channel just increasing by 1.