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.

[参考译文] Linux/SDK-AM437X:无法在 CCS 中检查 PWM 驱动程序

Guru**** 2587365 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/636350/linux-sdk-am437x-pwm-driver-cannot-be-checked-in-ccs

器件型号:PROCESSOR-SDK-AM437X

工具/软件:Linux

我正在使用 AM437x idk。 我使用 Linux SDK。 但我使用该命令来生成波形。 然后、我通过 JTAG 连接 IDK。 在 CCS 调试接口上、我检查 PWM 寄存器、它们不变。 为什么?

命令为参考: processors.wiki.ti.com/.../Linux_Core_PWM_User's_Guide

 

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    这是哪个 SDK 版本? 您使用什么命令来"生成波形"?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    SDK 版本:

    TI-PROCESSOR-SDK-LINUX-RT-AM437X-EVM-02.00.02.11.

    命令:

    echo 0 >/sys/class/pwm/pwmchip0/export

    echo 1000000000 >/sys/class/pwm/pwmchip0/pwm0/period

    echo 500000000 >/sys/class/pwm/pwmchip0/pwm0/duty_cycle

    回波  反转>/sys/class/pwm/pwmchip0/pwm0/polarity

    echo 1 >/sys/class/pwm/pwmchip0/pwm0/enable

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    这似乎是正确的。 您在 CCS 中查看的是哪些地址?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我正在使用寄存器接口进行检查。 它位于 PWMSS0_ePWM 下。 它称为 TBPRD、它是零。 我还检查 PWMSS1_ePWM、PWMSS2_ePWM、PWMSS3_ePWM、PWMSS4_ePWM、PWMSS5_ePWM 的 TBPRD、所有这些都是零。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我认为您应该查看 AM437x TRM Rev. G 的第20.2.2.11节
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我尝试按照您的说法配置2寄存器。 但仍然看不到 PWM 寄存器发生变化。 今天、当我进入/sys/class/pwmchip0.时、我对此表示出了一定的注意 使用"ls -l "、我发现器件选择了 eCAP 功能。 因此、我检查 CCS、发现 TSR 每次都在变化。 因此、我想将 PWM 从 ECAP 更改为  ehrpwm。 如何 操作?  

    PS:我进入 menuconfig、发现 PWM 只有3个选项:Interl LPSS 支持、TWL4030/6030 PWM 支持和 TWL4030/6030 LED 驱动器支持。

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

    Yude 您好、

    我可以看到在 arch=arm make menuconfig 中启用了 EHRPWM 支持

    器件驱动程序 -->[*]脉宽调制(PWM)支持

    似乎您尚未使用默认的 tisdk_AM437X-EVM_defconfig 文件、或者您缺少  /board-support/linux-rt- 器件树源文件中的/Documentation/devicetree/bindings/pwm/pwm-tiecap.txt 节点和引脚控制/多路复用。

    此致、
    Kemal