Skip to content

TCP指令

AT+IPCREATE 创建Socket

AT+IPCREATE 支持创建TCP和UDP客户端。当前只能支持4个客户端,不支持服务端。

CommandPossible response(s)
+IPCREATE= [<index>],[<mode>],[<adress>],[<Port>]OK
<index>,CONNECT OK
CONNECT FAIL
ERROR
+IPCREATE?+IPCREATE: <index>,<state>
+IPCREATE=?+IPCREATE:index,mode(TCP/UDP),ip/address,port

创建TCP或者UDP链接。如果创建网络链接前PDP没有激活,将自动完成PDP激活后创建。如果创建TCP连接连续3次都失败了,将返回“CONNECT FAIL”;TCP创建成功返回“CONNECT OK”
参数
<index>: 创建连接的通道,目前可选0-3四个通道
<mode>: 创建TCP连接或者UDP连接
TCP:创建TCP连接
UDP:创建UDP连接
<adress>: 创建客户端要连接服务端的地址,可以用IP地址或者域名,具有将域名转换成IP的功能。
<Port>:服务器的端口号
<state>:通道状态

举例

发→◇AT+IPCREATE=? 
收←◆+IPCREATE: index,mode(TCP/UDP),ip/address,port
收←◆OK
发→◇AT+IPCREATE=0,"TCP","192.168.1.1",50 收←◆CONNECT OK 收←◆OK //说明:返回CONNECT OK说明创建TCP连接成功。
发→◇AT+IPCREATE? 收←◆+IPCREATE: 收←◆0,TCP 收←◆1,NUL 收←◆2.NUL 收←◆3.NUL 收←◆OK

AT+IPSEND Socket发送数据

CommandPossible response(s)
+IPSEND = [<index>],[<lent>],[<data>]+IPSEND =lent
OK
ERROR
+IPSEND =?+IPSEND :index,lent,data

通过已经建立的SOCKET发送数据。
参数
<index>:已创建连接的通道
<lent>:发送的数据的长度
<data>:发送的数据

举例

发→◇AT+IPSEND =?
收←◆+ IPCREATE: index,lent,data
收←◆OK
发→◇AT+IPSEND=0,0,123 收←◆+IPSEND:3 收←◆OK

AT+IPSENDDATA Socket数据透传

Command Possible response(s)
+IPSENDDATA = [<index>],[<lent>] >
+IPSENDDATA:lent
OK
ERROR

在已创建的连接上开启数据透传模式。在完成指定的透传长度后或超时后退出。
参数
<index>: 透传通道号
<lent>:需要透传的数据长度

举例

发→◇AT+IPSENDDATA=0,20
收←◆> //返回>表示透传开启成功
//输完透传数据后,按组合键CTRL+Z>发送 或者 发送十六进制0x1A发送,按键ESC>退出 或者 发送十六进制0X1B退出
发→◇\\\r\\\n\\\0\\\\aaaa
收←◆+IPSENDDATA:20 //返回透传完成的数据长度
收←◆OK

AT+IPCLOSE 关闭Socket

CommandPossible response(s)
+IPCLOSE = [<index>]OK
ERROR
+IPCLOSE =?+IPCLOSE :index

关闭已经创建的Socket. 重启Socket,必须已经存在的Socket才能重新创建。

参数
<index>: 关闭通道号

举例

发→◇AT+IPCLOSE =?
收←◆+IPCLOSE:index
收←◆OK
发→◇AT+IPCLOSE =0 收←◆OK
Back to top