GPRS的A6A7A9a模块AT指令操作示例中文.docx
《GPRS的A6A7A9a模块AT指令操作示例中文.docx》由会员分享,可在线阅读,更多相关《GPRS的A6A7A9a模块AT指令操作示例中文.docx(35页珍藏版)》请在冰点文库上搜索。
GPRS的A6A7A9a模块AT指令操作示例中文
GSM/GPRS操作示例
说明:
本页面操作示例使用串口助手进行开发演示。
请先仔细看右边的目录,按模块,寻找自己需要的功能
更新历史
更新说明:
2017年10月14号:
固件版本:
v01.05.20171014
1.A9/A9G增加基站定位简化本指令AT+LOCATION=X。
基站定位直接输出当前位置的经纬度,解决了站定位需要第三方插件转换太复杂的问题。
2.A9/A9G优化AT+CCLK?
指令,直接获取当前时间,不需要手动设置(联通卡时间会出错,建议使用移动卡)。
A6(GPRS)
xx接收
相关指令
ATDxxxxx;//xxx为xx号码
示例
打xx
ATDxxxxxxxxxxx
OK
+CIEV:
"CALL",1
+CIEV:
"SOUNDER",1//响铃
+CIEV:
"SOUNDER",0//挂断
+CIEV:
"CALL",0
BUSY//显示BUSY
接到短话
(若想使用来电提醒功能,请使用at+clip=1;注意,该功能必须需要你的SIM卡自带来电提醒功能)
RING
RING
短信设置
相关指令
AT+CPMS="SM","SM","SM"//设置短信存储单元
AT+CMGF=0/1//设置短信格式,1为text格式读取,0为pud格式读取
AT+CMGR=x//读取短信内容,x为第几条短信
AT+CMGL=4/ALL//查看短信列表PUD格式下读取参数为4,txt格式要发AT+CMGL=ALL
AT+CMGD=1//删除短信。
若果使用AT+CMGD=1,4则为删除所有短信
示例
AT+CPMS="SM","SM","SM"//设置短信存储单元,同时也可以查看短信容量
+CPMS:
0,50,0,50,0,50
OK
AT+CMGF=1//设置为TXT格式读取
OK
+CIEV:
"MESSAGE",1//接收到短信,内容包括xx号码和时间以及内容
+CMT:
"+86xxxxxxxxxxx",,"2017/10/09,09:
14:
52+08"
111
+CIEV:
"MESSAGE",1
+CMT:
"+86xxxxxxxxxxx",,"2017/10/09,09:
16:
25+08"
222
AT+CMGF=0//设置为PUD格式接受
OK
+CIEV:
"MESSAGE",1//以PUD接收到短信,内容包括xx号码和时间以及内容
+CMT:
23
0891683110602305F0240D91687186935218F500007101909061452303B3D90C
+CIEV:
"MESSAGE",1
+CMT:
23
0891683110602305F0240D91687186935218F500007101909071202303341A0D
AT+CMGL=4//列出所有短信->pud格式,使用这条命令参数为4
+CMGL:
1,1,,23
0891683110602305F0240D91687186935218F500007101909041252303B1580C
+CMGL:
2,1,,23
0891683110602305F0240D91687186935218F50000710190906152230332990C
+CMGL:
3,1,,23
0891683110602305F0240D91687186935218F500007101909061452303B3D90C
+CMGL:
4,1,,23
0891683110602305F0240D91687186935218F500007101909071202303341A0D
OK
AT+CMGF=1//设置为TXT格式读取
OK
AT+CMGL=ALL//列出所有短信->pud格式,使用这条命令参数为ALL
+CMGL:
1,"RECREAD","+86xxxxxxxxxxx",,"2017/10/09,09:
14:
52+08"
111
+CMGL:
2,"RECREAD","+86xxxxxxxxxxx",,"2017/10/09,09:
16:
25+08"
222
+CMGL:
3,"RECREAD","+86xxxxxxxxxxx",,"2017/10/09,09:
16:
54+08"
333
+CMGL:
4,"RECREAD","+86xxxxxxxxxxx",,"2017/10/09,09:
17:
02+08"
444
OK
AT+CMGR=1//读取第一条短信
+CMGR:
"RECREAD","+86xxxxxxxxxxx",,"2017/10/09,09:
14:
52+08"
111
OK
AT+CMGR=2//读取第二条短信
+CMGR:
"RECREAD","+86xxxxxxxxxxx",,"2017/10/09,09:
16:
25+08"
222
OK
AT+CMGR=3//读取第三条短信
+CMGR:
"RECREAD","+86xxxxxxxxxxx",,"2017/10/09,09:
16:
54+08"
333
AT+CMGD=1//删除第一条短信
OK
AT+CMGD=2//删除第二条短信谨记删除第一条后,第二条内容不会自动跑到第一条,而是依然占据第二条短信,但是当所有短信都删除后,再接收到短信后,会自动排列到第一条信息的位置
OK
AT+CMGD=3//删除第三条短信
OK
AT+CPMS="SM","SM","SM"//查看一下短信容量
+CPMS:
1,50,1,50,1,50
OK
AT+CMGL=ALL//删除了3条之后,查看短信列表,只剩1条
+CMGL:
4,"RECREAD","+86xxxxxxxxxxx",,"2017/10/09,09:
17:
02+08"
444
OK
AT+CMGD=1,4//删除所有短信
OK
发送短信
AT+CMGF=1//文本方式发送
AT+CMGS="xxxxxxxxxxx(xx号码)"//返回>,然后输入要发送的txt内容并且以CTRL-Z(16进制为1a)结束即可
中文发送短信
另外可以使用PUD的编码方式发送信息:
AT+CMGS=XX;//要发送的字节数
>xxxxxxxxxxxxxxxxxxxxx//PUD码(最后以CTRL-Z(16进制为1a)结尾)
+CMGS:
0
OK
获取基站下发时间
下一版将会更新功能直接是用AT+CCLK?
来查询。
(若改动,该行内容会取消,并修改修示例内容,固件发布处会有更新记录)。
模组每次上单初始化的过程中会获取基站下发的时间。
另外,使用AT+CGATT=1指令附着网络的时候会获得基站下发的时间,但是使用第二次无效。
AT+CGATT
OK
+CTZV:
17/10/07,05:
48:
38,+08
基站定位
相关指令AT+CREG?
示例
AT+CREG=1//=1的时候是查询网络状态,模组上电默认为1
OK
AT+CREG?
+CREG:
1,1
AT+CREG=2//=2的时候是基站定位
OK
AT+CREG?
+CREG:
2,1,"xxxx","xxxx",2//中间参数为16进制
在相关网站查询:
http:
//.gpsspg./bs.htm
HTTP
以XX为例(前面的步骤要按流程配置,一定不能忘记)(HTTPGET不可用,会在下一版本进行更新)示例
AT+CCID
AT+CREG?
AT+CGATT=1
AT+CGDCONT=1,"IP","CMNET"
AT+CGACT=1,1
创建连接
at+cipstart="TCP",".baidu.",80
两种发送请求方式:
1.透传发送
AT+CIPTMODE=1//进入透传
OK
GET/HTTP/1.1\r\nHost:
.baidu.\r\n\r\n//发送GET请求信息
2.非透传模式
AT+CIPSEND=45//发送的字节长度
>
GET/HTTP/1.1\r\nHost:
.baidu.\r\n\r\n//出现上述箭头后,发送GET请求信息
多链接
示例
at+ccid//查询ccid,确定是否有sim卡
+SCID:
SIMCardID:
898602#4221620070426
OK
at+creg?
//查询是否注册上网络
+CREG:
1,5//第一个参数1表示允许注册入网;第二个参数5表示已注册,处于漫游状态,如果是1的话,表示已注册本地网络,出现其他参数表示不正常
OK
at+csq//查询信号
+CSQ:
31,99
OK
at+cgatt=1//附着网络
+CTZV:
16/07/06,11:
34:
17,+08
OK
at+cgdcont=1,"IP","cmnet"//设置pdp参数
OK
at+cgact=1,1//激活该pdp
OK
at+cipstatus?
//查询ip连接情况,共有8路,实际最多支持同时开4路tcpip连接
+CIPSTATUS:
0,IPGPRSACT
1,IPINITIAL
2,IPINITIAL
3,IPINITIAL
4,IPINITIAL
5,IPINITIAL
6,IPINITIAL
7,IPINITIAL
OK
at+cipstart="TCP","101.37.36.158",60000//连接TCP服务器,用户请修改自己的服务器
CONNECTOK
OK
at+cipsend=5,qwert//发送5个字节的字符,注意此种方式只支持可见字符
OK
at+cipsend=5//发送6个字节的数据,此种方式可以发送任意二进制数据
>
OK
at+cipsend//发送字符,以CTRL+Z(16进制的0x1a)结尾
>qwert
OK
+CIPRCV:
4,test//收到服务器发送过来的4个字节,内容是"test",注意也可能是二进制的任意数据
at+cipstatus?
//插叙ip链路状态
+CIPSTATUS:
0,CONNECTOK
1,IPINITIAL
2,IPINITIAL
3,IPINITIAL
4,IPINITIAL
5,IPINITIAL
6,IPINITIAL
7,IPINITIAL
OK
at+cipclose//关闭该链路
OK
at+cipmux?
//查询是否开启多连接
+CIPMUX:
0
OK
at+cipmux=1//开启多链接
OK
at+cipstart="TCP","121.41.97.28",60000//发起第一个TCP连接
+CIPNUM:
0//只有点开启多链接的时候才会有,0为返回的链路号
CONNECTOK
OK
at+cipstart="TCP","121.41.97.28",60001//发起第二路连接
+CIPNUM:
1//只有点开启多链接的时候才会有,1为返回的链路号
CONNECTOK
OK
at+cipstart="TCP","121.41.97.28",60003//发起第三路连接
MANDNORESPONSE!
//指令超时,由于服务器没有开启这个端口
at+cipstatus?
+CIPSTATUS:
0,CONNECTOK
1,CONNECTOK
2,TCP/UDPCONNECTING
3,IPINITIAL
4,IPINITIAL
5,IPINITIAL
6,IPINITIAL
7,IPINITIAL
OK
at+cipclose=3//关闭链路号为3的连接
+CMEERROR:
50//第三路连接没有建立所以返回错误
at+cipclose=2//关闭链路号为2的连接
OK
at+cipstart="TCP","121.41.97.28",60002//发起新的连接
+CIPNUM:
2
CONNECTOK
OK
at+cipstart="UDP","121.41.97.28",60006//发起新的UDP连接
+CIPNUM:
3
UDPBINDOK
OK
at+cipstatus?
+CIPSTATUS:
0,CONNECTOK//可以看到0-3链路号都被占用,建立了4路IP连接
1,CONNECTOK
2,CONNECTOK
3,BINDOK
4,IPINITIAL
5,IPINITIAL
6,IPINITIAL
7,IPINITIAL
OK
at+cipsend=0,5,qwert//链路0发送5个字节的字符,“qwert”,本指令只支持可见字符
OK
+CIPRCV:
0,4,test//链路0,收到服务器发送过来的4个字节,“test”,本指令支持接受任意数据
at+cipclose=2 关闭链路2OKat+cipstatus?
查询链路信息
+CIPSTATUS:
0,CONNECTOK
1,CONNECTOK
2,IPCLOSE
3,BINDOK
4,IPINITIAL
5,IPINITIAL
6,IPINITIAL
7,IPINITIAL
OK
at+ciphcfg?
//查询心跳包配置
+CIPHCFG:
0,10,00,00
1,10,00,00
2,10,00,00
3,10,00,00
4,10,00,00
5,10,00,00
6,10,00,00
7,10,00,00
OK
at+ciphcfg=0,1,112233//设置链路0的心跳发送包为16进制的0x11,0x22,0x33
OK
at+ciphcfg?
+CIPHCFG:
0,10,112233,00
1,10,00,00
2,10,00,00
3,10,00,00
4,10,00,00
5,10,00,00
6,10,00,00
7,10,00,00
OK
at+ciphmode=0,1//启动链路0的心跳包
OK
at+cipsend=3,5,qwert//链路3发送5个字节的字符,“qwert”
OK
at+cipclose=3//关闭链路3
OK
+TCPCLOSED:
1//服务器关闭链路1
OK
at+cipstatus?
+CIPSTATUS:
0,CONNECTOK
1,IPCLOSE
2,IPCLOSE
3,IPCLOSE
4,IPINITIAL
5,IPINITIAL
6,IPINITIAL
7,IPINITIAL
OK
+TCPCLOSED:
0//服务器关闭链路0
OK
at+cipstatus?
+CIPSTATUS:
0,IPCLOSE
1,IPCLOSE
2,IPCLOSE
3,IPCLOSE
4,IPINITIAL
5,IPINITIAL
6,IPINITIAL
7,IPINITIAL
OK
透传模式+心跳设置(单链接)
示例
AT+CCID//查询SIM,CCID用于判断是否插卡
+SCID:
SIMCardID:
898602#4221620070426
OK
AT+CREG?
//查询网络注册情况
+CREG:
1,5//第一个参数1表示允许注册入网;第二个参数5表示已注册,处于漫游状态,如果是1的话,表示已注册本地网络,出现其他参数表示不正常
OK
AT+CGATT=1//附着网络,如果需要上网,这条指令是必选的
+CTZV:
16/05/27,06:
33:
39,+08//基站下发的时间信息GMT时间和时区
OK
AT+CGDCONT=1,"IP","CMNET"//设置PDP参数
OK
AT+CGACT=1,1//激活PDP,正确激活以后就可以上网了
OK
at+cipstart="TCP","120.76.213.49",60000//连接TCP服务器,用户请修改成自己的服务器
CONNECTOK
OK
AT+CIPHCFG?
//查询心跳包的设置
+CIPHCFG:
10,00,00//心跳包的默认设置10,表示10秒发送一次心跳包,00表示发送的包内容,默认是空的,第二个00表示接受的回应包内容,默认也是空的,这2个包必须设置,否则启动不了心跳包
OK
AT+CIPHCFG=1,55FAFBEE//设置发送心跳包内容,长度不能低于3个字节,16进制格式
OK
AT+CIPHCFG=2,55AFBFEE//设置接受回应包内容,长度不能低于3个字节,16进制格式
OK
AT+CIPHCFG=0,15//设置发送心跳包的时间15秒钟
OK
AT+CIPHMODE=1//启动心跳包,该命令只能在连接服务器成功以后用
OK
AT+CIPTCFG?
//查询透传默认参数
+CIPTCFG:
3,200,50,2000//3表示最大尝试发送失败次数,200是重发延时,单位毫秒,50是触发发送的包长度,2000是触发发送时间,单位毫秒,从输入最后一个字符算起,延至超过2000毫秒,系统也会自动发送数据
OK
AT+CIPTMODE=1//启动透传模式,该指令也是只能在连接服务器成功以后使用
OK
SENDDATATOSERVER//发送到服务器的数据
SENDDATATOA6//收到的服务器的数据
+++//退出透传模式,和前一次发送时间超过2秒,输入+++,就可以退出透传模式注意,如果是单片机发送,不要添加换行符,如果是安信可串口调试助手发送,取消掉发送新行的选项,总之不要有换行符
OK
AT+CIPHMODE=0//退出心跳包模式
OK
A9/A9G(gprs)
xx接收
相关指令
ATDxxxxx;//xxx为xx号码
示例打xx
ATDxxxxxxxxxxx
OK
+CIEV:
"CALL",1
+CIEV:
"SOUNDER",1//响铃
+CIEV:
"SOUNDER",0//挂断
+CIEV:
"CALL",0
BUSY//显示BUSY
接到短话
(若想使用来电提醒功能,请使用AT+CLIP=1;注意,该功能必须需要你的SIM卡自带来电提醒功能)
RING
RING
短信设置
相关指令
AT+CPMS="SM","SM","SM"//设置短信存储单元
AT+CMGF=0/1//设置短信格式,1为text格式读取,0为pud格式读取
AT+CMGR=x//读取短信内容,x为第几条短信
AT+CMGL=4/ALL//查看短信列表PUD格式下读取参数为4,txt格式要发送AT+CMGL=ALL
AT+CMGD=1//删除短信。
若果使用AT+CMGD=1,4则为删除所有短信
示例
AT+CPMS="SM","SM","SM"//设置短信存储单元,同时也可以查看短信容量
+CPMS:
0,50,0,50,0,50
OK
AT+CMGF=1//设置为TXT格式读取
OK
+CIEV:
"MESSAGE",1//接收到短信,内容包括xx号码和时间以及内容
+CMT:
"+86xxxxxxxxxxx",,"2017/10/09,09:
14:
52+08"
111
+CIEV:
"MESSAGE",1
+CMT:
"+86xxxxxxxxxxx",,"2017/10/09,09:
16:
25+08"
222
AT+CMGF=0//设置为PUD格式接受
OK
+CIEV:
"MESSAGE",1//以PUD接收到短信,内容包括xx号码和时间以及内容
+CMT:
23
0891683110602305F0240D91687186935218F500007101909061452303B3D90C
+CIEV:
"MESSAGE",1
+CMT:
23
0891683110602305F0240D91687186935218F500007101909071202303341A0D
AT+CMGL=4//列出所有短信->pud格式,使用这条命令参数为4
+CMGL:
1,1,,23
0891683110602305F0240D91687186935218F500007101909041252303B1580C
+CMGL:
2,1,,23
0891683110602305F0240D91687186935218F50000710190906152230332990C
+CMGL:
3,1,,23
0891683110602305F0240D91687186935218F500007101909061452303B3D90C
+CMGL:
4,1,,23
0891683110602305F0240D91687186935218F500007101909071202303341A0D
OK
AT+CMGF=1//设置为TXT格式读取
OK
AT+CMGL=ALL//列出所有短信->pud格式,使用这条命令参数为ALL
+CMGL:
1,"RECREAD","+86xxxxxxxxxxx",,"2017/10/09,09:
14:
52+08"
111
+CMGL:
2,"RECREAD","+86xxxxxxxxxxx",,"2017/10/09,09:
16:
25+08"
222
+CMGL:
3,"RECREAD","+86xxxxxxxxxxx",,"2017/10/09,09:
16:
54+08"
333
+CMGL:
4,"RECREAD","+86xxxxxxxxxxx",,"2017/10/09,09:
17:
02+08"
444
OK
AT+CMGR=1//读取第一条短信
+CMGR:
"RECREAD","+86xxxxxxxxxxx",,"2017/10/09,09:
14:
52+08"
111
OK
AT+CMGR=2//读取第二条短信
+CMGR:
"RECREAD","+86xxxxxxxxxxx",,"2017/10/09,09:
16:
25+08"
222
OK
AT+CMGR=3//读取第三条短信
+CMGR:
"RECREAD","+86xxxxxxxxxxx",,"2017/10/09,09:
16:
54+08"
333
AT+CMGD=1//删除第一条短信
OK
AT+CMGD=2//删除第二条短信谨记删除第一条后,第二条内容不会自动跑到第一条,而是依然占据第二条短信,但是当所有短信都删除后,再接收到短信后,会自动排列到第一条信息的位置
OK
AT+CMGD=3//删除第三条短信
OK
AT+CPMS="SM","SM","SM"//查看一下短信容量
+CPMS:
1,50,1,50,1,50
OK
AT+CMGL=ALL//删除