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.

TMS320F28035: 输出PWM信号不同步

Part Number: TMS320F28035

本意是想配置两路PWM信号,其中PWM2与PWM1相位差180,但是按照如图所示的方式配置后,输出结果仍有几十ns的误差,不知是何原因

  • 方便把代码通过 插入-->代码 的方式重新上传一下吗?

  • Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    void Setup_ePWM1(void)
    {
    // EALLOW;
    // SysCtrlRegs.PCLKCR0.bit.TBCLKSYNC = 0;
    // SysCtrlRegs.PCLKCR1.bit.EPWM1ENCLK = 1;
    // EDIS;
    EPwm1Regs.TBPRD = SP; //
    EPwm1Regs.TBPHS.half.TBPHS = 0x0000; // Phase is 0
    EPwm1Regs.TBCTR = 0x0000; // Clear counter
    // Setup TBCLK
    EPwm1Regs.TBCTL.bit.CTRMODE = TB_COUNT_UP; //
    EPwm1Regs.TBCTL.bit.PHSEN = TB_ENABLE; //
    EPwm1Regs.TBCTL.bit.SYNCOSEL = TB_CTR_ZERO; //
    EPwm1Regs.TBCTL.bit.HSPCLKDIV = TB_DIV1; //�
    EPwm1Regs.TBCTL.bit.CLKDIV = TB_DIV1; //TBCLK = SYSCLKOUT / (HSPCLKDIV �� CLKDIV)=60M
    EPwm1Regs.CMPCTL.bit.SHDWAMODE = CC_SHADOW; // Load registers every ZERO
    EPwm1Regs.CMPCTL.bit.SHDWBMODE = CC_SHADOW;
    EPwm1Regs.CMPCTL.bit.LOADAMODE = CC_CTR_ZERO;
    EPwm1Regs.CMPCTL.bit.LOADBMODE = CC_CTR_ZERO;
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

  • 示波器中不同颜色分别代表什么信号?

    同步配置没有问题,我推测几十ns的间隙大概率是由DB延时引起的。可以先把DB关掉,确认配置好同步后再打开。

  • 示波器不同颜色波形对应了两个模块输出的PWM信号,EPWM1A,EPWM2A,其中蓝色是移相180后的波形。

    我会先试试关掉DB

  • 好的,你先排查一下