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.

[参考译文] AM3358:AM3358

Guru**** 2553420 points
Other Parts Discussed in Thread: AM3358

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/959602/am3358-am3358

器件型号:AM3358

您好!

我的设计需要将 am3358连接到6个 SPI 从器件、我尝试使用 am3358内的 McSPI 模块、我的图随附于此、您能不能帮助确认 McSPI 可以支持这种设计吗?

谢谢、

锂离子电池

e2e.ti.com/.../AM3358-McSPI-design.docx

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

    锂离子电池

    您已将 SPI1配置为标准双通道双向配置。

    对于 SPI0、标签 SPI0_CS0和 ARM_GPIOA_SPI0_CS0以及 SPI0_CS1和 ARM_GPIOB_SPI0_CS1不清楚。 您能否说明您正在尝试/预期如何处理 CS 信号?  全部由软件控制?  

    看起来器件2-5都是单向的。 与其尝试控制 SPI0_D0的方向、最好将所有发送器连接到 D1、将所有接收器连接到 D0 (如果有道理、也可以相反)。 这样、您应该能够使用多通道功能、同时通过使用 GPIO 引脚的软件生成(4)个 CS 信号。  

    保罗

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

    尊敬的 Paul:

    感谢您的建议。

    SPI 从器件#2和#3不是"单向"、它们是单引脚 D0 (半双工)上的"输入和输出"。 只有#4和#5器件为"单向"、AM3358使用 SPI0_D1将数据输出到两个器件。

    2.我使用标准"SPI0_CS0"作为芯片选择信号来控制器件#2、我们的固件工程师将对一些代码进行编程、以便从"ARM_GPIO_A"引脚生成类似的"CS"信号来控制器件#3、所有这些都由软件控制。

    器件#2和器件#3是完全独立的(在时序和内容方面)、它们只共用"SPI0_SCK"、"SPI0_D0"总线接口、但使用不同的"SPI0_CS0"和"ARM_GPIOA_SPI0_CS0"芯片选择信号将它们分开。 在器件#4和#5上也需要考虑相同的设计注意事项。

    您认为我的设计适用于 AM3358中的 McSPI 模型吗(因为设计中有6个 SPI 从器件、McSPI 可以处理如此多的从器件)?

    谢谢、

    锂离子电池

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

    好的、 您提供的图表暗示#2是发射的、#3是接收的。

    每个 SPI 模块设计用于处理4个器件(4个通道)。 AM335x 器件中的实现仅支持 CS0和 CS1、CS2和 CS3、未输出引脚。  但是、正如您在实现中所指出的、软件可以使用 GPIO 实现 CS 信号。 但是、您不必使用这些通道即可支持多个器件。   

    以下配置可能更适合您的用例。

    SPI0_D0成为器件2和3的半双工 TX/Rx 以及器件5的 TX。   SPI0_D1是来自器件4的 Rx。  

    S/W 将控制 CSx 以及 SPI0_D0的方向控制。

    只要在从器件4接收数据时禁用 SPI0_D0驱动器、甚至可以将器件2和3连接到 SPI0_D1引脚。  

    必须对其进行原型设计以验证功能器件2和3。

    保罗