主题中讨论的其他器件:AM625
尝试在 AM62x 平台上将 eCAP1驱动程序用作 APWM (BSP-08_03_00_19)
在 执行回显以启用时抛出错误"无器件"
如何在 APWM 模式下为 AM62x 平台使用 eCAP 驱动程序?
在 DTB 中,仅启用 eCAP1和 ecap0,禁用所有其他节点

根据您的文档
- 当配置为 APWM 模式时、ECAP 模块提供单个 PWM 输出通道预实例
那么,如何将其配置为 APWM 模式?
-Nagendra
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.
尝试在 AM62x 平台上将 eCAP1驱动程序用作 APWM (BSP-08_03_00_19)
在 执行回显以启用时抛出错误"无器件"
如何在 APWM 模式下为 AM62x 平台使用 eCAP 驱动程序?
在 DTB 中,仅启用 eCAP1和 ecap0,禁用所有其他节点

根据您的文档
那么,如何将其配置为 APWM 模式?
-Nagendra
您好、Nagendra、
要确认、您使用的是 AM62x SK 电路板、对吧?
当我转至 AM62x Linux 处理器 SDK 8.3 board-support/linux-x.x.x.x/arch/arm64/boot/dts/ti/k3-am625-SK.dts 时、我看到默认情况下所有 ePWM 和 ecaps 均处于禁用状态:
&epwm0 {
status = "disabled";
};
&epwm1 {
status = "disabled";
};
&epwm2 {
status = "disabled";
};
&ecap0 {
status = "disabled";
};
&ecap1 {
status = "disabled";
};
&ecap2 {
status = "disabled";
};
因此、在您修改 DTS 文件以启用这些实例、重新构建 DTB 文件之前、我不希望您在 EVM 板上的/sys/class/pwm 下看到任何 PWM 或 ECAP 实例、 然后将新的 DTB 文件放入 EVM 的 Linux 文件系统中的/boot/下(我通常会将原始 DTB 文件重命名为 K3-am625-SK.dtb.orig、以便于使用)。
如果您已经修改了器件树文件、当您搜索 PWM 目录时、您在电路板上看到了什么?
# ls /sys/class/pwm
此致、
Nick
您好 Nick
是的、我在 DTS 文件中启用了它的 eCAP1驱动程序。 我使用的是定制 AM625 HW
我可以使用以下命令启用 eCAP1器件的 PWM
echo 0 >/sys/class/pwm/pwmchip0/export (这会创建 pwm0节点,但 echo 1抛出错误)
echo 900000000 >/sys/class/pwm/pwmchip0/pwm0/period
Echo 30000000 >/sys/class/pwm/pwmchip0/pwm0/duty_cycle
Echo 1 >/sys/class/pwm/pwmchip0/pwm0/enable
现在,问题是 PWM 频率为10Hz,我无法增加频率,我需要最低1kHz
是否有任何限制?
-Nagendra
您好、Nagendra、
如果 您从$ cat /sys/class/pwm/pwmchip5/npwm 获得1作为输出,则这意味着该 PWM 实例上只有一个通道。 回波0应导出第一个通道、如果有第二个通道、则回波1应导出第二个通道、等等
您是否尝试禁用 ECAP 实例、然后更改周期、然后重新启用 ECAP 实例? 我不确定在周期值更新时、如果启用了 ECAP、信号周期是否会改变。
此致、
Nick