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.

TMS28032 做LLC变周期时,当周期变化比较大时,驱动会消失是什么问题??

 EPwm6Regs.TBCTL.bit.PRDLD           = TB_SHADOW;

    EPwm6Regs.CMPCTL.bit.SHDWAMODE      = CC_SHADOW;
    EPwm6Regs.CMPCTL.bit.SHDWBMODE      = CC_SHADOW;
    EPwm6Regs.CMPCTL.bit.LOADAMODE      = CC_CTR_ZERO;
    EPwm6Regs.CMPCTL.bit.LOADBMODE      = CC_CTR_ZERO;

管子都是这么配置的,应该是在三角波过零点时更新周期寄存器和比较寄存器,为什么当周期变化时更新会出现驱动消失。

EALLOW;
            for (uiCnt = 0; uiCnt < 6; uiCnt++)
            {
                EPwmRegs = (struct EPWM_REGS * )((INT32U)(&EPwm1Regs)+(64*uiCnt));
                EPwmRegs->TBPRD            = uiPeriod[uiCnt];
                EPwmRegs->TBPRDHR          = uiPerdHR[uiCnt];
                EPwmRegs->TBPHS.half.TBPHS = uiTblPhs[uiCnt];
                EPwmRegs->CMPA.half.CMPA   = uiCompAR[uiCnt];
                EPwmRegs->CMPB             = uiCompBR[uiCnt];
                EPwmRegs->DBFED            = g_uiDzone;
                EPwmRegs->DBRED            = g_uiDzone;
            }
            EDIS;

以上时改变周期