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.

[参考译文] TMS570LC4357:TMS570LC4357 与 PHY DP83640 结合使用时、协议栈为 LWIP、可以接收并正常处理网络数据包、但不能

Guru**** 2652535 points

Other Parts Discussed in Thread: TMS570LC4357, DP83640

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1587674/tms570lc4357-the-tms570lc4357-when-combined-with-the-phy-dp83640-with-the-protocol-stack-being-lwip-can-receive-network-packets-and-process-them-normally-but-it-cannot-s

器件型号: TMS570LC4357
主题: DP83640 中讨论的其他器件

TMS570LC4357 与 PHY DP83640 结合、协议栈为 LWIP。 它可以接收网络数据包并正常处理这些数据包、但无法将它们发送出去。
在调试过程中、未发现明显的异常。 发送时、发送描述符是在 TX0DP 之后写入的、并检查描述符的所有者标志是否已被清除以及 EOQ 标志是否已设置。 但是、无法在网络上捕获发送的数据包。
硬件正在使用中。 您能否提供有关如何解决软件问题的建议? 谢谢你

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

    您好、

    清除 Owner 标志并设置 EOQ(队列结束)标志时、这表示 EMAC 已处理描述符并到达描述符队列的末尾。 关键问题是您需要通过写入 TXHDP 寄存器来手动重新启动发送队列。

    当发送描述符中设置 EOQ 标志时、EMAC 已到达描述符链的末尾并停止处理。

    您可以尝试以下操作:

    // After writing descriptor to TX0DP, check completion
    if (descriptor->flags & EOQ_FLAG) {
        // Queue has stopped - must restart
        // Write the next descriptor address to TXHDP
        EMAC_REGS->TX0HDP = (uint32_t)next_descriptor;
    }

    --
    此致、
    Jagadish。