mjw001的笔记 https://bbs.21ic.com/?532660 [收藏] [复制] [RSS]

日志

GPRS模块通过TCP/IP方式发送数据流程

已有 930 次阅读2011-7-14 00:59 |系统分类:通信网络

首先介绍一下GPRS的接入方式,在中国有CMWAP和CMNET两种方式。CMWAP 和 CMNET 只是中国移动人为划分的两个GPRS接入方式。前者是为手机WAP上网而设立的,后者则主要是为PC、笔记本电脑、PDA等利用GPRS上网服务。它们在实现方式上并没有任何差别,但因为定位不同,所以和CMNET相比,CMWAP便有了部分限制,资费上也存在差别。


1.开启


at+csq
        +CSQ: 30,99
        OK
        at+cpin?
        +CPIN: READY
        OK
        at+cgreg?
        +CGREG: 0,1
         OK
        //以上是确认当前的网络和模块状态
        at+cgdcont=1,"ip","cmnet" //设置APN 无线接入点
        OK
        at%etcpip="","" //进行ppp拨号
        OK
        at%etcpip? //检查获得本地IP地址,以及DNS服务器的地址
        %ETCPIP:1,"10.213.1.45",,"211.136.20.203","211.136.20.203"
        OK
        //以下是单连接发送数据,多连接AT命令有不同,请参考手册
        AT%IPOPEN="TCP","61.144.177.202",3000
        CONNECT
        AT%IPSEND="683100310068c90896060000027400000100e416"
        %IPSEND:15 //注意:这个返回的buffer序号,每发送一包数据不管大小,都占用一个buffer空间。总计16个。如果返回的buffer 序号在减小,表示当前的网络传送受阻,如果增加表示最前端序号的数据包已发出。数据都堆积在模块的buffer 内。模块会自动重试。
        OK
        %IPDATA:20,"683100310068C90896060000027400000100E416"
        //收到网络的数据。
        AT%IPSEND="683100310068c90896060000027400000100e416"
        %IPSEND:15
        OK
        %IPDATA:20,"683100310068C90896060000027400000100E416"
        at%ipopen? // 查询链路状态,链路断开时模块会自动返回%IPCLOSE: 1
        %IPOPEN:" TCP ",""61.144.177.202",3000,8192,0
        OK


2.关闭


at%ipclose=1 //关闭TCP SOCKET连接,返回OK需要7-10s左右,请设计超时等待时注意。
        %IPCLOSE: 1
        OK
        at%ipclose=5 // AT%IPCLOSE=1关闭成功后,才能AT%IPCLOSE=5。
        // 否则可能出现TCP连接异常断开,造成中心余留客户端IP地址。
        OK


路过

鸡蛋

鲜花

握手

雷人

评论 (0 个评论)