RT-Thread 中龙芯1C的网络lwip升级到2.1.0

RT-Thread 龙芯1C(智龙开发板)的网络lwip升级到2.1.0

1. 硬件平台

智龙开发板V3.42 。

2. 软件平台

RT-Thread 4.0.0, 其中LWIP 2.1.0 。

3. 问题描述

一直使用 RT-Thread 软件平台,配套lwip1.4.1。 在调试过程中, RTT 组件丰富,尤其是一些小工具,如 ping 、 tftp 进行文件传输。 想使用这些小工具时发现 lwip1.4.1 没有apps目录,不能够使用以上工具。 考虑升级至 lwip 2.1.0。

在 env 中,勾选 lwip 2.1.0 后, 发现 PC 机能 ping 通开发板,而开发板不能 ping 通PC机。如图1 所示。
图1 PC 机能 ping 通开发板

查找原因,用 netstat (msh) 或者 list_if(finsh) 查看当前网络,发现当前的网络没有 link_up 上。 将网络换回原来的 lwip 1.4.1 ,再次查看网络,那时是连接上的。
如图2所示。
图2 RTT-lwip升级两个版本下的网络状态对比.png

lwip 升级到2.1.0后, 打开 netutils 中的 ping , 从开发板 ping PC机不成功,TFTP也不成功,均提示 no route 。但是PC机 ping 开发板成功的. 在 env 打开 调试信息 后再进行ping, 显示的具体信息如图3所示。

图3  lwip 升级到2.1.0后 ping 不成功的提示

4. 解决方法

按照 RTT 官司方论坛,https://www.rt-thread.org/qa/forum.php?mod=viewthread&tid=8048,对 eth 的网络驱动进行修改, 在 synopGMAC.c 文件的最后添加语句:

    eth_device_init(&(eth_dev.parent), "e0");

    eth_device_linkchange(&eth_dev.parent, RT_TRUE);   //添加的语句

如图4所示。

图4 RTT-lwip升级添加语句

5. 检测结果

修改代码后,再次连通网络,并进行 ping 操作如图5,6所示。

图5 RTT-lwip升级修改后查看网络状态

图6 开发板ping通PC机

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

南工孙冬梅

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值