Other Parts Discussed in Thread: TMS570LS3137,
您好,我在调试EMAC过程中,发现无法接收数据,查看VIM模块,接收中断已登记,并且使能,请问这可能是什么原因呢?
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.
您好,我在调试EMAC过程中,发现无法接收数据,查看VIM模块,接收中断已登记,并且使能,请问这可能是什么原因呢?
你好,方便留一个邮箱吗?我发给您。 我之前是在TMS570LS3137上使用的EMAC模块,使用UDP通信,收发数据正常。现在我把TMS570LS3137的代码移植到TMS570LC4357上,使用Wireshark抓包,EMAC模块只能发数据,收不到任何数据,我没有使用LWIP协议栈,麻烦您这边帮忙看看,谢谢!
你好,多谢回复。
针对第一点:已在pinmux中选择MDIO signals,见下图:
针对问题2,在MPU setting中,之前可能没有使用cache write-through,我在main之前加上了(下面标红色的),经测试EMAC还是收不到数据:
_mpuInit_();
_mpuSetRegionTypeAndPermission_(MPU_NORMAL_OIWTNOWA_SHARED,MPU_PRIV_RW_USER_RW_EXEC);
_cacheEnable_();
__TI_auto_init();
main();
exit();
此外,有个奇怪的问题,我有2个版本的代码,第1个版本未使用LWIP协议栈,目前收不到EMAC的数据;第2个版本在EMAC初始化函数(EMACInit)之后,又使用了LWIP协议栈的初始化函数:lwIPInit,其他的都一样,debug调试发现就可以收到数据了,这两个版本的代码仅EMAC模块不同,其他的模块pinmux,MPU之类的都是一样的。
麻烦再帮忙看看,感谢!
我觉得应该不是硬件的问题,因为我使用LWIP协议栈就正常,但我们的项目不允许使用LWIP协议栈
第2个版本在EMAC初始化函数(EMACInit)之后,又使用了LWIP协议栈的初始化函数:lwIPInit,其他的都一样,debug调试发现就可以收到数据了,这两个版本的代码仅EMAC模块不同,其他的模块pinmux,MPU之类的都是一样的。
这个API初始化了EMAC以及EMAC控制模块。EMAC控制模块被reset,CPPI RAM被清空。并且,所有中断被禁用。这个API没有使能EMAC的任何中断或操作。