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.

[参考译文] CC3235MODSF:在 SPI 主机模式下、启动 TX 和 RX 通道以连接到 DMA、并在调用 sl_send 后卡住。

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

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/1167327/cc3235modsf-in-spi-host-mode-start-the-tx-and-rx-channels-to-connect-to-dma-and-get-stuck-after-calling-sl_send

器件型号:CC3235MODSF
Thread 中讨论的其他器件: CC3200

大家好、

以下是客户的请求:

 使用 CC3235MODSF 进行开发时、SPI 采用主模式、数据宽度为两个字节、 TX 和 Rx 通道都连接到 DMA (双 DMA 通道)、在 tirtos 系统上运行 WiFi-AP 模式。 调用 sl_Recv 若要通过 DMA 接收主机数据 并 通过 SPI 进行传输、则 SPI DMA 接收到的数据将通过 SL_Send 发送到主机。

客户的问题是 、当他发送和接收的数据包很小、没有问题、整个过程很顺利。 当数据增加到一个数据包的1460字节(DMA 大小设置为1460字节)时、SPI 传输正常、但 SPI RX DMA 在 接收到一个1460的数据包然后调用 sl_Send 后卡住。  该程序一直在等待接收第二个1460的数据包。 SPI-RX-DMA 的第二个触发器没有响应、SPI 不工作。  测试完成后、只要不调用 sl_Send、SPI RX DMA 就可以顺利工作。 sl_Send 函数正在阻断和等待、 这意味着他在确保 sl_Send 已发送1460个字节后开始调用 SPI RX DMA、但结果仍然被卡住。

在使用 FreeRTOS 的 CC3200上、同样的代码没有问题。 如何处理?

您可以帮助检查此案例吗? 谢谢。

此致、                                                             

Nick     

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

    您好、Nick、

    我需要进一步澄清。 sl_send 和 sl_recv 是 WiFi 命令。 您是否说此数据通过 WiFi 或通过 SPI 硬连线发送到主机?

    您能否提供一个问题的示例代码、以便我对其进行调试并了解发生了什么?

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

    您好、Sabeeh、

    SPI 通过硬接线 连接到另一个器件、CC3235是主器件;然后建立 TCP 套接字、使用 SimpleLink、并将 CC3235用作 AP。

    实现的功能是周期性地接收 SPI 数据并 通过 sl_send 将其发送到站点、这 是计算机上的一种网络调试工具。  然后 、遇到的错误是他在上面描述的错误

    此致、                                                             

    Nick     

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

    您好、Sabeeh、

    我是否可以知道此问题是否有任何更新?

    此致、                                                             

    Nick    

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

    为什么 SPI DMA 等待1460字节的第二个块? sl_send 是否存在错误?

    如果客户删除了 sl_send、会发生什么情况? SPI 能否可靠地接收数据? 在我看来、好像中断没有在某个位置设置。