GPRS模块同时收发的问题!
做一个车载终端用GTM900 每秒钟向调度中心发送GPS数据,调度中心随时都可能向终端下达指令,因此车载设备需要有一个单独线程读取接收到的数据。但是发送指令 AT+IPSEND 的返回信息有可能和调度中心发来的数据混到一块了,如何将两种数据提取出来?或者是有没有更好的机制来实现发送和接收?刚接触GPRS,望高手详细指点一下!GPRS模块通过串口连到开发板! 每秒钟? 是不是太频繁了呀,你一个月得多少流量呀 不用担心两者的字节会交叉在一起,作好字符串检索就行了.当然,调度中心发来的数据要有明显的不易与GTM900回应混淆的包头. 放心去做好了,不会混在一起的,AT指令的返回和数据的返回都有不同的字头,很好区别的。 还有忘记说了,1楼说的有道理,GPRS网络的延迟都在几秒,所以GPS1秒一次的数据显得没太大必要,5秒或者10秒一次好了,看终端的移动速度而定。 多谢各位大侠指点!使用的时候也是10秒钟发送一个数据包!我就是担心会不会出现接收到的数据是:
%IPDATA:20,"hsudfiud%IPSEND:1,114\r\nOKsdhfdj"之类的 不会的,华为不会出这么没水平的问题的。 就是AT指令返回的信息和调度中心发来的数据会不会相互交织在一起,如果有可能交织在一起,那信息提取就很麻烦了! 奥!好的!多谢苹果猫大侠!!gprs入门就是看你的帖子慢慢学的!以后继续向你学习! 没可能的,至少我们没有发现过。 GPRS ping Google可以达到1秒以内,所以采用UDP协议的通信网络延时可以做到500mS以内,TCP可以做到1秒,但这个延时没有绝对的保证。采用专用的APN速度还可以更快一些。 不用担心这问题 {:loveliness:}字头可以区别出啦。 每次读AT指令或者收数据后我都是清除缓冲区,这样就导致误清除数据,没有合理的思路解决啊
页:
[1]