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:HDK LwIP 示例。 EMACTxIntHandler 挂起

Guru**** 2473260 points
Other Parts Discussed in Thread: TMS570LC4357

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/982137/tms570lc4357-hdk-lwip-example-emactxinthandler-hangs

器件型号:TMS570LC4357

我在 TMS570LC4357 HDK 上实施了 QJ Wang 的 LwIP FreeRTOS 示例、并且遇到了难以解决的问题。 我必须要为建筑项目进行设置

  • 修改第1760行的 HL_EMAC.c 以启用 EMACTxIntISR 和 EMACRxIntISR
  • CD ~/ti/Hercules && git 克隆 https://git.ti.com/git/hercules_examples/hercules_examples.git
  • 更新了${workspace_loc:/${ProjName}/示例和${workspace_loc:/${ProjName}/lwip-1.4.1目录以指向~/ti/Hercules/hercules_examples...

我可以看到

Hercules 微控制器
德州仪器
(TI)小端字节序器件
初始化以太网(DHCP)
调试-获取 PHY ID ...成功
调试-使 PHY 处于活动状态...成功
调试-获取 PHY 链路状态...成功
调试-设置链接...成功 

程序在第1538行的 EMACTxIntHandler 中挂起:

while ((((EMACSwizleData (CURR_BD->FLAGS_pktlen))和 EMAC_BUF_DESC_ONER)== EMAC_BUF_DESC_OWNER
){
} 

我已经阅读过一些关于这个问题的文章,但到目前为止,这些文章没有提供帮助。

https://e2e.ti.com/support/microcontrollers/hercules/f/312/t/551826?FreeRTOS-EMAC-on-RM57lx-launchpad-stuck-into-while-EMACSwizzleData-curr-bd-flags-pktlen-EMAC-BUF-DESC-OWNER-EMAC-BUF-DESC-OWNER-

https://e2e.ti.com/support/microcontrollers/hercules/f/312/t/445955?while-EMACSwizzleData-curr-bd-flags-pktlen-EMAC-BUF-DESC-OWNER-EMAC-BUF-DESC-OWNER-

据我所知  这个课题上发表了不少有用的文章,可能会提供一些意见。 我的项目已附加。

e2e.ti.com/.../TMS570LC4357_5F00_FreeRTOS_5F00_LWIP.zip

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

    您好!

    在不使用 FreeRTOS 的情况下、示例(lwip 演示或 lwip 活动网络服务器)是否可以在您的电路板上正常工作? 如果正常工作、引脚多路复用和器件配置应该正常。

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

    您好!

    我只需运行之前与您共享的 FreeRTOS_lwip 示例。 它可以在我的 DK 上正常工作、没有任何问题。 任务1和任务2都可以工作:两个 LED 闪烁、内容显示在 Web 上:

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

    感谢 。 我必须是问题的最根本。 您在 e2e.ti.com/.../799670上共享的项目 (7178.TMS570LC4357_FreeRTOS_LWIP.7z)与 ti git 服务器上的 lwip v00.04.00不兼容。 具体而言、 EMACTxIntISR 和 EMACRxIntISR 的 VIM RAM 分配需要重命名为 EMACCore0TxIsr 和 EMACCore0RxIsr。 这解释了为什么从未调用 ISR、 而 EMACTxIntHandler 挂起在第1538行中。