找回密码
 立即注册
收起左侧

tcpsocket

2
回复
4535
查看
[复制链接]
累计签到:4 天
连续签到:1 天
来源: 2014-2-14 10:14:59 显示全部楼层 |阅读模式
现在情况是这样:传感器厂家做了一个八通道采集板,能同时挂上8个传感器。通道板上还
有一个485接口,同时连接着电脑的串口以及dtudtu已经连接服务器)。服务器通过DTU
送通用的广播命令,这个命令每一个传感器都会识别并响应,此时问题出现了。本地的电脑
串口能同时显示上位机发出的指令,还会显示采集板上的每一个传感器的数据。但是服务器显示如下
file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\ksohtml\wps_clip_image-20039.png
服务器只能接收第一个传感器的数据。余下的传感器数据没有收到,(服务器目前仅将收到的数据显示,并不做处理),并且,再次发送广播命令,没有任何数据返回,但是串口却收到了所有的每次命令的发出以及每个传感器的回复。
  问题不可能出在传感器,因为串口能全部收到,只可能出在服务器的tcpsocket。这个如何处理?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

累计签到:4 天
连续签到:1 天
2014-2-14 14:11:40 显示全部楼层
我刚才看了一下去年发的帖子,我基本都是卡在了socket这,如果说传感器连续发送数据包,但是socket处理速度达不到,我只能把socket接收到的数据先存在某一个缓冲区,然后再去处理,可问题是连续发的数据包也许是3个也许是8个,总之不固定,有什么好的办法没
回复 支持 反对

使用道具 举报

累计签到:4 天
连续签到:1 天
2014-2-14 15:14:55 显示全部楼层
有人建议我每次收到数据后就关闭socket连接,这样可行吗?网络不好,也实验不成。还有就是recvbuffer.resizie(0);这个貌似不行。
回复 支持 反对

使用道具 举报

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

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了