Part Number: TMS320F28377D
Hi team,
Here's an issue from the customer may need your help:
When using CPU2's CLA, the EPMW comparator value can be updated normally in emulator mode and output waveforms normally. The comparison value of EPWM does not update properly after a power-down restart. EPMW is handled by CLA access. The code is as follows:
pAxis->pEpwmRegs->pEpmw1Regs->CMPA.bit.CMPA = pAxis->pClaVoltLoop->CMPR1;
pAxis->pEpwmRegs->pEpmw2Regs->CMPA.bit.CMPA = pAxis->pClaVoltLoop->CMPR2;
pAxis->pEpwmRegs->pEpmw3Regs->CMPA.bit.CMPA = pAxis->pClaVoltLoop->CMPR3;
Where EPWM_REGS_STRUCT *pEpwmRegs; // register address
The pointer is initialized by the table below:
const EPWM_REGS_STRUCT epwmRegAddrTable[4] =
{
{&EPwm1Regs, &EPwm2Regs, &EPwm3Regs},
{&EPwm4Regs, &EPwm5Regs, &EPwm6Regs},
{&EPwm7Regs, &EPwm8Regs, &EPwm9Regs},
{&EPwm10Regs, &EPwm11Regs, &EPwm12Regs}
};
//-----------------------------------------------
However, the simulation mode, FLASH mode after power-on reboot, is normal when the compare register is operated without a pointer, using the following code directly:
EPwm1Regs.CMPA.bit.CMPA = pAxis->pClaVoltLoop->CMPR1;
EPwm2Regs.CMPA.bit.CMPA = pAxis->pClaVoltLoop->CMPR2;
EPwm3Regs.CMPA.bit.CMPA = pAxis->pClaVoltLoop->CMPR3;
Issue: The customer would like to know if the CLA not support this pointer mode, or is there any limitation? Why emulation mode is ok?
Could you help check this case? Thanks.
Best Regards,
Cherry