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.

关于280049C 通过配置ECAP 的GPIO以捕获PWM的GPIO配置问题

我现在遇到一个关于ECAP的GPIO的配置问题,配置了7个GPIO,其他6个GPIO可以通过ECAP的相关配置来捕获PWM,唯独我在其中配置的一个GPIO28无法捕获PWM,我想知道是其他有什么原因导致这个GPIO无法捕获。

  • 请问您现在GPIO28是否复用了其他功能?若是可以的话,能否给出相关的配置代码?谢谢
  • InputXbarRegs.INPUT1SELECT = 30;
    ECap1Regs.ECCTL0.bit.INPUTSEL = 0;
    GpioCtrlRegs.GPAPUD.bit.GPIO30 = 0;
    GpioCtrlRegs.GPAGMUX2.bit.GPIO30 = 0;
    GpioCtrlRegs.GPAMUX2.bit.GPIO30 = 0;
    GpioCtrlRegs.GPADIR.bit.GPIO30 = 0; // input
    GpioCtrlRegs.GPAQSEL2.bit.GPIO30 = 3; // Asynch input
    #if 1
    InputXbarRegs.INPUT2SELECT = 28;
    ECap2Regs.ECCTL0.bit.INPUTSEL = 1;
    GpioCtrlRegs.GPAPUD.bit.GPIO28 = 0;
    GpioCtrlRegs.GPAGMUX2.bit.GPIO28 = 0;
    GpioCtrlRegs.GPAMUX2.bit.GPIO28 = 0;
    GpioCtrlRegs.GPADIR.bit.GPIO28 = 0; // input
    GpioCtrlRegs.GPAQSEL2.bit.GPIO28 = 3; // Asynch input
    #else
    InputXbarRegs.INPUT2SELECT = 22;
    ECap2Regs.ECCTL0.bit.INPUTSEL = 1;
    GpioCtrlRegs.GPAPUD.bit.GPIO22 = 0;
    GpioCtrlRegs.GPAGMUX2.bit.GPIO22 = 0;
    GpioCtrlRegs.GPAMUX2.bit.GPIO22 = 0;
    GpioCtrlRegs.GPADIR.bit.GPIO22 = 0; // input
    GpioCtrlRegs.GPAQSEL2.bit.GPIO22 = 3; // Asynch input
    #endif

    InputXbarRegs.INPUT3SELECT = 31;
    ECap3Regs.ECCTL0.bit.INPUTSEL = 2;
    GpioCtrlRegs.GPAPUD.bit.GPIO31 = 0;
    GpioCtrlRegs.GPAGMUX2.bit.GPIO31 = 0;
    GpioCtrlRegs.GPAMUX2.bit.GPIO31 = 0;
    GpioCtrlRegs.GPADIR.bit.GPIO31 = 0; // input
    GpioCtrlRegs.GPAQSEL2.bit.GPIO31 = 3; // Asynch input


    InputXbarRegs.INPUT4SELECT = 29;
    ECap4Regs.ECCTL0.bit.INPUTSEL = 3;
    GpioCtrlRegs.GPAPUD.bit.GPIO29 = 0;
    GpioCtrlRegs.GPAGMUX2.bit.GPIO29 = 0;
    GpioCtrlRegs.GPAMUX2.bit.GPIO29 = 0;
    GpioCtrlRegs.GPADIR.bit.GPIO29 = 0; // input
    GpioCtrlRegs.GPAQSEL2.bit.GPIO29 = 3; // Asynch input


    InputXbarRegs.INPUT5SELECT = 16;
    ECap5Regs.ECCTL0.bit.INPUTSEL = 4;
    GpioCtrlRegs.GPAPUD.bit.GPIO16 = 0;
    GpioCtrlRegs.GPAGMUX2.bit.GPIO16 = 0;
    GpioCtrlRegs.GPAMUX2.bit.GPIO16 = 0;
    GpioCtrlRegs.GPADIR.bit.GPIO16 = 0; // input
    GpioCtrlRegs.GPAQSEL2.bit.GPIO16 = 3; // Asynch input


    InputXbarRegs.INPUT6SELECT = 17;
    ECap6Regs.ECCTL0.bit.INPUTSEL = 5;
    GpioCtrlRegs.GPAPUD.bit.GPIO17 = 0;
    GpioCtrlRegs.GPAGMUX2.bit.GPIO17 = 0;
    GpioCtrlRegs.GPAMUX2.bit.GPIO17 = 0;
    GpioCtrlRegs.GPADIR.bit.GPIO17 = 0; // input
    GpioCtrlRegs.GPAQSEL2.bit.GPIO17 = 3; // Asynch input
    经过查询,GPIO28没有复用其他功能,感谢你的回复