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.

[参考译文] TMS570LS3137:144引脚 PGE 封装上的 MibSPI5只有1个片选(CS0)

Guru**** 2393725 points
Other Parts Discussed in Thread: TMS570LS3137

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1505847/tms570ls3137-mibspi5-on-the-144-pin-pge-package-has-only-1x-chip-select-cs0

器件型号:TMS570LS3137

工具/软件:

您好!

我们使用 MCU TMS570LS3137的144引脚 PGE 封装。

根据器件数据表 SPNS162C、此封装中的 MibSPI5外设仅为外部提供1个芯片选择(CS0)、而 MCU 内部最多具有4个 CS (例如、BGA 封装中的_nCS[3:0])。

我正在寻找连接2个 SPI 器件的以下方法的帮助和确认:

  • 使用 MibSPI1 CS0连接到一个 SPI 器件#1
  • 将逆变器连接到 CS0线路、并将其输出连接到 SPI 器件2
  • 要与器件1交换、请像往常一样下拉 CS0
  • 要与器件2交换、请通过选择任何其他 CS (3、2或1)来升高 CS0
  • 即使其他 CS 信号未路由到外部、MCU 也是否会允许这样做?

非常感谢!

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

    尊敬的 Chuck:

    user1949254 说:
    根据器件数据表 SPNS162C、此封装中的 MibSPI5外设对外部仅提供1个芯片选择(CS0)、而 MCU 内部最多具有4个 CS (例如 BGA 封装中的_nCS[3:0])。

    144引脚封装是正确的、MibSPI5上只有一个芯片选择线路可用。

    [quote userid="91537" url="~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1505847/tms570ls3137-mibspi5-on-the-144-pin-pge-package-has-only-1x-chip-select-cs0
    • 使用 MibSPI1 CS0连接到一个 SPI 器件#1
    • 将逆变器连接到 CS0线路、并将其输出连接到 SPI 器件2
    • 要与器件1交换、请像往常一样下拉 CS0
    • 要与器件2交换、请通过选择任何其他 CS (3、2或1)来升高 CS0
    • 即使其他 CS 信号未路由到外部、MCU 也是否会允许这样做?
    [/报价]

    我认为这不是一个好主意、因为如果需要、我们不能同时禁用这两个器件。 在任何给定的时间实例中、器件 SPI 芯片选择中的一个将正确激活?

    这可能会产生问题、在不会出现任何理想情况下、两个器件的芯片选择都可以关闭。 在任何时候、至少一个从器件需要时钟和数据。

    您可以使用另一个 GPIO 作为另一个从器件的芯片选择、而不是使用这种方法。 我是说将 MibSPI5的 CS 线路连接到从器件1、将 GPIO 连接到另一个从器件2。 您已经知道如何与正在使用 CS 线路进行操作的 slaver-1进行通信、现在如果您要与 slaver-2进行通信、那么您只需禁用 slaver-1的 CS 功能并使用 GPIO 启用 slaver-2 CS。 如果您在 GPIO 上写入低电平、它将为从器件2启用芯片选择、然后您可以继续进行通信。

    同样、如果您要与 slaver-1通信、那么您只需在 GPIO 上写入逻辑高电平、即可禁用 slaver-2 CS、然后您可以为 mibspi 启用 CS 功能。 实际上、许多客户只有在缺少芯片选择时才会使用此方法。

    --
    此致、
    Jagadish。

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

    尊敬的  Jagadish:

    感谢您的及时回复。 你上面提出的方法是我想到的第一种方法。 但是、我们可能必须通过 DMA 传输(从 MCU RAM 到 MibSPI5 TXRAM)直接开始通信、因此在传输之前启用 GPIO 是不切实际的、除非我们可以进行调整来克服这一问题...

    关于我的问题中的"CS0逆变器"方法、由于 SPI5将专用于2个从器件、 如果一个器件总是侦听 SPI 总线、并且线路上没有数据、那么可能会有什么危险? 潜在的噪声问题?

    此致、

    Chuck。

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

    尊敬的 Chuck:

    我真诚地对延迟的回应表示歉意、我休息了几天、因此没有时间再处理这个问题。

    感谢您的提示回复。 你上面提出的方法是我想到的第一种方法。 但是、我们可能必须通过 DMA 传输(从 MCU RAM 到 MibSPI5 TXRAM)直接开始通信、因此在传输之前启用 GPIO 是不切实际的、除非我们可以通过调整来克服该问题...

    您是基于 DMA 的传输正确的、GPIO 不实用。

    您仍然可以针对一个与 CS 连接的从器件轻松配置、但另一个使用 GPIO 的从器件会发生问题。

    关于我问题中的"CS0逆变器"方法、由于 SPI5将专用于2个从器件 、如果总是监听 SPI 总线、并且线路上没有数据、那么可能会有什么危险? 潜在的噪声问题?

    我的意思是、对于一些从设备、我们可能还需要在帧之间切换芯片选择、对于这些设备、我们可能会遇到一些问题、如果您没有此要求、那么没关系。

    此外、可能需要对这两种器件使用不同的 CSNR 值

    您需要考虑同时在两个器件数据输入中更改 CSNR 值。 如果您使用相同的 CSNR 值、那么您可能始终只与一个器件通信。

    另外还使用 CSHOLD 位在传输之间保持 CS 线路、否则 CS 将激活传输之间的其他器件。

    我认为这些是我们可能需要关注的事情、除此之外、我没有发现任何问题。 我的建议是最好根据您的要求创建一个原型,如果一切都正常,那么您可以去生产。

    --
    此致、
    Jagadish。