Other Parts Discussed in Thread: SYSCONFIG
Hi,
I'm trying to implement open loop PSFB drive signals with %50 duty and complementary with deadband.
OPTION#1 I did it before using ePWM1 and ePWM2. EPWM1 generates SYNCO, and ePWM2 takes this as SYNCIN and I load phase shift load value to ePWM2. I to generate phase shifted signals at ePWM2 according to ePWM1. I controlled my power stage using it. In this configuration, my power stage becomes TR-LEAD topology.
OPTION#2 However, now, I needed to switch my phase shift generation. I will change it to TR-LAG topology. I needed to generate same phase shifted signals at ePWM1 according to ePWM2. But I couldn't do that. I cannot change phase shift of ePWM1 using a slow loop at main.c. I did it for ePWM2 before as below software line.
This is my previous code (OPTION #1) snippest to generate TR-LEAD topology. How can I edit it to meet my need to generate OPTION #2?
void SYNC_init(void)
{
SysCtl_setSyncOutputConfig(SYSCTL_SYNC_OUT_SRC_EPWM1SYNCOUT);
//
// For EPWM1, the sync input is: SYSCTL_SYNC_IN_SRC_EXTSYNCIN1
//
SysCtl_setSyncInputConfig(SYSCTL_SYNC_IN_EPWM4, SYSCTL_SYNC_IN_SRC_EPWM1SYNCOUT);
SysCtl_setSyncInputConfig(SYSCTL_SYNC_IN_EPWM7, SYSCTL_SYNC_IN_SRC_EPWM1SYNCOUT);
}
EPWM_setTimeBaseCounter(EPWM1_BASE, 0);
EPWM_setPhaseShift(EPWM1_BASE, 0);
EPWM_disablePhaseShiftLoad(EPWM1_BASE);
EPWM_setSyncOutPulseMode(EPWM1_BASE, EPWM_SYNC_OUT_PULSE_ON_COUNTER_ZERO);
EPWM_setTimeBaseCounter(EPWM2_BASE, 0U);
EPWM_enablePhaseShiftLoad(EPWM2_BASE);
EPWM_setSyncOutPulseMode(EPWM2_BASE, EPWM_SYNC_OUT_PULSE_ON_EPWMxSYNCIN);
EPWM_setPhaseShift(EPWM2_BASE, 2); // Value*TBCLKs Phase-Shift is Set
EPWM_setCountModeAfterSync(EPWM2_BASE, EPWM_COUNT_MODE_UP_AFTER_SYNC);
I update phase shift using below lines at slow loop at main.c
HRPWM_setPhaseShift(EPWM2_BASE,DummyShift1);

