匿名
未登录
登录
丢石头百科
搜索
查看“A9/A9G AT 指令操作示例”的源代码
来自丢石头百科
名字空间
页面
讨论
更多
更多
页面选项
查看
查看源代码
历史
←
A9/A9G AT 指令操作示例
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
== 模组软复位及关机 == <pre> AT+RST=X //X=1表示软重启,X=2表示关机 </pre> 示例 <pre> AT+RST=1 //软件重启 Init... +CREG: 2 +CTZV:18/03/30,06:59:43,+08 +CREG: 1 +CTZV:18/03/30,06:59:44,+08 OK A9/A9G V02.00.20180327RC Ai_Thinker_Co.LTD READY </pre> 示例2: <pre> AT+RST=2 //运行这条指令模组会进入管断状态,前提是模组的供电管教是VBAT3.5V~4.2V </pre> == 电话接收 == 相关指令 <pre> ATDxxxxx;//xxx为电话号码 </pre> 示例 打电话 <pre> ATD10086 OK +CIEV: "CALL",1 +CIEV: "SOUNDER",1 //响铃 +CIEV: "SOUNDER",0 //挂断 +CIEV: "CALL",0 BUSY //显示BUSY </pre> 接到短话 <pre> (若想使用来电提醒功能,请使用AT+CLIP=1;注意,该功能必须需要你的SIM卡自带来电提醒功能) RING RING </pre> == 短信设置 == 相关指令 <pre> 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 则为删除所有短信 </pre> 示例 <pre> AT+CPMS="SM","SM","SM" //设置短信存储单元,同时也可以查看短信容量 +CPMS: 0,50,0,50,0,50 OK AT+CMGF=1 //设置为TXT格式读取 OK </pre> <pre> +CIEV: "MESSAGE",1 //接收到短信,内容包括电话号码和时间以及内容 +CMT: "+86xxxxxxxxxxx",,"2017/10/09,09:14:52+08" 111 </pre> <pre> +CIEV: "MESSAGE",1 +CMT: "+86xxxxxxxxxxx",,"2017/10/09,09:16:25+08" 222 </pre> <pre> AT+CMGF=0 //设置为PUD格式接受 OK +CIEV: "MESSAGE",1 //以PUD接收到短信,内容包括电话号码和时间以及内容 +CMT: ,23 0891683110602305F0240D91687186935218F500007101909061452303B3D90C +CIEV: "MESSAGE",1 +CMT: ,23 0891683110602305F0240D91687186935218F500007101909071202303341A0D </pre> <pre> 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 </pre> <pre> AT+CMGF=1 //设置为TXT格式读取 OK </pre> <pre> AT+CMGL="ALL" //列出所有短信-> txt格式,使用这条命令参数为ALL +CMGL: 1,"REC READ","+86xxxxxxxxxxx",,"2017/10/09,09:14:52+08" 111 +CMGL: 2,"REC READ","+86xxxxxxxxxxx",,"2017/10/09,09:16:25+08" 222 +CMGL: 3,"REC READ","+86xxxxxxxxxxx",,"2017/10/09,09:16:54+08" 333 +CMGL: 4,"REC READ","+86xxxxxxxxxxx",,"2017/10/09,09:17:02+08" 444 OK </pre> <pre> AT+CMGR=1 //读取第一条短信 +CMGR: "REC READ","+86xxxxxxxxxxx",,"2017/10/09,09:14:52+08" 111 OK </pre> <pre> AT+CMGR=2 //读取第二条短信 +CMGR: "REC READ","+86xxxxxxxxxxx",,"2017/10/09,09:16:25+08" 222 OK </pre> <pre> AT+CMGR=3 //读取第三条短信 +CMGR: "REC READ","+86xxxxxxxxxxx",,"2017/10/09,09:16:54+08" 333 </pre> <pre> AT+CMGD=1 //删除第一条短信 OK </pre> <pre> AT+CMGD=2 //删除第二条短信 谨记 删除第一条后,第二条内容不会自动跑到第一条,而是依然占据第二条短信,但是当所有短信都删除后,再接收到短信后,会自动排列到第一条信息的位置 OK </pre> <pre> AT+CMGD=3 //删除第三条短信 OK </pre> <pre> AT+CPMS="SM","SM","SM" //查看一下短信容量 +CPMS: 1,50,1,50,1,50 OK </pre> <pre> AT+CMGL="ALL" //删除了3条之后,查看短信列表,只剩1条 +CMGL: 4,"REC READ","+86xxxxxxxxxxx",,"2017/10/09,09:17:02+08" 444 OK </pre> <pre> AT+CMGD=1,4 //删除所有短信 OK </pre> <strong>发送短信</strong> <pre> AT+CMGF=1 //文本方式发送 AT+CMGS="xxxxxxxxxxx(电话号码)" //返回>,然后输入要发送的txt内容,发送数据,之后请取消”发送新行”选项,勾选"HEX(16进制发送)"选项,最后发送0x1a即可。 </pre> 教程:[https://docs.ai-thinker.com/_media/gprs/send_message_chinese.docx 中文发送短信] <pre> 另外可以使用PUD的编码方式发送信息: AT+CMGS=XX //要发送的字节数 >xxxxxxxxxxxxxxxxxxxxx //PUD码(最后的操作方式和txt操作方式相似) +CMGS: 0 OK </pre> == 基站定位(含简化指令) == 相关指令 <pre> AT+CREG? //查询网络的注册状态 At+LOCATION=X(简化版) 注意,使用基站定位功能之前,必须先AT+CGATT=1; AT+CGDCONT=1,"IP","cmnet" ;AT+CGACT=1,1;三条指令完成附着网络以及激活之后才可执行。 </pre> 示例 <pre> 优化前指令-> 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进制,第一个字符串得到的是LAC,第二个字符串得到的是CI 基站定位可以到该网站查询:http://www.gpsspg.com/bs.htm </pre> <pre> 简化版指令->单独使用AT+LOCATION=1,不必设置AT+CREG=2, AT+LOCATION=1(return:<latitude>,<longitude>OK) xx.xxxxx,xxx.xxxxxx(小数点后固定为6位) OK 直接返回经纬度 无需转换 ->at+location这句指令需要联网获取地理位置信息,所以时间的长久取决于网络情况的好坏,而且在使用前如果没有手动附着激活的话,它会自动去做这两件事情,要的时间就更长了。想要可靠有快速,建议先使用at+cgatt=1; at+cgdcont=1,"IP","cmnet" ;at+cgact=1,1;附着激活并保证具备联网能力 </pre> == 获取基站下发时间 == 相关指令 AT+CCLK? 指令解读 该指令在内部进行处理,在模块初始化时,模块获取了基站下发的时间后,将该时间存储在芯片的RTC寄存器中,使用AT+CCLK?即可读取出时间。 注意使用联通卡获取的时间是有问题的。 示例 <pre> AT+CCLK ? +CCLK: "17/10/07,02:50:55+08" //该时间为零时区时间,17年10月7日2点50分55秒。+08为时区,我们这里是东八区,所以本地时间是10点50分55秒 OK </pre> == HTTP == 相关指令: <pre> AT+HTTPGET=<url> //统一资源标志符,可以是域名或者是IP地址 AT+HTTPPOST=<url>,<content_type>,<body_content> //<content_type> : 网络文件的类型和网页的编码的内容类型 //<body_content> : body的文本 </pre> 示例 <pre> AT+CGATT=1 //附着网络,如果需要上网,这条指令是必选的 +CGATT:1 OK </pre> <pre> AT+CGDCONT=1,"IP","CMNET" //设置PDP参数 OK </pre> <pre> AT+CGACT=1,1 //激活PDP,正确激活以后就可以上网了 OK </pre> <pre> AT+HTTPGET="http://wiki.ai-thinker.com/gprs_download" //连接网站,请求网站资源 OK 紧接着接受的是服务器响应的信息 </pre> == MQTT == 示例: <pre> AT+CGATT=1 //附着网络 OK </pre> <pre> AT+CGDCONT=1,"IP","CMNET" //设置PDP参数 OK </pre> <pre> AT+CGACT=1,1 //激活PDP,正确激活以后就可以上网了 OK </pre> <pre> AT+MQTTCONN="www.anthinkerwx.com",1883,"12345",120,0,"Ai-thinker","123456" //客户端等待和连接服务器,同时发送CONNECT OK// 注意:(MQTT的服务器需要自己搭建) </pre> <pre> AT+MQTTPUB="test","124563",0,0,0 //客户端向服务端传输一个应用消息 +MQTTPUBLISH: 1, test, 6, 124563 OK </pre> <pre> AT+MQTTSUB="test",1,0 //客户端向服务端发送SUB报文用于创建订阅 OK </pre> <pre> AT+MQTTDISCONN //客户端发给服务端的DISCONNECT控制报文,表示客户端正常断开连接 </pre> == 透传模式和心跳包的设置 == Init… <pre> +CREG: 3 +CIEV: service, 0 +CIEV: roam, 0 +CREG: 3 +CIEV: service, 1 +CIEV: roam, 0 +CREG: 1 +CREG: 0 +CREG: 1 A9 V01.03.20170926R //固件版本信息 Ai Thinker Co.LTD READY //初始化完成标志 前面的+CIEV: service, 1等等,是网络注册信息,在网络情况不好的时候,会在READY后面输出,没有影响。出现 +CIEV: service, 1;+CREG: 1;表明SIM初始化成功,网络正常。 初始化过程中如果没有检测到SIM卡,初始化信息中会出现NO SIM CARD </pre> <pre> AT+CCID //查询SIM ,序列号唯一,可以用来判断卡是否正常,如果是从安信可购买的物联网卡,可以用此序列号在官网查询电话号码,充值缴费等等。 +CCID: 898607B1101700823754 OK </pre> <pre> AT+CREG=1 // =1的时候是查询网络状态,模组上电默认为1 AT+CREG? //查询网络注册情况 +CREG: 1,5 //第一个参数1表示允许注册入网;第二个参数5表示已注册,处于漫游状态,如果是1的话,表示已注册本地网络,出现其他参数表示不正常 OK </pre> <pre> AT+CSQ //查询信号强度 第一个参数为信号强度值 +CSQ: 31,99 //信号强度取值为0-31,信号强度最好保持在23以上 OK </pre> <pre> AT+CGATT=1 //附着网络,如果需要上网,这条指令是必选的 +CGATT:1 OK </pre> <pre> AT+CGDCONT=1,"IP","CMNET" //设置PDP参数 OK </pre> <pre> AT+CGACT=1,1 //激活PDP,正确激活以后就可以上网了 OK </pre> <pre> AT+CIPSTART="TCP","122.114.122.174",46875 //连接TCP服务器, CONNECT OK //此处为安信可透传云服务器,请自行修改端口 OK </pre> <pre> AT+CIPHCFG? //查询心跳包的设置 +CIPHCFG:0,, //心跳包的默认设置发送心跳包时间间隔为0,后面为空 OK </pre> <pre> AT+CIPHCFG=1,"55FAFBEE" //设置发送心跳包内容,长度不能低于3个字节,16进制格式 OK </pre> <pre> AT+CIPHCFG=2,"55AFBFEE" //设置接受回应包内容,长度不能低于3个字节,16进制格式 OK </pre> <pre> AT+CIPHCFG=0,15 //设置发送心跳包的时间15秒钟 OK </pre> <pre> AT+CIPHCFG? //查询心跳包的设置 +CIPHCFG:15,55FAFBEE,55AFBFEE //通过上面指令设置发送间隔为15秒,心跳包与回应包后两位参数 OK </pre> <pre> AT+CIPHMODE=1 //启动心跳包,该命令只能在连接服务器成功以后用 OK </pre> <pre> AT+CIPTCFG? //查询透传默认参数 +CIPTCFG:3,200,50,2000 //3表示最大尝试发送失败次数,200是重发延时,单位毫秒,50是触发发送的包长度,2000是触发发送时间,单位毫秒,从输入最后一个字符算起,延至超过2000毫秒,系统也会自动发送数据 OK //请注意,心跳包的设置不是必须的,如果想自己发送心跳包或者不发送心跳包,可以不设置这些模组自带的心跳包指令。另外,心跳包的发送包设置后,是模组自动发送的,不需要人为控制,但是回应包是需要服务器设置发给模组的,即需要写代码定时返回数据给模组。如果模组超过三次以上没有接受到服务器发回来的回应包,模组会自动关闭心跳包,模组会接收到这样的数据 +CIPHMODE:0 ; OK. </pre> <pre> AT+CIPTMODE=1 //启动透传模式,该指令也是只能在连接服务器成功以后使用 OK </pre> <pre> SEND DATA TO SERVER //发送到服务器的数据 SERVER SEND DATA TO DEVICE //收到的服务器的数据 </pre> <pre> +++ //退出透传模式,和前一次发送时间超过2秒,输入+++,就可以退出透传模式 注意,如果是单片机,不要加回车换行符,如果用的是安信可的串口调试工具,请取消勾选发送新行 OK </pre> <pre> AT+CIPHMODE=0 //退出心跳包模式 OK </pre> == 多链接 == 示例 <pre> AT+CCID //查询CCID值 用来检测是否插入SIM、 +CCID: 898602B8191790486325 //此ID唯一 </pre> <pre> AT+CREG? //查询SIM的网络注册状态 +CREG: 1,5 //第一个参数1表示允许注册入网;第二个参数5表示已注册,处于漫游状态,如果是1的话,表示已注册本地网络,出现其他参数表示不正常 OK </pre> <pre> AT+CSQ //查询信号强度 第一个参数为信号强度值 +CSQ: 31,99 //信号强度取值为0-31,信号强度最好保持在23以上 OK </pre> <pre> AT+CSQ //查询信号强度 第一个参数为信号强度值 CSQ: 31,99 //信号强度取值为0-31,信号强度最好保持在23以上 OK </pre> <pre> AT+CGATT=1 //附着网络,如果需要上网,这条指令是必选的 +CGATT:1 OK </pre> <pre> AT+CGDCONT=1,"IP","CMNET" /设置PDP参数 OK </pre> <pre> AT+CGACT=1,1 //激活PDP,正确激活以后就可以上网了 OK </pre> <pre> AT+CIPSTATUS? //查询ip连接情况,共有8路,实际最多支持同时开4路tcpip连接 +CIPSTATUS: 0,IP GPRSACT 1,IP INITIAL 2,IP INITIAL 3,IP INITIAL 4,IP INITIAL 5,IP INITIAL 6,IP INITIAL 7,IP INITIAL OK AT+CIPSTART="TCP","122.114.122.174",36779 //连接TCP服务器,用户请修改自己的服务器 CONNECT OK OK AT+CIPSEND=5,"qwert" //发送5个字节的字符,注意此种方式只支持可见字符 OK </pre> <pre> AT+CIPSEND=5 //发送5字节的数据,此种方式可以发送任意二进制数据 12345 OK </pre> <pre> AT+CIPSEND//发送字符,以CTRL+Z(16进制的0x1a)结尾 qwert OK </pre> <pre> +CIPRCV:21,Server Send Data Test //收到服务器发送过来的数据,内容也可以是二进制任意数据 AT+CIPSTATUS? //查询链路状态 +CIPSTATUS: 0,CONNECT OK 1,IP INITIAL 2,IP INITIAL 3,IP INITIAL 4,IP INITIAL 5,IP INITIAL 6,IP INITIAL 7,IP INITIAL OK </pre> <pre> AT+CIPCLOSE //关闭该链路 OK </pre> <pre> AT+CIPMUX? /查询是否开启多连接 +CIPMUX:0 OK AT+CIPMUX=1 //开启多链接 OK AT+CIPSTART="TCP","122.114.122.174",36779 //发起第一个TCP连接 +CIPNUM:0 //只有点开启多链接的时候才会有,1为返回的链路号 CONNECT OK OK </pre> <pre> AT+CIPSTART="TCP","www.baidu.com",80 //发起第二路连接 +CIPNUM:1 //只有点开启多链接的时候才会有,1为返回的链路号 CONNECT OK OK </pre> <pre> AT+CIPSTART="TCP","www.hao123.com",80 //发起第三路连接 +CIPNUM:2 //只有点开启多链接的时候才会有,2为返回的链路号 CONNECT OK OK </pre> <pre> AT+CIPSTATUS +CIPSTATUS: 0,CONNECT OK 1,CONNECT OK 2,CONNECT OK 3,IP INITIAL 4,IP INITIAL 5,IP INITIAL 6,IP INITIAL 7,IP INITIAL OK </pre> <pre> AT+CIPCLOSE=3 //关闭链路号为3的连接 +CME ERROR:50 //链路3实际上没有创建 </pre> <pre> AT+CIPCLOSE=2 //关闭链路号为2的连接 OK </pre> <pre> AT+CIPCLOSE=1 //关闭链路号为1的连接 OK </pre> <pre> AT+CIPSTATUS +CIPSTATUS: //只剩下链路0,其他两路关闭 0,CONNECT OK 1,IP CLOSE 2,IP CLOSE 3,IP INITIAL 4,IP INITIAL 5,IP INITIAL 6,IP INITIAL 7,IP INITIAL OK AT+CIPSTART="TCP","www.baidu.com",80 +CIPNUM:1 CONNECT OK OK AT+CIPSTART="TCP","www.hao123.com",80 +CIPNUM:2 CONNECT OK OK AT+CIPSTART="UDP","121.41.97.28",60006 +CIPNUM:3 UDP BIND OK OK AT+CIPSTATUS? +CIPSTATUS: //可以看到0-3链路号都被占用,建立了4路IP连接 0,CONNECT OK 1,CONNECT OK 2,CONNECT OK 3,SOCKET OK 4,IP INITIAL 5,IP INITIAL 6,IP INITIAL 7,IP INITIAL OK </pre> <pre> AT+CIPSEND=0,5,"qwert"//链路0发送5个字节的字符,"qwert",本指令只支持可见字符 OK </pre> == A9/A9G使用安信可微信公众号以及A9Tracker_app获取定位信息 == 相关指令 <pre> AT+GIZQRCODE //获取二维码字符串,用来制作二维码扫码绑定,或者直接在微信上手动该字符串输入绑定 AT+GIZTRACKER=1,0,10,1 //连接服务器 </pre> <pre> http://wiki.ai-thinker.com/gprs/a9g/a9tracker APP对接教程 http://wiki.ai-thinker.com/gprs/a9g/MP 微信对接教程 </pre> 指令解析 <pre> AT+GIZTRACKER=< on/off >,[server],[upload interval],[use LBS],[pk],[ps] </pre> <pre> n/off 值:0/1.该参数为0时关闭,设置为1为自动上传 serve 选择服务器:0为安信可服务器;1为自定义服务器(第一次使用的时候必须附带PK,PS参数,连接成功后,这两个参数会被保存) up in 上传数据的时间间隔(s),默认值为0(不上传) use LBS 值:0/1;设置1,从LBS获得定位信息;设置0,从GPS获取定位信息。当GPS信号弱,可以选择从LBS获取信息(A9只能从LBS获取信息)。默认值为0。 pk ps 产品的key 和secret.这些是在自己创建产品时用到的,详见9/A9G十分钟对接机智云创建属于自己产品的程:http://www.jianshu.com/p/e3d86a263be5 </pre> 示例 <pre> AT+GIZQRCODE +GIZQRCODE:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx//一长串字符串 </pre> <pre> AT+GIZTRACKER=1,0,10,1 —>参数3为上传定位信息的时间间隔,参数4为选择使用基站定位功能还是GPS功能上传定位信息1->LBS,0->GPS +GIZTRACKER:Start —>返回值 OK +GIZWITS:sign in end +GIZWITS:conn end —>连接服务器成功 OK </pre> <pre> 注意:该命令会自动保存,开机之后自动运行该命令连接服务器。如果需要停止运行使用At+GIZTRACKER=0; </pre> == GPS定位 == 相关指令 <pre> AT+GPS=1,开 GPS AT+GPS=0,关闭 GPS AT+GPS? ,查询 GPS 的状态 AT+GPSRD=N,N 是数字表示 N 秒输出一条 NEMA 信息从 AT 串口。 AT+LOCATION=X //X=1获取的是基站的地址,X=2是获取的是GPS的地址 注意,在打开GPS之后,模组的GPS_TXD会以9600波特率默认输出定位信息,这个不影响整个模组的波特率,例如A9G模组的工作波特率是115200,发送AT指令开启GPS,这个时候GPS_TXD会以9600波特率输出信息,AT串口依然是115200。 另外,请注意,该定位信息会输出GNGGA GNRMC而不是 GPGGA和GPRMC,模组使用的是混合定位系统,包括了GPS,BDS和GNNS(全球导航系统)。解释一下输出信息头的组成,例如GPGGA,拆分为GP+GGA->定位系统+输出数据类型 ,GP为GPS定位系统,GGA为时间、位置、卫星数量的输出信息,同理GNGGA即为GN+GGA->定位系统+输出数据类型,GN为全球导航系统, GGA为时间、位置、卫星数量的输出信息,其他指令请依次类推。 最后,模组默认的是GPS+BDS混合模式输出,那么输出的信息即为GN开头的数据,如果设置为单独模式,则为该模式开头的数据输出,例如设置为GPS模式,则输出信息为GPGGA。 </pre> 示例 <pre> AT+GPS=1 //开启GPS功能 OK AT+GPSRD=N //N秒输出一条 NEMA 信息 从 AT 串口 +GPSRD: $GNGGA,000840.261,2236.3719,N,11350.4081,E,0,0,,153.2,M,-3.2,M,,*4F $GPGSA,A,1,,,,,,,,,,,,,,,*1E $BDGSA,A,1,,,,,,,,,,,,,,,*0F </pre> <pre> $GPGSV,1,1,00*79 $BDGSV,1,1,00*68 </pre> <pre> $GNRMC,000840.261,V,2236.3719,N,11350.4081,E,0.000,0.00,060180,,,N*5C $GNVTG,0.00,T,,M,0.000,N,0.000,K,N*2C AT+LOCATION = 2 //获取GPS的地址信息,前提是GPS能够看得到卫星才能够返回,否则会返回GPS NOT FIX NOW </pre> == GPS扩展指令 == 相关指令 <pre> AT+GPSMD=1 GPS模式(暂时不支持单独的BD模式,bd系统暂时只覆盖亚洲) AT+GPSMD=2 GPS+BD模式 模组默认的是GPS+BDS混合模式输出,那么输出的信息即为GN开头的数据,如果设置为单独模式,则为该模式开头的数据输出,例如设置为GPS模式,则输出信息为GPGGA。 </pre> 示例 <pre> AT+GPS=1 先打开GPS AT+GPSMD=x x=1或者2,选择开启那个模式, 默认为GPS+BDS模式 At+GPSRD=x 数字x表示 x 秒输出一条 NEMA 信息从 AT 串口 </pre> == GPS的低功耗模式 == 相关指令 <pre> AT+GPSLP=x //GPS的低功耗设置,x的取值分别是0,1,2 AT+GPSLP=0 //正常模式 ---- 电流的值测试在0.063A左右 AT+GPSLP=1 //串口低功耗模式 AT+GPSLP=2 //GPS低功耗模式 ---- 电流的值测试在0.034A左右 //模组GPS的默认的默认模式是正常模式,设置GPS模式的时候不会立即生效,需要过一段时间才会生效 </pre> 示例: <pre> AT+GPS=1 //开启GPS AT+GPSRD=10 //10秒输出一条 NEMA 信息 AT+GPSLP=2 //设置GPS模式为低功耗模式 </pre> == AGPS == 相关指令 <pre> AT+AGPS=1,开 AGPS,同时会打开 GPS 使用时先关闭GPS功能。 AT+AGPS=0,关闭 AGPS, AT+AGPS? ,查询 AGPS 的状态 AT+GPSRD=N,N 是数字表示 N 秒输出一条 NEMA 信息从 AT 串口。 </pre> <pre> 注意,AGPS是辅助定位功能,加快GPS的定位时间,在使用之前建议先附着和激活网络,因此,要先使用命令附着和激活网络。 注意,在打开GPS之后,模组的GPRS_RXD(因为GPS的芯片是接在gprs模组上进行通信,所以模组的GPRS_RXD实际上是gps芯片的TXD引脚)会以9600波特率默认输出定位信息,这个不影响整个模组的波特率,例如A9G模组的工作波特率是115200,发送AT指令开启GPS,这个时候GPRS_TXD会以9600波特率输出信息,AT串口依然是115200。 </pre> 示例: <pre> AT+CGATT=1 //附着网络,如果需要上网,这条指令是必选的 +CGATT:1 OK </pre> <pre> AT+CGDCONT=1,"IP","CMNET" //设置PDP参数 OK </pre> <pre> AT+CGACT=1,1 //激活PDP,正确激活以后就可以上网了 OK </pre> <pre> AT+GPS=0 OK AT+AGPS=1 +AGPS:GPD OK +AGPS:OK OK AT+GPSRD=N OK +GPSRD: $GNGGA,050041.129,2236.1052,N,11350.2770,E,0,0,,3.2,M,-3.2,M,,*4D $GPGSA,A,1,,,,,,,,,,,,,,,*1E $BDGSA,A,1,,,,,,,,,,,,,,,*0F </pre> <pre> $GPGSV,4,1,14,05,59,296,,02,53,008,,06,37,068,,19,35,142,*74 $GPGSV,4,2,14,13,32,180,,12,28,252,,20,20,255,,25,15,288,*7F </pre> <pre> $GPGSV,4,3,14,17,14,145,,29,11,323,,09,10,040,,15,08,205,*76 $GPGSV,4,4,14,30,03,112,,193,,,*75 $BDGSV,1,1,00*68 </pre> == GPS指示灯的状态 == 相关指令 <pre> AT+GPNT=x //设置GPS指示灯的状态,x=0或者x=1; AT+GPNT=0 //GPS灯为闪烁状态 AT+GPNT=1 //GPS灯为电平状态 </pre> 示例 <pre> AT+GPNT=? //查询x可以设置的值 +GPNT: (0:led flash,1:led notice) OK </pre> <pre> AT+GPNT=0 //设置GPS灯的状态 OK </pre> == 设置模组的低功耗模式 == 相关指令: <pre> AT+SLEEP=x //设置模组的低功耗模式,x的取值分别是0,1,2 AT+SLEEP=0 //关闭低功耗模式 --- 进入低功耗的电流值是00.213A AT+SLEEP=1 //进入GPIO低功耗模式,GPIO25引脚拉低进入模组低功耗,引脚拉高将退出低功耗,GPIO25默认是高电平 AT+SLEEP=2 //串口低功耗模式,可以通过串口唤醒 ---- 还有那么一点问题******** 注意: 进入串口低功耗模式,在该模式串口可以接收和发送数据,模组会在低功耗和正常模式下正常切换。 进入GPIO口低功耗模式,在接受到数据。短信,电话不会被唤醒,需要控制引脚拉高,退出低功耗模式 GPIO26用于低功耗模式的通知GPIO(如果进入了GPIO低功耗模式,通过用示波器连接GPIO26引脚,可以检测GPIO26引脚的电平判断是否收到数据) </pre> 示例1(GPIO低功耗) <pre> AT+SLEEP=1 //GPIO低功耗模式 OK //发送命令成功之后,将GPIO25引脚和GND引脚进行相连,之后继续发送AT指令是没有任何效果的: </pre> 示例2(串口低功耗) <pre> AT+SLEEP=2 //串口低功耗模式 OK //进入串口低功耗的时候,模组消耗的电流会降低,但是还是可以发送数据 AT OK //模组发送数据,会自动退出低功耗,此时消耗电流又会升高 </pre> 教程:[http://www.jianshu.com/p/e3d86a263be5 A9/A9G GPRS模块10分钟使用机智云开发M2M应用教程]
返回至
A9/A9G AT 指令操作示例
。
导航
导航
首页
最近更改
随机页面
MediaWiki帮助
首页
首页
树莓派
主机
配件包
外壳
键鼠
电源
扩展板
显示屏
墨水屏
摄像模块
通信模块
继电器
电机驱动板
游戏机
产品分类
树莓派
Arduino
micro:bit
STM32
Espressif
WiFi模块
蓝牙模块
无线模块
LoRa模块
4G模块
GSM
GPRS
以太网
导航模块
北斗卫星
GPS
LCD
墨水屏
OLED
摄像头
USB模块
串口模块
RS232
RS485
CAN
传感器
温度模块
湿度模块
气压模块
继电器
电机模块
指纹模块
电平转换
音频模块
编程器
Wiki工具
Wiki工具
特殊页面
页面工具
页面工具
用户页面工具
更多
链入页面
相关更改
页面信息
页面日志