...and yet so far. I have the eXperimeter board which has no linux driver for the eHRPWMs, so I wrote a simple linux driver to set up both eHRPWMs to generate a square wave based on the most simple example in the eHRPWM user's guide. At first the registers were reading back zeroes until I took the eHRPWMs out of low power mode, then they came to life and I could read back correct default values so that allowed me to verify the endianess of my driver commands that set the registers.
The remaining problem is that even though the eHRPWMs are set up and ready to go the counter never increments. I checked the eHRPWM clock source in the PLL registers and the PLL status/control registers are indicating the ASYNC3 clock (used by the eHRPWM) is alive. I changed the ASYNC3 clock to be sourced from PLLC0 and then from PLLC1 but in either case the counter doesn't budge.
Now for the mysterious part. There was a forum response regarding L137 PWM code examples that pointed users to the F28335 T.I. DSP chip code examples for eHRPWM control since that chip uses the same eHRPWM as the L137/L138. In that code the is a register called PCLKCR1 that is used to enable the clock to the eHRPWMs! This register is briefly referred to in the L138 System User's Guide, but it is not described in detail in either the L138 System User's Guide nor the L138 Data Manual. Does this register exist in the L138 and is it used to enable the clock to the eHRPWMs?
Thanks!
-JV