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.

[参考译文] LAUNCHXL-F28377S:PWM 配置问题(PWM10和 PWM11)

Guru**** 2343770 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/590183/launchxl-f28377s-pwm-configuration-problem-pwm10-and-pwm11

器件型号:LAUNCHXL-F28377S

你好

我在配置 LaunchPad_F28377S 上的 PWM10和 PWM11以生成信号时遇到问题。

 根据示例 ePWM_UP_AQ_cpu01.c、我可以配置 PWM 4、6、8、但无法对 PWM 10、11进行配置。

我的代码下面。 也许有人帮助我解决这个问题。 我发送了很多时间来解决它。

此致

Dariusz

#include "F28x_Project.h"
#include "F2837xS_examples.h"

CpuSysRegs.PCLKCR2.bit.EPWM10=1; //启用 PWM10

EALLOW;
GpioCtrlRegs.GPAPUD.bit.GPIO18 = 1;//禁用 GPIO18上的上拉电阻(EPWM10A)
GpioCtrlRegs.GPAPUD.bit.GPIO19 = 1;//禁用 GPIO19上的上拉电阻(EPWM10B)
GpioCtrlRegs.GPAMUX2.bit.GPIO18=1;//将 GPIO2配置为 EPWM10A
GpioCtrlRegs.GPAMUX2.bit.GPIO19=1;//将 GPIO3配置为 EPWM10B
EDIS;

EPwm10Regs.TBPRD = 3125;//设置定时器周期
EPwm10Regs.TBPHS.bit.TBPHS = 0x0000;//相位为0
EPwm10Regs.TBCTR = 0x0000;//清除计数器

EPwm10Regs.TBCTL.bit.CTRMODE = 2;//递增-递减计数
EPwm10Regs.TBCTL.bit.PHSEN = 0;//禁用相位加载
EPwm10Regs.TBCTL.bit.HSPCLKDIV = TB_DIV2;//时钟与 SYSCLKOUT 之比
EPwm10Regs.TBCTL.bit.CLKDIV = TB_DIV2;//慢、只观察

EPwm10Regs.CMPA.bit.CMPA =1562;
EPwm10Regs.CMPB.bit.CMPB =1562;

EPwm10Regs.AQCTLA.bit.CAU = 2;//将 PWM2A 设置为零
EPwm10Regs.AQCTLA.bit.CAD = 1;
EPwm10Regs.AQCTLB.bit.CAU = 2;//将 PWM2B 设置为零
EPwm10Regs.AQCTLB.bit.CAD = 1;

EPwm10Regs.DBCTL.bit.OUT_MODE = 3;
EPwm10Regs.DBCTL.bit.POLSEL = 1;
EPwm10Regs.DBCTL.bit.IN_MODE = 0;
EPwm10Regs.DBRED.bit.DBRED = 50;
EPwm10Regs.DBFED.bit.DBFED = 50;  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Dariusz:

    您能否详细说明这是如何工作的? 软件是否无法编译? 代码是否运行、但 ePWM10和 ePWM11寄存器未正确配置? 代码是否看起来正常运行、但您在器件引脚上看不到信号? 您是否在器件引脚上看到信号、但它似乎未达到预期的接头位置? 还有事吗?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 David

    我对您的问题有解答:

    1.软件编译失败吗?

    否 我在编译阶段没有任何错误。

    2.代码是否运行、但 ePWM10和 ePWM11寄存器未正确配置?

    我比较了 PWM2和 PWM10之间的寄存器状态。 有一种配置方式。

    结果是:我可以在 PWM2上看到 PWM 脉冲、但 PWM10不工作。 寄存器状态。

    代码是否看起来正常运行、但您在器件引脚上看不到信号?

    是的。

    您是否在器件引脚上看到信号、但它似乎未达到预期的接头位置?

    我不知道你我的是什么。

    我进行了测试。 我使用 GPIO18 I 19 (PWM10) 作为切换模式。 我观察到的输出信号。 因此通道工作正常

    此致

    Dariusz

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Dariusz:

    这是否可以用于 ePWM10和11的多路复用器位置?

    这两种模式的多路复用器位置相同、但您需要将 ePWM 10和11的 GMUX 设置为1。