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.

[参考译文] AM3352:PWM 系统进入

Guru**** 2540720 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/602531/am3352-pwm-sys-entry

器件型号:AM3352

您好!

我正在 EVM 板上使用 Linux-4.4.41。

在我的应用中、我希望在引脚  McASP0_FSX (可用作 eHRPWM0B (模式1))上生成 PWM 波形。 已在"/u-boot/board/ti/am335x/mux.c "中输入

我已经学习 了 processors.wiki.ti.com/.../AM335x_PWM_Driver's_Guide。 但无法找到/sys/class/pwm/ehrpwm.i:j

您能不能指导我在 AM335x-evmsk.dts 文件中创建一个节点?

/sys/class/pwm 中只有一个条目是 pwmchip0

此致、

Sandip Gokani

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    此 wiki 很旧。 请访问 processors.wiki.ti.com/.../Linux_Core_PWM_User's_Guide
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!


    感谢您分享新的 PWM 用户指南。

    我在 arch/arm/boot/dts/AM335x-evmsk.dts 文件中进行了以下更改。

    ehrpwm0_pins:ehrpwm0_pins{                   
                  pinctrl-single、pins =<
                          0x194 (PIN_OUTPUT | MUX_MODE1)         /* PIN McASP0_FSK (模式1)用作输出*/
                  >;
    };

    epwms0{(&E)
          状态="正常";

          ehrpwm0:PWM@48300200{
                   状态="正常";
                   pinctrl-names ="default";
                   pinctrl-0 =<&ehrpwm0_PINs>;
          };
    };

    在 EVM 板中进行 Linux 构建和引导内核后、我看到-

    root@AM335x-EVM:~# ls /sys/class/pwm/pwmchip2
    器件/   导出    npwm      电源/    子系统/ uevent    取消导出

    现在、根据用户指南(您提供)、以下命令会显示错误

    root@AM335x-EVM:~# echo 0 >/sys/class/pwm/pwmchip2/export
    -sh:echo:write error:device or resource busy
    root@AM335x-EVM:~# echo 0 >/sys/class/pwm/pwmchip2/unexport                                                                                                             
    -sh:echo:write error:no such device

    即使是这样、也无法根据用户指南在 pwmchip2中找到文件夹"pwm2"。 喜欢-

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

    请告诉我哪里出错了。

    谢谢、

    桑迪普

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我已经要求软件团队来看看。 他们将在这里作出回应。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Biser、

    我已经修改了 arch/arm/boot/dts/am33xx.dtsi 文件、如下所示。

    epwms0:epwmss@48300000{

                兼容="ti、am33xx-pwms";

                REG =<0x48300000 0x10>;

                ti、hwmonds ="epwmss0";

                #address-cells =<1>;

                大小单元格=<1>;

                状态="正常";

                范围=<0x48300100 0x48300100 0x80 //* ECAP *

                     0x48300180 0x48300180 0x80 // eQEP *

                     0x48300200 0x48300200 0x80>;/* EHRPWM */

                ecap0:ECAP@48300100{

                    兼容="ti、am3352-ecap"、

                          "TI、am33xx-ECAP";

                    #PWM-Cells =<3>;

                    REG =<0x48300100 0x80>;

                    时钟=<&l4ls_gclk>;

                    时钟名称="Fck";

                    中断=<31>;

                    中断名称="ecap0";

                    STATUS ="禁用";

                };

                ehrpwm0:PWM@48300200{

                    兼容="ti、am3352-ehrpwm"、

                          "TI、am33xx-ehrpwm";

                    #PWM-Cells =<3>;

                    REG =<0x48300200 0x80>;

                    ti、hwmds ="ehrpwm0";

                    时钟=<&ehrpwm0_TBCLK>、<&l4ls_gclk>;

                    时钟名称="TBCLK"、"fck";

                    状态="正常"

                };

            };

    而且、我得到-

    root@AM335x-EVM://# ls /sys/class/pwm/pwmchip2
    器件    导出    npwm      电源     子系统 uevent    unexport
    root@AM335x-EVM://# ls /sys/class/pwm/pwmchip0
    器件    导出    npwm      电源     pwm0      子系统 uevent    undexport

    然后、根据用户指南针对 pwmchip0文件夹中占空比为50%的2.4KHz 应用命令。

    无法在 pwmchip2文件夹上应用命令。

    但是、我的 McASP0_FSK 引脚上最终无法获得正确的 PWM 信号?

    问题:

    哪个是正确的- pwmchip0或 pwmchip2?

     

    此致、

    桑迪普

     

     

     

     

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

    您好!

    如何在/sys 项中获取 ehrpwm.0:1? 如下所示...

    root@AM335x:/sys/class/pwm ls

    eCAP.0   ehrpwm.0   :0  ehrpwm.0:1 ehrpwm.1:0 ehrpwm.1:1

    此致、

    桑迪普