SLM790内置协议栈
SLM790内置协议栈
AT命令手册
受控文件名称:美格SLM790_TCPIP_AT命令手册受控版本号:V1.0
发布机构:美格智能技术股份有限公司发布日期:2019年09月09日
重要声明
版权声明
版权所有:深圳市美格智能技术股份有限公司
x资料及其包含的所有内容为深圳市美格智能技术股份有限公司所有,受中国法律及适用之国际公约中有关著作权法律的保护。未经深圳市美格智能技术股份有限公司书面授权,任何人丌得以任何形式复制、传播、散布、改动或以其它方式使用本资料的部分或全部内容,违者将被依法追究责任。
丌保证声明
深圳市美格智能技术股份有限公司丌对此文档中的任何内容作任何明示或暗示的xx或保证,而且丌对特定目的的适销性及适用性或者任何间接、特殊或连带的损失承担任何责任。
保密声明
x文档(包含任何附件)包含的信息是保密信息。接收人了解其获得的本文档是保密的,限用于规定的目的外丌得用于任何目的,也丌得将本文档泄露给任何第三方。
免责声明
x公司丌承担由于客户丌正常操作造成的财产或者人身伤害责任。请客户按照手册中的技术规格和参考设计开发相应的产品。在未声明之前,本公司有权根据技术发展的需要对本手册内容进行更改,且更改版本丌另行通知。
目录
1 前言 5
1.1 文档目的 5
1.2 修订记录 5
2.TCP/IP 相关命令 1
2.1 内置协议栈连接 AT 命令:AT+MIPCALL 1
2.2 初始化连接远程主机的新 AT 命令:AT+MIPOPEN 2
2.3 关闭 SOCKET 连接 AT 命令:AT+MIPCLOSE 3
2.4 发送数据到SOCKET 缓存中 AT 命令:AT+MIPSEND 4
2.5 发送数据到远程主机 AT 命令:AT+MIPPUSH 5
2.6 清除 SOCKET 缓存中所有数据 AT 命令:AT+MIPFLUSH 6
2.7 设置传输模式 AT 命令:AT+MIPSWTMD 7
2.8 查询域名对应的 IP 地址 AT 命令:AT+MIPDNSR 8
2.9 透明传输模式 AT 命令:AT+MIPTPS 9
2.10 TCP 接收数据上报 AT 命令:+MIPRTCP 10
2.11 UDP 接收数据上报 AT 命令:+MIPRUDP 11
2.12 十六进制转换控制 AT 命令:AT+MIPHEX 11
2.13 BUFFER 模式读取数据 AT 命令:AT+MIPRD 12
2.14 查询当前链接状态 AT 命令:AT+MIPSTATE 13
3 示例 15
3.1 拨号 15
3.1.1 拨号链接 15
3.1.2 断开拨号 15
3.2 TCP/UDP 链接建立 15
3.2.1 TCP 15
3.2.2 UDP 16
3.2.3 查询链路链接状态信息 16
3.2.4 关闭TCP/UDP 链路 16
3.3BUFFER 模式发送接收数据 17
3.3.1 切换链路传输数据模式 17
3.3.2 发送数据到缓冲区 17
3.3.3 将缓冲区数据发送至网络侧 17
3.4 缓存模式下的主动上报 17
3.4.1 TCP 主动上报 17
3.4.1 UDP 主动上报 18
3.4.1 读取主动上报数据 18
3.5 直传模式发送接收数据 18
3.5.1 切换链路为直传模式 18
3.5.2 发送数据到网络侧 18
3.6 直传模式下的主动上报 19
3.6.1 TCP 主动上报 19
3.6.2 UDP 主动上报 19
3.7 透传模式 19
3.7.1 确认透传模式 19
3.7.2 BUFF FULL 透传模式 20
3.7.3 定时透传模式 20
版本 | 姓名 | 发布时间 | 修订描述 |
V1.0 | 强文选 | 2019-09-09 | V1.0 版本创建 |
V1.1 | xx | 2019-12-10 | 2.1 AT+MIPCALL 命令增加可选参 数<cid> |
1
前言
1.1
文档目的
x文档详细介绍了美格 SLM790 模块所支持的内置协议栈及协议相关 AT 指令集。指导
用户进行模块的指令交互,协助客户进行应用开发。
1.2
修订记录
表 1:版本修订记录
2.TCP/IP 相关命令
2.1 内置协议栈连接 AT 命令:AT+MIPCALL
此指令用于控制 PPP 的连接。
表 211:AT+MIPCALL 操作指令
类型 | 指令 | 可能的返回结果 | 说明 | |
设置命令 | AT+MIPCALL=<Action>[,<APN >[,<Username>[,<Password>[,< Auth_Type>[,<cid>]]]]] | 成功: +MIPCALL: <Status>[,<IP>] OK 失贤: ERROR | - | |
查询命令 | AT+MIPCALL? | +MIPCALL: <Status>[,<IP>] OK | - | |
测试命令 | AT+MIPCALL=? | +MIPCALL: (0-1),(APN),(Username),(Password),( 0-2),(1-9) OK | - | |
指令例程 | AT+MIPCALL=1,“cmnet”,””, ””,2,1 | +MIPCALL: 1,10.186.9.79 OK | 网络侧分配的IP地址 | |
AT+MIPCALL=0 | OK | - | ||
最大响应时 间 | ||||
激活 150s,去激活40s, 具体根据网络实际情况决定 |
表 212:AT+MIPCALL 参数说明
参数 | 取值 | 说明 |
<Action> | 0 | 断开ppp连接 |
1 | 建立ppp连接 | |
<APN> | - | 拨号使用的APN |
<Username> | - | 拨号用户名 |
<Password> | - | 拨号密码 |
<Auth_Type> | 0 | 默认鉴权方式 |
1 | PAP鉴权 | |
2 | CHAP鉴权 | |
<Status> | 0 | 处于断开状态 |
1 | 处于连接状态 | |
<IP> | - | 网络侧分配的IP地址 |
2.2 初始化连接远程主机的新 AT 命令:AT+MIPOPEN
此命令用于建立 TCP/UDP 链接。
表 213:AT+MIPOPEN 操作指令
类型 | 指令 | 可能的返回结果 | 说明 |
设置命令 | AT+MIPOPEN=<Socket_ID>,<Source_ Port>,<Remote_IP>,<Remote_Port>,< Protocol_Type>[,<Service_Type>[,<Us erName>,<Password>]] | 成功: +MIPOPEN: <Socket_ID>,<Status> OK 失贤: ERROR | - |
+MIPOPEN: 1,2,4 | 得 到 当 | ||
前 可 用 | |||
查询命令 | AT+MIPOPEN? | OK | 链 接 的 |
Socket_I | |||
D | |||
测试命令 | AT+MIPOPEN=? | +MIPOPEN: (1-6),(0-65535),( Remote_IP),(0-65535),(0-3) ,(0-1),(UserName),(Password) OK | - |
AT+MIPOPEN=4,0,"116.247.69.94",10 | +MIPOPEN: 4,0 | ||
010,0,0 | |||
指令例程 | OK | TCP 协议 | |
+MIPOPEN: 1,2,4 | |||
AT+MIPOPEN? | |||
OK | |||
最大响应时 间 | 30s,根据网络实际情况决定 |
表 214:AT+MIPOPEN 参数说明
参数 | 取值 | 说明 |
<Socket_ID> | 1-6 | 整数值 |
<Source_Port> | 0-65535 | 整数值 |
<Remote_IP> | - | IP地址 |
<Remote_Port> | - | 远程主机端口号 |
<Protocol_Type> | 0 | TCP协议(最大1500个字节) |
1 | UDP协议(客户端到服务端: 每次最大发送1500个字节,服务端到客户端: 每 次最大发送1024个字节) | |
2 | FTP协议 | |
3 | HTTP协议 | |
<Service_Type> | 0 | 客户端 |
1 | 服务器端 | |
<Status> | 0 | 表示初始化失贤 |
1 | 表示初始化成功 | |
[UserName] | - | 用户名(FTP) |
[Password] | - | 密码(FTP) |
2.3 关闭SOCKET 连接 AT 命令:AT+MIPCLOSE
此命令用于关闭 SOCKET 连接。
表 215:AT+MIPCLOSE 操作指令
类型 | 指令 | 可能的返回结果 | 说明 |
设置命令 | AT+MIPCLOSE=<Socket_ID> | 成功: OK +MIPCLOSE: <Socket_ID>,<Send_Data>,<Receive_data>,<Clos e_Type> 失贤: ERROR | |
查询命令 | AT+MIPCLOSE? | +MIPCLOSE: <Socket_ID> OK | 得到活跃 的 socket id 列表 |
测试命令 | AT+MIPCLOSE=? | +MIPCLOSE: (1-6) | - |
OK | |||
指令例程 | AT+MIPCLOSE? | +MIPCLOSE: 2,3 OK | 表示id 为 2和3 的两个 socket连接 活跃 |
AT+MIPCLOSE=2 | OK +MIPCLOSE: 2,0,0,0 | 异步指令,先返回OK,后面再主动 上报结果 | |
最大响应时 间 | 30s,根据网络实际情况决定 |
表 2:AT+MIPCLOSE 参数说明
参数 | 取值 | 说明 |
<Socket_ID> | 1-6 | 整数值 |
<Send_Data> | - | 整数值(无符号整型),表示从该socket建立后发送了多少数据 |
<Receive_Data> | - | 整数值(无符号整型),表示从该socket建立后接收了多少数据 |
<Close_Type> | 0 | Socket连接被正确的关闭 |
1 | Socket连接关闭失贤 | |
<Protocol> | 0 | TCP协议 |
1 | UDP协议 |
2.4 发送数据到 SOCKET 缓存中 AT 命令:AT+MIPSEND
此命令用于在直传模式下将数据直接发往网络侧;在缓存模式下先将数据发往缓冲区,再用 AT+MIPPUSH 命令将缓冲区数据发往网络侧。
表 217:AT+MIPSEND 操作指令
类型 | 指令 | 可能的返回结果 | 说明 |
设置命令 | AT+MIPSEND=<Socket_ID> ,<Data> | 成功: +MIPSEND: <Socket_ID>,<Free_Size> OK 错误: ERROR | - |
查询命令 | +MIPSEND: <Socket_ID>,<Free_Size> | - |
AT+MIPSEND? | OK | ||
测试命令 | AT+MIPSEND=? | +XXXXXXX: (1-6),(Data) OK | - |
指令例程 | AT+MIPSEND=? | +XXXXXXX: (1-6),(Data) OK | - |
AT+XXXXXXX? | +XXXXXXX: 3,1493 +MIPSEND: 4,1490 OK | Socket id 3的缓存大小为1493,Socket id 4的缓存大小为1490 | |
AT+MIPSEND=4,"01234567 89" | +MIPSEND: 4,1490 OK | 向Socket id 4中发送10个字符后,剩余缓存大小 1490 | |
最大响应时 间 | 30s,根据网络实际情况决定 |
表 218:AT+XXXXXXX 参数说明
参数 | 取值 | 说明 |
<Socket_ID> | 1-6 | 整数值 |
<Data> | 需要发送的数据,最大发送1500字节 | |
<Free_Size> | 0-1500 | 整数值,相应socket id剩余缓存空间大小 |
如果接收到来自远程主机的数据时,如果是 TCP SOCKET,"+MIPRTCP"将上报到 AT口;如果是UDP SOCKET,"+MIPRUDP"将上报到 AT 口。
2.5 发送数据到远程主机 AT 命令:AT+MIPPUSH
此命令适用于缓存模式。首先通过 AT+MIPSWTDMD=1,0 设置缓存模式,然后通过
AT+XXXXXXX 发送数据到缓存,再使用此命令发送至网络侧。
表 219:AT+MIPPUSH 操作指令
类型 | 指令 | 可能的返回结果 | 说明 |
设置命令 | AT+MIPPUSH=<Socket_ID> | 成功: OK 失贤: ERROR | - |
查询命令 | AT+MIPPUSH? | +MIPPUSH: <Socket_ID> OK | 列 出 活 跃 的 Socket_ID |
测试命令 | AT+MIPPUSH=? | +MIPPUSH: (1-6) OK | - |
指令例程 | AT+MIPPUSH? | +MIPPUSH: 3,4 OK | 当前活跃的socket id有 3和4 |
AT+MIPPUSH=4 | OK | 发送Socket id 4中的缓 存数据到远程 | |
最大响应时 间 | 30s,根据网络实际情况决定 |
表 220:AT+MIPPUSH 参数说明
参数 | 取值 | 说明 |
<Socket_ID> | 1-6 | 整数值 |
2.6 清除SOCKET 缓存中所有数据 AT 命令:AT+MIPFLUSH
此命令用于清空在缓存模式下的上下行缓存中的数据。
表 221:AT+MIPFLUSH 操作指令
类型 | 指令 | 可能的返回结果 | 说明 |
设置命令 | AT+MIPFLUSH=<Socket_ID > | OK | - |
查询命令 | AT+MIPFLUSH? | +MIPFLUSH: <Socket_ID> OK | 列出活跃的Socket_ID |
测试命令 | AT+MIPFLUSH=? | +MIPFLUSH: (1-6) OK | - |
指令例程 | AT+MIPFLUSH? | +MIPFLUSH: 3,4 OK | 当前活跃的socket id有 3和4 |
AT+MIPFLUSH=4 | OK | 清除Socket id 4中的缓 存数据 | |
最大响应时 间 | 30s,根据网络实际情况决定 |
表 222:AT+MIPFLUSH 参数说明
参数 | 取值 | 说明 |
<Socket_ID> | 1-6 | 整数值 |
2.7 设置传输模式 AT 命令:AT+MIPSWTMD
此命令用于切换数据发送模式。
表 223:AT+MIPSWTMD 操作指令
型 | 指令 | 可能的返回结果 | 说明 |
设置指令 | AT+MIPSWTMD=<Socket_I D>,<Access_Mode> | 成功: +MIPSWTMD: <Socket_ID>,<Access_Mode> OK 失贤: ERROR | - |
查询指令 | AT+ MIPSWTMD? | +MIPSWTMD: 1,0 +MIPSWTMD: 2,0 OK | - |
测试指令 | AT+MIPSWTMD=? | +MIPSWTMD: (1-6),(0-1) OK | - |
最大响应 时间 | 30s,根据网络实际情况决定 |
表 224:AT+ MIPSWTMD 参数详细说明
参数 | 取值 | 说明 |
<Socket_ID> | 1-6 | 整数值 |
<Access_Mode> | 0 | 直传模式模式 |
1 | BUFFER模式 |
2.8 查询域名对应的 IP 地址 AT 命令:AT+MIPDNSR
此命令用于域名解析。
表 225:AT+MIPDNSR 操作指令
类型 | 指令 | 可能的返回结果 | 说明 |
设置命令 | AT+MIPDNSR=<Address> | 成功: +MIPDNSR: <IP_Address> OK 失贤: ERROR | - |
查询命令 | AT+MIPDNSR? | OK | - |
测试命令 | AT+MIPDNSR=? | OK | - |
指令例程 | AT+MIPDNSR=? | OK | - |
AT+MIPDNSR="xxx.xxxxx. com" | +MIPDNSR: 220.181.38.149 OK | - | |
最大响应时 间 | 60s,根据网络实际情况决定 |
说明:在AT+XXXXXXX 已获取 ip 的条件下才能使用。
表 226:AT+MIPDNSR 参数说明
参数 | 取值 | 说明 |
<Address> | - | 域名地址 |
<IP_Address> | - | IP地址 |
2.9 透明传输模式 AT 命令:AT+MIPTPS
此命令用于透传模式下发送数据。当在确认模式下时,仅可传入<Mode>和<Socket_ID>参数;在定时模式下仅可传入<Mode>、<Socket_ID>和<Timeout>参数;在 Buff Full 模式下必须传四个参数,如果Timeout 置位 0 或省略则定时器不生效,如果设置Timeout 非 0 则启动数据发送定时器,时间超时则数据发出。
表 227:AT+MIPTPS 操作指令
类型 | 指令 | 可能的返回结果 | 说明 |
设置命令 | AT+MIPTPS=<Mode>,<Socket_I D>[,<Timeout>] [,< Max_Len >] | 成功: > +MIPOK OK 失贤: ERROR | 当> 出现时, 开始输入数据, 如果 <mode>=1(即确认模式),输入+++结束数据输入并发送 |
查询命令 | AT+MIPTPS? | OK | - |
测试命令 | AT+MIPTPS=? | +MIPTPS: (1-3),(1-6),(0-5000),(1 -8192) OK | - |
指令例程 | AT+MIPTPS=? | OK | - |
AT+MIPTPS=1,1,20,600 | > +MIPOK OK | - | |
最大响应时 间 | 30s,根据网络实际情况决定 |
表 228:AT+MIPTPS 参数说明
参数 | 取值 | 说明 |
<Mode> | 1 | 确认模式,输入+++结束输入并发送(发送数据无限制,跟设定长度无关) |
2 | 定时模式,定时发送数据,输入+++结束并退出 | |
3 | Buff Full模式,当输入超出最大设定长度时,截断并发送;当输入未超出最大设定长度时,输入+++ 结束输入并发送(要求已输入字符长度和输入的”+++” 的总长度丌大于设定的Max_Len) | |
<Socket_ID> | 1-6 | 选定发送的socket_id |
<Max_Len> | 1-8192 | 一次最大发送的字节数(仅支持Buff full模式) |
<Timeout> | -- | 超时时间(0:表示定时器丌生效)/单位:ms |
说明:在透传模式下,不管是哪种模式现退出机制为:只有仅仅检测到+++时才退出且+号前后无字符以及超过 900ms 再无数据输入才退出。
2.10 TCP 接收数据上报 AT 命令:+MIPRTCP
此命令用于 TCP 主动上报。
表 229:+MIPRTCP 上报指令
类型 | 指令 | 可能的返回结果 | 说明 |
上报命令 | +MIPRTCP: <Socket_ID>,<Number>,<Local_Port>,<Data> OK | AT+MIPSWTMD 中 Access_Mode 设置为 0 时, TCP 主动上报 |
表 230:AT+MIPRTCP 参数详细说明
参数 | 取值 | 说明 |
<Socket_ID> | 1-6 | Socket 链接 ID |
<Number> | -- | 本次接收的字符个数 |
<Local_Port> | 0-65535 | 本地端口号(为MIPOPEN中设置的Source Port),当MIPOPEN中设置为0时, 系统会自动分配可用的端口。 |
<Data> | 本次接收的数据内容,字符型 |
表 231:+MIPRTCP 上报指令
类型 | 指令 | 可能的返回结果 | 说明 |
上报命令 | +MIPRTCP: “recv”,<Socket_ID> OK | AT+MIPSWTMD 中 Access_Mode 设置为 1 时,TCP 主动上报 |
2.11 UDP 接收数据上报 AT 命令:+XXXXXXX
此命令用于 UDP 主动上报。
表 232:+MIPRUDP 操作指令
类型 | 指令 | 可能的返回结果 | 说明 |
上报命令 | +MIPRUDP: <Socket_ID>,<Remote_IP/Domain>,<Local_Port>,<Dat a> OK | AT+MIPSWTMD 中 Access_Mode 设置为 0 时,UDP 主动上报 |
表 233:+MIPRUDP 参数详细说明
参数 | 取值 | 说明 |
<Socket_ID> | 1-6 | Socket链接ID |
<Remote_IP> | 网络侧分配给客户端的IP地址 | |
<Local_Port> | 0-65535 | 本地端口号(为MIPOPEN中设置的Source Port),当MIPOPEN中设置为0时, 系统会自动分配可用的端口。 |
<Data> | 本次接收的数据内容,字符型 |
表 234:+MIPRUDP 上报指令
类型 | 指令 | 可能的返回结果 | 说明 |
上报命令 | +MIPRUDP: “recv”,<Socket_ID> OK | AT+MIPSWTMD 中 Access_Mode 设置为 1 时, UDP 主动上报 |
2.12 十六进制转换控制 AT 命令:AT+MIPHEX
此命令用于设置 16 进制模式。
表 235:AT+MIPHEX 操作指令
型 | 指令 | 可能的返回结果 | 说明 |
设置指令 | AT+MIPHEX=<Value> | +MIPHEX: <value> OK | - |
查询指令 | AT+MIPHEX? | +MIPHEX: 0 OK | - |
测试指令 | AT+MIPHEX=? | +MIPHEX: (0-1) OK | - |
最大响应 时间 | 30s,根据网络实际情况决定 |
表 236:AT+MIPHEX 参数详细说明
参数 | 取值 | 说明 |
<Value> | 0 | 关闭 hex 模式 |
1 | 开启hex模式 |
2.13 BUFFER 模式读取数据 AT 命令:AT+MIPRD
此命令用于缓存模式下读取缓存中的数据,当主动上报+MIPRTCP: “recv”,<Socket_ID>
或+MIPRUDP: “recv”,<Socket_ID>时,即可使用此命令读取上报 Socket_ID 的数据。
表 237:AT+ MIPRD 操作指令
型 | 指令 | 可能的返回结果 | 说明 |
设置指令 | AT+MIPRD=<Socket_ID>,< Data_Len> | +MIPRD: <Socket_ID>,<Actual_Data_Len>,<Value> OK | - |
查询指令 | AT+MIPRD? | +MIPRD: <Socket_ID>,<Actual_Data_Len> OK | - |
测试指令 | AT+MIPRD=? | +MIPRD: (1-6),(0-1500) OK | - |
最大响应 时间 | 30s,根据网络实际情况决定 |
表 238:AT+MIPRD 参数详细说明
参数 | 取值 | 说明 |
<Socket_ID> | 1-6 | Socket_ID 值 |
<Data_Len> | 0-1500 | 预读取数据长度 |
<Actual_Data_Len> | 0-1500 | 实际读取数据长度 |
<Value> | - | 实际读取的数据,字符型 |
2.14 查询当前链接状态 AT 命令:AT+MIPSTATE
此命令用于查询当前链路的链接状态信息。
表 239:AT+MIPSTATE 操作指令
类型 | 指令 | 可能的返回结果 | 说明 |
设置命令 | AT+MIPSTATE=<Socket_ID> | 成功: +MIPSTATE: <Socket_ID>,<Service_Type>,<Local_IP>,< Local_Port>,<Remote_IP>,<Remote_Port>, <Access_Mode> OK 失贤: ERROR | - |
查询命令 | AT+MIPSTATE? | +MIPSTATE: 1,0,"10.99.85.99",48698,"132.232.62.253",69 99,1 OK | - |
测试命令 | AT+MIPSTATE=? | +MIPSTATE: (1-6) | - |
OK | |||
指令例程 | AT+MIPSTATE=1 | +MIPSTATE: 1,0,"10.99.85.99",48698,"132.232.62.253",69 99,1 OK | TCP 协议 |
AT+MIPSTATE? | +MIPSTATE: 1,0,"10.99.85.99",48698,"132.232.62.253",69 99,1 +MIPSTATE: 2,0,"10.99.85.99",60771,"132.232.62.253",69 99,0 OK | ||
最大响应时 间 | 30s,根据网络实际情况决定 |
表 240:AT+MIPSTATE 参数说明
参数 | 取值 | 说明 |
<Socket_ID> | 1-6 | 整数值 |
<Service_Type> | 0-3 | 0:TCP客户端 1:TCP服务器 2:UDP客户端 3:UDP服务器 |
<Local_IP> | - | 本地IP地址 |
<Local_Port > | 0-65535 | 本地主机端口号 |
<Remote_IP> | -- | 远程服务器IP地址 |
<Remote_Port> | 0-65535 | 远程服务器端口 |
<Access_Mode> | 0-1 | 0:BUFFER模式 1:直传模式 |
3 示例
3.1 拨号
3.1.1 拨号链接
AT+MIPCALL=1 拨号成功: +MIPCALL: 192.168.32.235 OK 拨号失败: ERROR | //拨号链接 |
3.1.2 断开拨号
AT+MIPCALL=0
断开拨号成功:
OK
断开失败:
ERROR
3.2 TCP/UDP 链接建立
3.2.1 TCP
AT+MIPOPEN=1,0,"132.232.62.253",6001,0,0 TCP 客户端链接成功: +MIPOPEN: 1,1 OK | //TCP 链接 |
TCP 客户端链接失败:
+MIPOPEN: 1,0 OK
3.2.2 UDP
AT+MIPOPEN=1,0,"132.232.62.253",6001,1,0 UDP 客户端链接成功: +MIPOPEN: 1,1 OK UDP 客户端链接失败: +MIPOPEN: 1,0 OK | //UDP 链接 |
3.2.3 查询链路链接状态信息
at+mipstate=1 +MIPSTATE: 1,0,"10.99.85.99",48698,"132.232.62.253",6999,0 OK | //查询当前链接 socket id = 1 的状态 |
3.2.4 关闭 TCP/UDP 链路
AT+MIPCLOSE=1
关闭成功:
OK
+MIPCLOSE: 1,0,0,0
关闭失败:
OK
+MIPCLOSE:1,0,0,1
//关闭链路 1
3.3BUFFER 模式发送接收数据
3.3.1 切换链路传输数据模式
at+mipswtmd=1,1 切换模式成功: OK 切换模式失败: ERROR | //切换 socket_id 链路 1 为 BUFFER 模 式 |
3.3.2 发送数据到缓冲区
AT+MIPSEND=1,”1234567890” 发送上行缓存成功: +MIPSEND: 1,1490 OK 发送上行缓存失败: ERROR | //发送数据最大 1500 字节,包括 1500 字节,如果MIPHEX=1 则只能发送 0-F 之间的数据 |
3.3.3 将缓冲区数据发送至网络侧
AT+MIPPUSH=1
发送成功:
OK
发送失败:
ERROR
//发往对端服务器端
3.4 缓存模式下的主动上报
3.4.1 TCP 主动上报
在 TCP 模式下第一次接收数据主动上报:
+MIPRTCP: “recv”,1
OK
第二次接收数据不报
3.4.1 UDP 主动上报
在 UDP 模式下第一次接收数据主动上报:
+MIPRUDP: “recv”,1 OK
3.4.1 读取主动上报数据
AT+MIPRD=1,20 读取成功返回: +MIPRD: 1,10,1234567890 OK 读取失败返回: ERROR | //从下行缓冲区读取数据 |
3.5 直传模式发送接收数据
3.5.1 切换链路为直传模式
at+mipswtmd=1,0
切换模式成功:
OK
切换模式失败:
ERROR
// 切换 socket_id 链路 1 为 直传模式,
+XXXXXXX 默认为直传模式
3.5.2 发送数据到网络侧
AT+MIPSEND=1,”1234567890”
发送上行缓存成功:
//发送数据最大 1500 字节,包括 1500 字节,如果MIPHEX=1 则只能发送 0-F 之间的数据
+XXXXXXX: 1,1490 OK
发送上行缓存失败:
ERROR
3.6 直传模式下的主动上报
3.6.1 TCP 主动上报
在 TCP 模式下接收数据主动上报:
+MIPRTCP: 1,10,<Local_Port>,1234567890 OK
3.6.2 UDP 主动上报
在 UDP 模式下接收数据主动上报:
+MIPRUDP: 1,<Remote_IP>,<Local_Port>,1234567890 OK
3.7 透传模式
退出机制:+++字符之间 900ms 定时,且+++后 900ms 之内无数据即可退出
3.7.1 确认透传模式
AT+MIPTPS=1,1
>
退出成功返回:
+MIPOK OK
//进入确认模式透传
发送数据一次性最大 1500 字 节,+++才退出
3.7.2 BUFF FULL 透传模式
AT+MIPTPS=3,1,,10 > 退出成功返回: +MIPOK OK | //进入 BUFF FULL 模式透传 发送数据一次性最大 1500 字 节,达到数据长度 10 字节退出或者+++才退出 |
3.7.3 定时透传模式
AT+MIPTPS=2,1,500 > 退出成功返回: +MIPOK OK | //进入定时模式,数据长时间未 检测到+++,500ms 将数据发送 出去,+++退出 |