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.

[参考译文] TMS570LS1224:具有可变 RX 长度的 SPI RX DMA

Guru**** 2611705 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/769706/tms570ls1224-spi-rx-dma-with-variable-rx-length

器件型号:TMS570LS1224

尊敬的所有人:  

我想使用 DMA 在 SPI RX 上接收一个长块字节。 我想知道的是如何使用长度可变的 DMA?  

是否可以使用长度可变的 DMA?

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

    如果要更改传输大小、需要在 ITCOUNT 寄存器中重新编程元素数量和帧计数。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    [引用用户="QJ Wang ]Vikram、

    如果要更改传输大小、需要在 ITCOUNT 寄存器中重新编程元素数量和帧计数。

    [/报价]

    感谢你的答复。 这是否导致重新初始化 DMA? 或者,我是否可以不重新初始化 DMA 而只通过更改 ITCOUNT 寄存器来执行此操作?  

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

    传输计数在 DMA 控制数据包中定义。 如果通道处于挂起状态、改变通道控制包的内容将清除相应的挂起位。 如果活动通道的控制数据包发生更改、则该通道将立即在仲裁边界处停止。 当同一通道再次被触发时、它将从新的控制数据包信息开始。

    当再次请求同一通道时、状态机将再次启动、只读取具有新传输计数的主控制数据包。 您无需重新初始化 DMA。