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.

TMS320F280025: 想要每隔25HZ改变一下EPWM模块的占空比,从50%改到100%,现在我是在50us的中断中进行的,但发出来的波形总是50%占空比和100%占空比的叠加态,这个问题该如何解决

Part Number: TMS320F280025

 if (toggle == 0)
                         {
                             //EPWM4、6置高电平
                             EPwm4Regs.AQCTLA.bit.ZRO = AQ_SET;
                             EPwm4Regs.AQCTLA.bit.CAU = AQ_NO_ACTION;
                             EPwm4Regs.AQCTLA.bit.CAD = AQ_NO_ACTION;
                             EPwm4Regs.AQCTLA.bit.PRD = AQ_NO_ACTION;

                             EPwm6Regs.AQCTLA.bit.ZRO = AQ_SET;
                             EPwm6Regs.AQCTLA.bit.CAU = AQ_NO_ACTION;
                             EPwm6Regs.AQCTLA.bit.CAD = AQ_NO_ACTION;
                             EPwm6Regs.AQCTLA.bit.PRD = AQ_NO_ACTION;
                             //EPWM3、5保持50%占空比
                             EPwm3Regs.CMPA.bit.CMPA = 2500;
                             EPwm3Regs.AQCTLA.bit.CAU = AQ_CLEAR;            // A增计数置低
                             EPwm3Regs.AQCTLA.bit.ZRO = AQ_SET;              // A减计数置高

                             EPwm5Regs.CMPA.bit.CMPA = 2500;
                             EPwm5Regs.AQCTLA.bit.CAU = AQ_SET;          // A增计数置低
                             EPwm5Regs.AQCTLA.bit.ZRO = AQ_CLEAR;              // A减计数置高
                            // 执行功能1
                         }
                             else
                         {
                             //EPWM3、5置高电平
                             EPwm3Regs.AQCTLA.bit.ZRO = AQ_SET;
                             EPwm3Regs.AQCTLA.bit.CAU = AQ_NO_ACTION;
                             EPwm3Regs.AQCTLA.bit.CAD = AQ_NO_ACTION;
                             EPwm3Regs.AQCTLA.bit.PRD = AQ_NO_ACTION;

                             EPwm5Regs.AQCTLA.bit.ZRO = AQ_SET;
                             EPwm5Regs.AQCTLA.bit.CAU = AQ_NO_ACTION;
                             EPwm5Regs.AQCTLA.bit.CAD = AQ_NO_ACTION;
                             EPwm5Regs.AQCTLA.bit.PRD = AQ_NO_ACTION;
                             //EPWM4、6保持50%占空比
                             EPwm4Regs.CMPA.bit.CMPA = 2500;
                             EPwm4Regs.AQCTLA.bit.CAU = AQ_SET;            // A增计数置低
                             EPwm4Regs.AQCTLA.bit.ZRO = AQ_CLEAR;            // A减计数置高

                             EPwm6Regs.CMPA.bit.CMPA = 2500;
                             EPwm6Regs.AQCTLA.bit.CAU = AQ_CLEAR;            // A增计数置低
                             EPwm6Regs.AQCTLA.bit.ZRO = AQ_SET;              // A减计数置高
                            // 执行功能2
                         }