如何解决“W5500芯片在TCP_Client模式下,断电重启之后无法立即连接到服务器”的问题

Q: 芯片在TCP_Client模式下,断电重启之后无法立即连接到服务器

R: 这是由于客户端没有主动发送断开请求,造成服务器并不知道Socket已发生异常断开; 重新上电之后,芯片以相同的IP和端口连接服务器,而服务器还认为此Socket链接存在,所以拒绝芯片的立即连接。

A: 解决方案:

在芯片使用KEEP_ALIVE机制,一段时间内发送呼吸包,如果芯片没有给服务器回复,服务器则判断链接已断开,并释放Socket资源,这时就可以成功连接。如果对客户端的本地端口没有要求的话,也可以在初始化Socket的部分让端口自动+1处理。两种方式根据具体应用分析采用。

注: 有的场景不能采用端口自动+1的方式,比如电力104规约,只允许采用2404端口连接。


如有任何问题可随时留言给我们,或发送至WIZnet官方邮箱:wiznetbj@wiznet.co.kr

WIZnet官方网站:http://www.iwiznet.cn/

WIZnet官方技术服务平台(qq群):595547972

更过物联网应用,可关注WIZnet官方微信公众号:


已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页