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.

[参考译文] TM4C129EKCPDT:如何实现长 SPI 帧

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/843238/tm4c129ekcpdt-how-to-realize-long-spi-frame

器件型号:TM4C129EKCPDT
主题中讨论的其他器件:TM4C123

您好!

我们正在尝试使 MCU 与3个 LED 矩阵驱动器芯片相连接。 MCU 需要支持48位(16*3=48)长 SPI 帧(驱动器芯片以菊花链形式连接在 SPI 上、每个芯片为16位宽)。 当我说48位帧时、我是说我们需要 SSInFss 信号在48位帧传输期间变为低电平、在传输结束后变为高电平。

QSSI 模块是否能够执行此操作?

谢谢、

天列

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

    [引用用户="Tianlei Zhang ]MCU 需要支持48位(16*3=48)长 SPI 帧。   QSSI 模块是否能够执行此操作?[/报价]

    一般而言-您的答案是"是"-提供以下指南:

    • 使用(更复杂/功能更强)的"QSSI 模块"证明"超杀"-建议您使用更标准的(SPI/"SI")模块
    • 请勿使用'SInFss'信号或引脚(*)-而是使用另一个 GPIO 引脚-您可以在整个(整个) 48位序列中使用'Command to Logic low'(命令为逻辑低电平)(并保持该状态)
    • 您所描述的 LED 矩阵驱动器(通常)将接受"轻延迟"-在您的"多 SPI 传输"之间必然会发生。
    • SSI 时钟信号连接应尽可能短且直接-并避免传递到"高电流和/或高数据速率信号或走线"附近。

    (*) 如果您将 SPI 的"候选/默认值" SPInFss 引脚(而不是)配置 为 GPIO 输出 -该引脚可能完全符合您的目的...  (在整个48位流中、它易于驱动"低"电平)

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

    尊敬的 Tianlei:

     是的,可以使用 SSIAdvFrameHoldEnable()。 请注意,只有当您处于高级模式并调用 SSIAdvModeSet()时,才能使用 SSIAdvFrameHoldEnable()。  

    。 请参阅下面的内容。  

    //在传输期间保持 FSS 引脚为低电平。 将直接控制 FSS
    //由 SSIAdvDataPutFrameEnd()提供。 如果调用 SSIAdvDataPutFrameEnd 到
    //将数据写入 FIFO,相应数据的 FSS 将被取消置位。
    SSIAdvFrameHoldEnable (SSI0_BASE); 

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

    您好 CB1和 Charles、

    感谢您的回复、信息非常有用。

    天列

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

    您好、Charles、

    无论是员工还是我(曾)都没有(曾 )"了解或知道"(假定为合理的新) API 特性/功能。

    请回想一下、此海报旨在进行"48位长" SPI 交易。   "高级模式"和 该特殊/添加的"帧保持"功能是否"在海报的整个交易中持续?"   (再次为48位)  BTW -如果是-此函数的"保持?"有任何限制吗?

    似乎、"重要附加工作" (和注意事项)-当与简单得多的"GPIO 清除和设置!"进行对比时

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

    您好 CB1、

     具有帧保持功能的高级模式仅适用于 TM4C129 QSSI。 它可以根据需要保持低电平、直到您使用 SSIAdvDataPutFrameEnd 停止 最后一个帧。   它相对于 GPIO 的好处是 FSS 的失效可以在帧之间短至一个 SPICLK。 对于 TM4C123、GPIO 方法是唯一一种您很好地建议的方法。  

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

    谢谢 Charles、这是我们团队的新知识。

    我们的"深思熟虑/授标" 海报使用的 LED 驱动器芯片(通常)被广泛接受。   (到达"常见集群"中的 SPI 数据 应该"不会产生任何问题"-但该新/高级"SPI"功能的"元素"可能会更麻烦-并且"延长(连续) SPI 数据传输之间的时间?"   (在 FSS 线路保持低电平时、所有这些都是如此)   

    员工甚至会回顾您的几个"过去"帖子、并将此"连续 SPI 传输之间的延迟"作为(有时)问题提及。  (我们相信 MCU 正在指挥高精度 ADC、并且您提醒(那个)海报"可能存在困难"、因为 SPI 时钟和数据"已达到"标准...)   当然,在一个月左右的时间里,我们遇到了这个(确切的)问题,并通过(光荣的)“位拆裂”解决了这个问题。