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.

[参考译文] AM5728:定制 AM5728 SPI 不能与 Hilscher 板一起使用

Guru**** 2482225 points
Other Parts Discussed in Thread: AM5728

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1450811/am5728-custom-am5728-spi-is-not-working-with-hilscher-board

器件型号:AM5728

工具与软件:

大家好!

定制电路板-基于 AM5728

我已 使用 SPI 将 Hilscher 板与我的板连接。

我无法获得预期的任何输出

以下是 DTS 文件配置:

 mcspi2_pADS:mcspi2pads

引脚设置=<
0x17C0 0x00040000 /*(PIN_INPUT | MUX_MODE0)(A26) SPI2_SCLK */
0x17C4 0x00010000 /*(PIN_OUTPUT | MUX_MODE0)(B22) SPI2_D1 MOSI*/
0x17C8 0x00050000 /*(PIN_INPUT | MUX_MODE0)(G17) SPI2_d0 MISO */
0x17CC 0x00010000 /*(PIN_OUTPUT | MUX_MODE0)(B24) SPI2_cs0 */
0x17B4 0x00010003 /*(PIN_OUTPUT | MUX_MODE0)(A22) SPI2_CS1 */
>;
};

mcspi2@4809A000

#address-cells =<1>;
#size-cells =<1>;
兼容="ti、AM335x-spi";
Clocks =<&mcspi2_clkctrl>;
REG =<0x4809A000 0x1000>;
interrupts =<61 0 4>;
pinmux-0 =<&mcspi2_pads>;
};

有什么我遗漏的东西吗?

您能为我提供任何帮助吗  

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

    您好、Hanmant:

    您能否分享您正在使用的 SDK 版本?  

    如果中的信息有用、请参阅以下 E2E 主题:

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/496527/how-to-enable-mcspi-clk-in-kernel


    这里似乎有一些变化,可以帮助你解决问题。

    此致!

    若苏厄

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

    您好、Josue:

    感谢您的答复。

    我没有更改任何在 u-boot 侧只有我更改 在 VxWorks 设备树文件 pinmux 配置.

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

    Hanmant,

    您是否已联系 Wind River 寻求 支持? TI 仅支持 TI SDK、不支持 Wind River 堆栈。  

    无论怎样。 如果您能找到解决方案、请告诉我。

    -若苏厄

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

    您好、Josue:

    您能否确认我配置的任何 pinmux 是否正确?

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

    您能否确认 mspi1的 ME 焊盘 pinmux 配置:

    mcspi1_pADS:mcspi1pads

    引脚设置=<
    0x17A4 0x00040000 /*(PIN_INPUT | MUX_MODE0)(A25) SPI1_SCLK.SPI1_SCLK */
    0x17A8 0x00010000 /*(PIN_OUTPUT | MUX_MODE0)(F16) SPI1_D1.SPI1_D1 MOSI*/
    0x17AC 0x00050000 /*(PIN_INPUT | MUX_MODE0)(b25) SPI1_d0.SPI1_d0 MISO */
    0x17B0 0x00010000 /*(PIN_OUTPUT | MUX_MODE0)(A24) SPI1_cs0.SPI1_cs0 */
    >;
    };

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

    Hanmant,

    我目前不能在本地尝试这个,但在我分享的线程有一些不同,特别是在 pinmux 上的上拉/下拉选项。 我建议您使用我们的 SysConfig 工具并自行进行实验。 您还可以使用 数据表手动进行再次检查:  

    -若苏厄

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

    若苏厄

    为什么会这样显示:

    /* PinMux 自动生成通用格式文件转储。 */


    /* REGISTER_ADDRESS (hex) REGISTER_VALUE (hex) BALL_NAME (string) REGISTER_NAME (string) mux_mode0_name (string)*

    0x4A0037A4 0x50000 A25 CTRL_CORE_pad_SPI1_SCLK SPI1_SCLK SPI1_SCLK
    0x4A0037AC 0x00000 b25 CTRL_CORE_PAD_SPI1_D0 SPI1_d0 SPI1_d0
    0x4A0037A8 0x00000 F16 CTRL_CORE_PAD_SPI1_D1 SPI1_D1 SPI1_D1
    0x4A0037B0 0x10000 A24 CTRL_CORE_PAD_SPI1_CS0 SPI1_cs0 SPI1_cs0

    期待的 IM  

    0x17A4 0x00040000 /*(PIN_INPUT | MUX_MODE0)(A25) SPI1_SCLK.SPI1_SCLK */
    0x17A8 0x00010000 /*(PIN_OUTPUT | MUX_MODE0)(F16) SPI1_D1.SPI1_D1 MOSI*/
    0x17AC 0x00050000 /*(PIN_INPUT | MUX_MODE0)(b25) SPI1_d0.SPI1_d0 MISO */
    0x17B0 0x00010000 /*(PIN_OUTPUT | MUX_MODE0)(A24) SPI1_cs0.SPI1_cs0 */

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

    Hanmant,

    简而言之、AM57x 中的引脚多路复用不是在 DTS 中完成、而是在 u-boot mux_data.h 文件中完成。

    请见 https://www.ti.com/lit/an/sprac44a/sprac44a.pdf、你需要使用一个 perl 脚本来将这个文件转换为有用的 u-boot 代码。

    -若苏厄