LWIP移植成功了

2020-01-01 17:34发布

成功移植lwip1.3.1 1.3.2 1.4.1,裸机能跑tcp客户端和服务器。
开心之余,又有些问题需要请教了,lwip里面如何处理断线重连的问题?

下面是我实验的现象:
我在裸机上使用lwip,tcp做了服务器和客户端,在连接后把网线拔掉,tcp_poll函数还是会被执行的,这时候把网线插上(还没出现abort错误),需要重新连接(端口没变,原连接已经没反应了),连接后上一次连接的pcb仍然存在,这时候会发现轮询时候有两个pcb连接在运行。等了好几分钟后(关闭了保活设置)第一个pcb连接出现连接错误,自动断开。。。
这两个pcb占用同一个端口不会产生冲突吗?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
100条回答
xhyzjiji
2020-01-07 05:12
落叶知秋 发表于 2013-8-28 19:41
请问楼主,裸系统移植LwIP-1.3.2后,要升级过度到1.4.1版本,有哪些要注意的地方啊?
用TI的官方例程里的1. ...

1.4.1将tcp_write等一些函数进行了改动,但process基本没变,但有一点需要注意,是需要手动写一个sys_now函数的函数体,尽管没有用操作系统,也需要写,这个与超时,连接计时有关。
u32_t sys_now(void){
        return system_time;
}
在硬件定时器中对其进行计时操作即可。其他跟1.3.2配置没有太大改变。

一周热门 更多>