This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

problem with outputing pwm pulses for controlling buck converter

Other Parts Discussed in Thread: CONTROLSUITE

Hi everyone,

I am using a F28027 Piccolo Launchpad and am now trying to implement a buck converter. I need to use the microcontroller to control the pwm duty cycle for buck controller. I followed the code from document SPRUGE9 page 82.

//initialazation

// EPWM Module 3 config
EPwm3Regs.TBPRD = 800; // Period = 801 TBCLK counts
EPwm3Regs.TBPHS.half.TBPHS = 0; // Set Phase register to zero
EPwm3Regs.TBCTL.bit.CTRMODE = TB_COUNT_UP;
EPwm3Regs.TBCTL.bit.PHSEN = TB_DISABLE; // Phase loading disabled
EPwm3Regs.TBCTL.bit.PRDLD = TB_SHADOW;
EPwm3Regs.TBCTL.bit.SYNCOSEL = TB_SYNC_DISABLE;
EPwm3Regs.CMPCTL.bit.SHDWAMODE = CC_SHADOW;
EPwm3Regs.CMPCTL.bit.SHDWBMODE = CC_SHADOW;
EPwm3Regs.CMPCTL.bit.LOADAMODE = CC_CTR_ZERO; // load on CTR=Zero
EPwm3Regs.CMPCTL.bit.LOADBMODE = CC_CTR_ZERO; // load on CTR=Zero
EPwm3Regs.AQCTLA.bit.PRD = AQ_CLEAR;
EPwm3Regs.AQCTLA.bit.CAU = AQ_SET;

//runtime

EPwm3Regs.CMPA.half.CMPA = 500; // adjust duty for output EPWM3A

 

However, there is no PWM output from either EPWM3A or EPWM3B. Is there any chance that I missed some part of the codes? Are there any potential problems that I might need to notice?

Thanks.

Jingzhe