Part Number: TMS320F28075
Tool/software: TI C/C++ Compiler
Hello, Altruist,
I am working on an Isolated Bidirectional FB DC-DC converter. While working on this converter, I need to phase shift two PWM signals. For boost mode, the requirement is ePWM1 signal leads to ePWM6 from 0 to 90 degrees. And for buck mode, ePWM1 signal lags to ePWM6 from 0 to 90 degrees. For the boost mode, I made ePWM1 as a master and ePWM6 as a slave. For this case, I can phase shift 0 degrees to 90-degree that works fine. But The problem, I am facing in the buck mode since I can't make ePWM6 as a master and ePWM 1 as a slave. For this, I need to ePWM1 signal lags to ePWM6 from 0 to 90 degrees. Now, How can I deal with this problem?
Now, to tackle this problem, I keep ePWM1 as a master and ePWM6 as a slave mode; trying to lead ePWM6 signal 270 degrees to 360 degrees. However, I can only lead the ePWM6 signal from 0 degrees to 270 degrees. Here, is code for phase shifting
EPwm1Regs.TBPHS.bit.TBPHS = 0; // Set Phase register to zero, master
EPwm1Regs.TBCTL.bit.CTRMODE =0x2; // Symmetrical mode
EPwm1Regs.TBCTL.bit.PHSEN = 0; // Master module
EPwm1Regs.TBCTL.bit.PRDLD = 0;
EPwm1Regs.TBCTL.bit.SYNCOSEL = 01; // Sync down-stream module
EPwm6Regs.TBPHS.bit.TBPHS = 2249; // 270 degrees
EPwm6Regs.TBCTL.bit.CTRMODE = 0x2; // Symmetrical mode
EPwm6Regs.TBCTL.bit.PHSEN = 1; // Slave module
EPwm6Regs.TBCTL.bit.PHSDIR = 0; // Count DOWN on sync
EPwm6Regs.TBCTL.bit.PRDLD = 0;
EPwm6Regs.TBCTL.bit.SYNCOSEL = 0; // sync flow-through
Please give me a suggestion to overcome this problem.
Thank you!
