STM32/STM8技术william hill官网
直播中

任黎平

7年用户 185经验值
私信 关注
[问答]

请问STM32F107+LWIP如何检查tcp通讯断开并重新连接?

目前本人整在使用STM32F107+LWIP+DP83848进行tcp通讯,如何判断网络已经连接成功或者网络是断开的?怎么样能够使STM32F107随时接入以太网都可以通讯

回帖(34)

h1654155275.5741

2019-1-3 13:14:03
回复第 14 楼 于2013-04-03 15:07:09发表:
 我的解决过程:
(提示:看懂附件TCP状态图)
1.检查TCP是否断开:if(pcb->state==CLOSED){}
2.(可以不用试试)关闭之前的pcb:tcp_abort(client_pcb);
3.重新连接TCP:tcp_client_connect();
 

举报

王育来

2019-1-3 13:33:11
回复第 15 楼 于2013-06-28 09:52:55发表:
 我是来看附件的~我也来看看
 
举报

姚伟达

2019-1-3 13:51:05
貌似uip协议栈也是这样处理的
举报

康桃花

2019-1-3 13:58:32
 我也想看一下附件,最近遇到了这个问题
举报

刘斯宁

2019-1-3 14:08:55
 大家都搞定了吗。。。
举报

张嘉

2019-1-3 14:19:25
我是看附件来得
 
举报

王聪

2019-1-3 14:35:35
我最近也在学习LWIP,菜鸟一枚调板子调不通(┳_┳)...网口接不到数据,时钟波形也不是方波
举报

周梦斌

2019-1-3 14:45:52
试着做做!
举报

郝思雨

2019-1-3 14:55:22
回复第 14 楼 于2013-04-03 15:07:09发表:
 我的解决过程:
(提示:看懂附件TCP状态图)
1.检查TCP是否断开:if(pcb->state==CLOSED){}
2.(可以不用试试)关闭之前的pcb:tcp_abort(client_pcb);
3.重新连接TCP:tcp_client_connect();
我正找这个问题
 
举报

李长宝

2019-1-3 15:04:06
回复第 17 楼 于2013-07-17 08:26:02发表:
亲,在哪里添加if(pcb->state==CLOSED)的语句,我单步调试,在拔掉网线后,tcp_connect()函数后,pcb->state的状态是SYN_SENT,但是它不调用回调函数。。。。。 
回复第 14 楼 于2013-04-03 15:07:09发表:
 
 我的解决过程:
(提示:看懂附件TCP状态图)
1.检查TCP是否断开:if(pcb->state==CLOSED){}
2.(可以不用试试)关闭之前的pcb:tcp_abort(client_pcb);
3.重新连接TCP:tcp_client_connect();
 


 
举报

张琼

2019-1-3 15:15:02
亲,我也碰到这个问题,你解决了吗?我目前能检测出网线断开,但是其他原因造成的TCP连接不对的问题,我还解决不了。
举报

董润

2019-1-3 15:24:11
路过的,学习一下
举报

郭武莱

2019-1-3 15:37:52
你这个问题解决了吗?
举报

代攀

2019-1-3 15:53:09
楼主,你这个问题里tcp通信断开是指通信断而网线没有断开?如果是这样的话14楼的办法可行,但是如果是网线断开后重新插上呢?纠结于这个问题。
举报

唐行轲

2019-1-3 16:05:17
不回复还不能下载附件?
举报

贺服窍

2019-1-3 16:12:04
我也想看一下附件,最近遇到了这个问题
举报

刘萍

2019-1-3 16:20:47
希望能解决
举报

杨军

2019-1-3 16:34:40
感謝你,正遇到tcp client的問題,可以參考。
举报

王静

2019-1-3 16:47:49
 楼主  你说你解决了 可不可以发我一份(wsxiong-110@163.com) 谢谢!怎么实现上电初始化完成后插入网线 也能正常通信?
举报

更多回帖

发帖
×
20
完善资料,
赚取积分