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.

[参考译文] TMS570LS1227:当 SPI 从器件使用 DMA 发送数据时发生移位

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1243685/tms570ls1227-shifts-occur-when-the-spi-slave-sends-data-using-dma

器件型号:TMS570LS1227

大家好、

通过将 SoC 用作 SPI 主机、以20ms 的间隔一次性读取128个字节的数据。 TMS570LS1227的 SPI4是一个从器件、使用 DMA 进行具有1个 DMA 元素数量和128帧的数据传输。  

问题:在 TMS570中定义了一个要发送的128字节的数组、如果数组内容保持不变、SPI 主机可以连续正常读取从机数据。 但是、当分配改变了 SPI 从站阵列的内容时、SPI 主机读取的内容将被移位。  

DMA 启动后、SoC 的 SPI 主机可以连续正常读取数据、而无需 TMS570 SPI 从器件对阵列进行分配更改、如图所示:

下图显示了从 SPI 主机程序启动开始算起一段时间内从 SoC SPI 主机程序读取的数据、此时 TMS570 SPI 从器件在 DMA 启动后对阵列的第四个字节进行分配更改为:  

下图显示了在 SPI 双通信程序运行一段时间(在此期间、从器件发送数据字节4仍分配有时序变化)后、SoC SPI 主机程序读取的从器件数据会发生移位:  

在循环或 DMA 帧传输完成中断中、从从器件分配的阵列是不可避免的。  

您能帮助检查这个问题吗? 谢谢。

此致、

切里

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

    您好、Cherry:

    我已开始处理此线程、并将尽快提供更新。

    --
    谢谢。此致、
    Jagadish。

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

    您好、Cherry:

    为延误道歉

    Unknown 说:

    我对这个问题感到困惑、

    SoC 作为 SPI 主机的含义是、PC 有一些驱动程序将其 USB 端口用作 SPI 吗? 您是否将任何 USB 转 SPI 适配器连接到 PC?

    如果是、请提供有关它的更多详细信息。

    Unknown 说:
    但是、当赋值改变 SPI 从站阵列的内容时、SPI 主机读取的内容将被移位。  [/报价]

    我还对术语分配更改感到困惑;您能否详细说明您在处理数据?

    此外、我可以获得 从属器件的完整项目吗?

    --

    谢谢。此致、
    Jagadish。