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/AM4376:PRU 输出压摆率控制

Guru**** 2609895 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/584513/linux-am4376-pru-output-slew-rate-control

器件型号:AM4376

工具/软件:Linux

您好!

我想知道、当 GPIO 被分配给 PRU 时、是否可以控制它的转换率(慢速的快速)。

在 Linux devicetree 的 am43xx_pinmux 部分中、我已将 PRU 的 GPIO 定义如下:

/* PRUSS0 CORE0 GPIO 慢速压摆率*/
pr0_pru0_pins:pr0_pru0_pins_default{
pinctrl-single、pins =<
0x190 (PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE5)/*(N24) McASP0_aclkx.pr0_pru0_GPO[0]*/
0x194 (PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE5)/*(N22) McASP0_FSX.pr0_pru0_GPO[1]*
0x198 (PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE5)/*(H23) McASP0_axr0.pr0_pru0_GPO[2]*
0x19c (PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE5)/*(M24) McASP0_ahclkr.pr0_pru0_GPO[3]*/
0x1a0 (PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE5)/*(L23) McASP0_aclkr.pr0_pru0_GPO[4]*/
0x1a4 (PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE5)/*(K23) McASP0_fsr.pr0_pru0_GPO[5]*/
0x1a8 (PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE5)/*(M25) McASP0_axr1.pr0_pru0_GPO[6]*/
0x1ac (PIN_OUTPUT | SLEWCTRL_SLOW | MUX_MODE5)/*(L24) McASP0_ahclkx.pr0_pru0_GPO[7]*
>;
}; 

在这种配置下、我在 PRU 输出上测得的上升时间为2.4ns。

如果我使用未设置 SLEWCTRL_SLOW 的 devicetree、我也会得到大约2.3ns 的上升时间。

PRU 代码不对输出执行任何配置、并使用寄存器_R30写入 GPIO 值。

PRU 使用 GPIO 时、是否可以将其压摆率设置为慢速、如果是、可以告诉我如何实现这一点?

此致、

Renaud

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

    您的观察结果是正确的。 您将发现快速和慢速压摆率选项之间没有明显的区别。 TI 建议将焊盘配置寄存器中的压摆控制位字段保留为其默认值。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Biser、

    好的、感谢您的回答。

    此致、

    Renaud