发 帖  
原厂入驻New
[问答] 请问STM32F107+LWIP如何检查tcp通讯断开并重新连接?
3291 TCP通讯 西门子S71200 LabVIEW tcp
分享
目前本人整在使用STM32F107+LWIP+dp83848进行tcp通讯,如何判断网络已经连接成功或者网络是断开的?怎么样能够使STM32F107随时接入以太网都可以通讯
0
2019-1-3 09:46:59   评论 分享淘帖 邀请回答
33个回答
楼上正解,不过我是心跳超时,加状态判断,有时候状态对的,但实际挂了,所以要看你发出的信息是否有正确回应,lwipqq群373931091
2019-1-3 16:58:48 评论

举报

相同的问题,今年才遇到
2019-1-3 17:08:57 评论

举报

对于TCP来说, 对端关闭TCP会发送断开连接的报文的        tcp_recv()注册一个回调函数,判断接收缓存指针是否为NULL,就可以立马判定对端TCP连接是否断开  
2019-1-3 17:14:53 1 评论

举报

1 条评论
讨论:客户端网线拔出在重新插上连接问题?
通过判断PCB连接状态和心跳来判断是否连接服务器
if((pcb_t->state!=ESTABLISHED)||(ethHeart[0]==0))
{       
       。。。。延时10S
      tcp_abandon(pcb_t,1);//断开
        tcp_close(pcb_t);//关闭
        TCP_TEL_Init();//重新连接
}
没有插网线的话 10S重新连一次!
实现也可以 不知道有没有什么问题?
2019-1-3 17:27:55 评论

举报

adltom 发表于 2019-1-3 18:56
对于TCP来说, 对端关闭TCP会发送断开连接的报文的        tcp_recv()注册一个回调函数,判断接收缓存指针是否为NULL,就可以立马判定对端TCP连接是否断开  

正确,赞一个
2019-1-3 17:40:02 评论

举报

下载一个看看,正好遇到这样的问题!
2019-1-3 17:45:16 评论

举报

你好。最近工作碰到了网线正常连接但是网络不通的情况,请问你有什么高见吗?!!
2019-1-3 17:52:27 评论

举报

2019-1-3 17:59:25 评论

举报

新手,没看懂,但是问题一样,有没有大神解释详细一点
2019-1-3 18:09:21 评论

举报

1.检查网线是否插入,直接读取PHY状态寄存的link状态值
2.检查TCP是否断开,如果你是客户端,则netconn_recv()会有返回值,根据返回值来判断,如果你是服务端,如果有客户端跟你连接,同样netconn_recv也会有对应的返回值来判断

目前我就是这样判断,至于网线检测,其实在系统加载的时候,初始化的时候就会去读PHY状态寄存器。你可以去看看
2 条评论
请问裸跑lwip该如何操作呢
我是来看附件的  怎么看附件

撰写答案

你正在撰写答案

如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。

高级模式
您需要登录后才可以回帖 登录 | 注册

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。 侵权投诉
12
我要提问
关闭

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

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