|
在这个论坛混了好几年了,各位大侠及论坛的丰富资料给我的帮助不小,因自己技不如人又不爱说话只发过一个帖子。
今天再发一帧,向各位大侠请教。
最各用MG323模块做DTU,一直做下来觉着不难(属无知者无畏),但现在遇到个头痛的问题:
当使用MG323内部的协议栈连上服务器后,起初可以正常收发数据,并且服务器端主动断开时,MG32会输出“Remote Peer has closed the connection”。
但时当MG323连上服务器后一段时间(约1分钟)不收发数据,之后再也收不到也发不出数据,服务器端主动断开,MG323也不会输出“Remote Peer has closed the connection”。
出现这个情况以后再用“sisw”指令写数据时MG323才有可能再次输出“Remote Peer has closed the connection”。其间感觉连路已经断了,但单片机和服务器端一无所知……
向MG323发送的指令如下如下:
AT^SICS=0,conType,GPRS0
OK
AT^SICS=0,apn,3GNET
OK
AT^SISS=0,conId,0
OK
AT^SISS=0,srvType,Socket
OK
AT^SISS=0,address,"socktcp://106.3.44.112:8000"
OK
AT^SISO=0
OK
^SISW: 0,1,1394
以上指令和回复的情况下,MG323可以正常连到服务器。
有以下几个问题希望各位大侠指点:
1、为什么连路空闲一段时间后会断掉,而服务器端及单片机端都没得到通知,是MG323休眠或移动断开的?
2、应对以上的问题,有没有办法可以及时的知道路连是否断开,比如说有没有可以查询的指令。
我不是专门做DTU的,只是的我们产品中有用到DTU,然后就要我们自己开发一个DTU(用成品DTU是明智的选技,只是咱技术员说了不项用)所以对这方面不大了解,目前手上有一个成品的DTU发现不存在这样的问题(成功DTU用的是MC52iR3模块)。
在此先谢过各位了。 |
阿莫论坛20周年了!感谢大家的支持与爱护!!
曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……
|