OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5692|回复: 11

多个freemodbus tcp连接502端口,热插拔后每次会有一个端口连接不上问题

[复制链接]

1

主题

5

帖子

0

精华

初级会员

Rank: 2

积分
65
金钱
65
注册时间
2020-5-27
在线时间
13 小时
发表于 2021-12-8 10:47:39 | 显示全部楼层 |阅读模式
20金钱
在freertos+lwip+freemodbus tcp的系统中,可以有三个tcp调试连接502端口(这边用的modbus poll连接,板子作为服务器)。每次拔掉电脑的网线时,当modbus poll显示writte error时,接上网线,每次会有一个tcp连接不上,当三次之后就所有的都连接不上了。我在porttcp.c的源码中创建tcp后开启了TCP_KEEPALIVE,也没有成功。请求大神解答

最佳答案

查看完整内容[请看2#楼]

将freemodbus的源码的porttcp.c中在accept()函数前加入使能的功能,就解决了。是我放的位置不对。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

1

主题

5

帖子

0

精华

初级会员

Rank: 2

积分
65
金钱
65
注册时间
2020-5-27
在线时间
13 小时
 楼主| 发表于 2021-12-8 10:47:40 | 显示全部楼层
将freemodbus的源码的porttcp.c中在accept()函数前加入使能的功能,就解决了。是我放的位置不对。
回复

使用道具 举报

1

主题

5

帖子

0

精华

初级会员

Rank: 2

积分
65
金钱
65
注册时间
2020-5-27
在线时间
13 小时
 楼主| 发表于 2021-12-8 10:51:55 | 显示全部楼层
我怀疑是tcp断开后没有资源得到及时的释放,重启可以恢复过来。但是代码里都有tcp_close()的
回复

使用道具 举报

9

主题

81

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
411
金钱
411
注册时间
2018-6-6
在线时间
125 小时
发表于 2021-12-9 19:09:13 | 显示全部楼层
楼主板子用的freemodbus 多个客户端怎样连接到板子的?
回复

使用道具 举报

1

主题

5

帖子

0

精华

初级会员

Rank: 2

积分
65
金钱
65
注册时间
2020-5-27
在线时间
13 小时
 楼主| 发表于 2021-12-16 10:46:41 | 显示全部楼层
WadeWww 发表于 2021-12-9 19:09
楼主板子用的freemodbus 多个客户端怎样连接到板子的?

lwip里有个配置tcp连接数量的宏定义,我写的10个,不过只能连三个
回复

使用道具 举报

9

主题

81

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
411
金钱
411
注册时间
2018-6-6
在线时间
125 小时
发表于 2021-12-29 09:39:41 | 显示全部楼层
swheaven 发表于 2021-12-16 10:46
lwip里有个配置tcp连接数量的宏定义,我写的10个,不过只能连三个

就只用了一个协议栈吗?可以把源码分享学习吗
回复

使用道具 举报

9

主题

81

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
411
金钱
411
注册时间
2018-6-6
在线时间
125 小时
发表于 2021-12-29 09:58:45 | 显示全部楼层
swheaven 发表于 2021-12-16 10:46
lwip里有个配置tcp连接数量的宏定义,我写的10个,不过只能连三个

我移植了freemodbus协议栈,然后在lwip里面也配置了连接数量,但是用modbus poll连接时只能有一个设备接入,再开客户端,无法连接
回复

使用道具 举报

0

主题

4

帖子

0

精华

新手上路

积分
30
金钱
30
注册时间
2022-2-7
在线时间
5 小时
发表于 2022-2-12 10:24:45 | 显示全部楼层
学习学习一起学习
回复

使用道具 举报

1

主题

8

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
285
金钱
285
注册时间
2019-11-22
在线时间
59 小时
发表于 2022-3-24 10:33:33 | 显示全部楼层
想问下楼主 如果三个客户端同时大量访问modbus poll,板子能处理过来吗?
回复

使用道具 举报

1

主题

5

帖子

0

精华

初级会员

Rank: 2

积分
65
金钱
65
注册时间
2020-5-27
在线时间
13 小时
 楼主| 发表于 2022-5-13 13:50:11 | 显示全部楼层
肥嘟嘟的王二妞 发表于 2022-3-24 10:33
想问下楼主 如果三个客户端同时大量访问modbus poll,板子能处理过来吗?

这个没有测试过,理论上应该没问题。我的是三个去接收一样的数据的。只读不写
回复

使用道具 举报

10

主题

50

帖子

0

精华

高级会员

Rank: 4

积分
524
金钱
524
注册时间
2019-7-3
在线时间
329 小时
发表于 2022-7-13 15:53:35 | 显示全部楼层
拔掉网线后,需要关闭端口或者做什么操作吗?我也是拔网线第一次插上正常,第二次就死机了。。
回复

使用道具 举报

0

主题

6

帖子

0

精华

新手上路

积分
21
金钱
21
注册时间
2020-9-6
在线时间
3 小时
发表于 2022-9-23 15:58:54 来自手机 | 显示全部楼层
是用的F103板子吗?可以分享一下源码学习吗?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-24 14:32

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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