I am using a 28035 in a synchronous buck application and trying out current mode control with the new Digital Compare submodule in the ePWM. I have the current signal fed to COMP1A and the comparator is triggering a DCAEVT2 to shut down the PWM cycle (using a CBC trip zone).
SIDE NOTE: Something that had me confused for a while that might help someone else out: The DCxEVTx in the TZCTL registers DO NOT LATCH WHEN THE COMPARE EVENT GOES AWAY! You have to use the TZA and TZB settings to get behavior that latches the pwm signals (either OSHT or CBC).
Anyway, after I figured that out, I have the ePWM1A waveform latching off when the current signal hits the proper DACVAL. My problem is getting the synchronous switch to turn on. If I use the same CBC trip zone (on DCBEVT2 for example) the switch comes on immediately with no dead time. I realize the TZ controller is after the other blocks. That being the case, what is the best way to insert dead time in an application like this? I use could use an interrupt and software force the B output, but the latency will make it difficult to get a well controlled dead time. I know I can sync another ePWM module using DCEVTs, but that doesn't help with the B output in the same module. I am looking for a hardware solution in the ePWM. I wish the Digital Compare module when to the action qualifier, perhaps faking out a CMPA event or something like that, but it doesn't.
Any help would be appreciated!
Traver