题外:大夏龙雀怎么看怎么像是从小说里走出来的。
DX-CT511N-B官宣是一款4G+GNSS模块。一块模块可以完成4G发送/接受消息以及定位功能。但是,作者感觉用“4G/GNSS”来描述更贴切一些。因为,这两个功能是独立开来的,模块内部并不能对数据直接互相访问。如果需要将定位信息上传至服务器。需要一个中间单片机,去接收定位数据,然后再转发回模块,通过模块4G功能,才能上传服务器。
下面,就介绍一下DX-CT511N-B的使用方法吧。
AT指令简介
AT+Command=<param1,param2,param3>[,<param>]<CR><LF>
所有的指令以AT开头,<CR><LF>结束,在本文档中表现命令和响应的表格中,省略了<CR><LF> ,仅显示命令和响应。
所有AT命令字符都为大写。
<>内为可选内容,如果命令中有多个参数,以逗号“,”隔开,实际命令中不包含尖括号。
<CR>为回车字符\r,十六进制为0X0D
<LF>为换行字符\n,十六进制为0X0A
指令执行成功,返回相应命令以OK结束,失败返回ERROR或者+CMEERROR:<err>,“<err>” 内容为对应错误码
[,<param>]中括号[]为可选参数,可根据需求选择发送
TCP 示例
TCP单连接
A. 配置APN:AT+QICSGP=1,1,"","",""
B. 开启移动网络:AT+NETOPEN
C. 建立连接会话:AT+CIPOPEN=1,"TCP","122.114.122.174",41017
D. 发送数据 (未指定长度):AT+CIPSEND=1 注:返回提示符 > ,即可发送数据;数据发送完毕后需要以HEX格式发送1A作为结束符
E. 发送数据 (指定长度):AT+CIPSEND=1,5 注:返回提示符 > ,即可发送数据;数据的长度需与参数一致,不足则会等待数据输入
F. 关闭指定会话:AT+CIPCLOSE=1
TCP多连接
A. 配置APN:AT+QICSGP=1,1,"","",""
B. 开启移动网络:AT+NETOPEN
C. 创建 会话0:AT+CIPOPEN=0,"TCP","122.114.122.174",41017
D. 创建 会话1:AT+CIPOPEN=1,"TCP","122.114.122.174",41017
E. 会话0发送数据 (未指定长度):AT+CIPSEND=0
F. 会话1发送数据 (未指定长度):AT+CIPSEND=1 注:返回提示符 > ,即可发送数据;数据发送完毕后需要以HEX格式发送1A作为结束符
G. 关闭 会话0:AT+CIPCLOSE=0
H. 关闭 会话1:AT+CIPCLOSE=1
TCP透传
A. 配置APN:AT+QICSGP=1,1,"","",""
B. 设置为透传模式:AT+CIPMODE=1
C. 开启移动网络:AT+NETOPEN
D. 建立连接会话:AT+CIPOPEN=0,"TCP","122.114.122.174",41017 注:1. 返回提示符 > ,即可发送数据,该模式下可一直收发数据 2. 退出透传模式:发送+++,该指令无结束符,即指令结尾无回车换行 3. 进入透传模式:ATO
E. 关闭会话:AT+CIPCLOSE=0
UDP 示例
UDP单连接
A. 配置APN:AT+QICSGP=1,1,"","",""
B. 开启移动网络:AT+NETOPEN
C. 建立UDP连接会话:AT+CIPOPEN=1,"UDP",,
D. 发送数据 (指定长度):AT+CIPSEND=1,5,"182.148.114.87",6600
注:返回提示符 > ,即可发送数据;数据的长度需与参数一致,不足则会等待数据输入
E. 关闭指定会话:AT+CIPCLOSE=1
UDP多连接
A. 配置APN:AT+QICSGP=1,1,"","",""
B. 开启移动网络:AT+NETOPEN
C. 建立UDP会话0:AT+CIPOPEN=0,"UDP",,
D. 会话0发送数据 (指定长度):AT+CIPSEND=0,5,"182.148.114.87",6600
注:返回提示符 > ,即可发送数据;数据的长度需与参数一致,不足则会等待数据输入
E. 建立UDP会话1:AT+CIPOPEN=1,"UDP",,
F. 会话1发送数据 (指定长度):AT+CIPSEND=1,5,"182.148.114.87",6600
注:返回提示符 > ,即可发送数据;数据的长度需与参数一致,不足则会等待数据输入
G. 关闭 会话0:AT+CIPCLOSE=0 H. 关闭 会话1:AT+CIPCLOSE=1
UDP透传
A. 配置APN:AT+QICSGP=1,1,"","",""
B. 设置为透传模式:AT+CIPMODE=1
C. 开启移动网络:AT+NETOPEN
D. 建立连接会话:AT+CIPOPEN=0,"UDP","122.114.122.174",41017
注: 1. 返回提示符 > ,即可发送数据,该模式下可一直收发数据
2. 退出透传模式:发送+++,该指令无结束符,即指令结尾无回车换行
3. 进入透传模式:ATO
E. 关闭会话:AT+CIPCLOSE=0
MQTT 示例
A. 配置APN:AT+QICSGP=1,1,"","",""
B. 开启移动网络:AT+NETOPEN
C. 配置MQTT客户端信息:AT+MCONFIG="4G_TEST"
注:如需配置用户名和密码等参数,可参考该手册5.5.1指令部分
D. 配置MQTT服务器信息:AT+MIPSTART="broker.emqx.io",1883
E. 连接MQTT服务器:AT+MCONNECT=1,60
F. 订阅主题:AT+MSUB="phone",0
G. 发布消息 :AT+MPUB="4G",0,0,"hello world"
H. 发布长消息:AT+MPUBEX="4G",0,0,20
注: 1. 返回提示符 > ,即可发送数据,发送成功后自动退出数据传输模式
2. 发送的数据长度需要与参数一致,长度不足则会等待输入
3. 超过10秒未成功发送,则自动退出数据传输模式,返回ERROR
I. 取消订阅:AT+MUNSUB="phone"
J. 断开MQTT连接:AT+MDISCONNECT
K. 释放MQTT资源:AT+MIPCLOSE
HTTP 示例
GET请求
A. 配置APN:AT+QICSGP=1,1,"","",""
B. 开启HTTP服务:AT$HTTPOPEN
C. 配置URL信息:AT$HTTPPARA=http://httpbin.org/get,80
D. 发送HTTP请求:AT$HTTPACTION=0
E. 关闭HTTP服务:AT$HTTPCLOSE
POST请求 (小数据)
A. 配置APN:AT+QICSGP=1,1,"","",""
B. 开启HTTP服务:AT$HTTPOPEN
C. 配置URL信息:AT$HTTPPARA=http://httpbin.org/post,80
D. 设置请求头字段:AT$HTTPRQH=Content-Length,10
E. 设置请求体数据:AT$HTTPDATAEX=10,"ABCDE12345"
F. 发送HTTP请求:AT$HTTPACTION=3
G. 关闭HTTP服务:AT$HTTPCLOSE
POST请求 (大数据)
A. 配置APN:AT+QICSGP=1,1,"","",""
B. 开启HTTP服务:AT$HTTPOPEN
C. 配置URL信息:AT$HTTPPARA=http://httpbin.org/post,80
D. 设置请求头字段:AT$HTTPRQH=Content-Length,10 设置请求头字段:AT$HTTPRQH=Connection,keep-alive
E. 发送HTTP请求:AT$HTTPACTION=1
F.
设置请求体数据:
(1) 设置数据长度:AT$HTTPDATA=5
(2) 数据输入:ABCDE
(3) 提交数据:AT$HTTPSEND
设置请求体数据:
(1) 设置数据长度:AT$HTTPDATA=5
(2) 数据输入:12345
(3) 提交数据:AT$HTTPSEND
注:请求体数据长度之和,需要与请求体字段Content-Length设置的一致
G. 结束请求体数据提交:
(1) 设置数据长度:AT$HTTPDATA=0
(2) 提交数据:AT$HTTPSEND
H. 关闭HTTP服务:AT$HTTPCLOSE
GNSS 示例
A. 打开GPS:AT+MGPSC=1
B. 等待一分钟,搜索定位
C. 查询定位信息:AT+GPSST
D. 返回:+GPSST:1,1, 113.83, 23.33, 22.61; 0, 119; 0, 77; 0, 76; 0, 37; 0, 72; 0, 71; OK
E. 关闭GPS:AT+MGPSC=0