请选择 进入手机版 | 继续访问电脑版
查看: 971|回复: 2

[求助] 如何正确使用LWIP

[复制链接]

该用户从未签到

27

主题

111

帖子

0

中级会员

Rank: 3Rank: 3

积分
449
最后登录
2024-3-29
发表于 2021-2-26 17:06:26 | 显示全部楼层 |阅读模式
现状:简单的修改例程,在两块开发板上,一块用ethernet_output发送数据,另一块用ethernetif_linkinput接收数据,这样可以收发数据。
问题:实际运用时肯定没这么简单,所以想咨询一下,实际中,怎么运用LWIP实现开发板与另一端(例如PC)的数据收发,大概的思路和流程讲下就好,先行谢过!
回复

使用道具 举报

该用户从未签到

648

主题

6301

帖子

0

超级版主

Rank: 8Rank: 8

积分
19555
最后登录
2024-3-29
发表于 2021-3-1 10:07:36 | 显示全部楼层
楼主你好!
如果想具体了解LWIP的数据运行情况,我建议你可以去看下野火出的一本书:
[野火]《LwIP应用开发实战指南—基于野火 i.MX RT系列开发板》
讲的还是比较详细的。
关于代码,你可以参考官方的SDK lwip相关代码。
回复 支持 反对

使用道具 举报

该用户从未签到

27

主题

111

帖子

0

中级会员

Rank: 3Rank: 3

积分
449
最后登录
2024-3-29
 楼主| 发表于 2021-3-4 10:46:18 | 显示全部楼层
小恩GG 发表于 2021-3-1 10:07
楼主你好!
如果想具体了解LWIP的数据运行情况,我建议你可以去看下野火出的一本书:
[野火]《LwIP应用开发 ...

版主你好,目前我在实现TCP客户端的发送和接收时,遇到一些情况:

(1)情况一:循环发送100次的20字节数据,调试发现在第74次才发送出数据,且抓包发现是先发送一个20字节数据,再发送1460字节的数据,这是什么原因呢?(每次发送都会有tcp_out,是Nagle算法的影响吗?)

我的解决方案:调用tcp_nagle_disable()函数,此时不会出现上述情况,但是会受到TCP_SND_QUEUELEN的限制,SDK中默认为18,即发送超过18次,就会出现ERR_MEM错误。

(2)情况二:仍然在禁止nagle算法时,连续10次发送1000字节数据,此时只能成功发送出4次,即4000字节。(暂没解决方案)

请问版主知道原因吗?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /4 下一条

Archiver|手机版|小黑屋|恩智浦技术社区

GMT+8, 2024-3-29 23:46 , Processed in 0.117187 second(s), 20 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表