文章目录
- 1. 背景介绍
- 1.2 AT的命令格式
- 1.3 AT指令用法
- 1.3.1 指令执行结果
- 1.2 CP 常用AT指令
- 1.2.1 CP 模式设置
- 1.2.2 网络相关
- 1.2.3 IP获取
- 1.2.4 Band 设置
- 1.2.5 电话相关
- 1.2.6 SIM卡检测
- 1.2.7 cmwap 和cmnet
- 1.2.8 AT 写 IMEI
1. 背景介绍
AT 命令一般分为三种:
- Command //AT命令。
- responses //AT命令的返回。
- an unsolicited result code //是主动上报的AT命令。
如:AT+CEREG=<n>
, 这里是对系统进行某些设置 (<n>
是AT命令的参数)
+CEREG
: <stat>
是主动上报的AT命令
1.2 AT的命令格式
AT指令格式:AT指令都以”AT”开头, 以(即\r
,回车符)结束,模块运行后,串口默认的设置为:
- 8 位数据位;
- 1位停止位、
- 无奇偶校验位、硬件流控制(CTS/RTS).
note:为了发送AT命令, 最后还要加上 (即\n,换行符),这是串口终端要求。有一些命令后面可以加额外信息,如电话号码:ATD10086。
1.3 AT指令用法
- 测试命令(Test Command)
在AT指令后面加上“=?
”即构成测试命令。例如下面命令会列举出所有支持的字符集。
“AT+CSCS=?”
- 读取命令(Read Command)
在AT指令后面加上“?
”即构成读取命令。例如下面命令会列举出当前设置。
“AT+CSCS?”
- 执行命令(Execute Command)
一般而言在AT指令后加上“=
”及命令参数即可。有些命令例如AT+CMGR
命令没有参数,直接就可以执行。
AT+CFUN=4 //飞行模式
AT_CMGR
1.3.1 指令执行结果
每个AT命令执行后, 通常DCE都给状态值, 用于判断命令执行的结果。AT返回状态包括三种情况:
- OK, 表示AT命令执行成功,如:
AT+CPIN
:
+CPIN: READY //sim 卡检测到
OK
- ERROR, 表示AT命令执行失败
- 命令相关的错误原因字符串. 返回状态前后都有一个字符.
- NO DIAL TONE 只出现在ATD命令返回状态中, 表示没有拨号音, 这类返回状态要查命令手册
- 一些命令本身是要向DCE查询数据,数据返回时,一般是+打头命令。 返回格式:
+ 命令 : 命令结果
如: AT+CMGR=8
(获取第8条信息),返回:
+CMGR: “REC UNREAD”,"+8613508485560",“01/07/16,15:37:28+32”,Once more
1.2 CP 常用AT指令
1.2.1 CP 模式设置
ATE1=1
: 打开回显
AT+ CUFN?
: 用来查看当前系统状态,返回值是1表示正常模式,返回值4表示飞行模式,
AT+CFUN=0
:关掉CP
AT+ CFUN=4
: 设置系统进入飞行模式
1.2.2 网络相关
AT+CSQ=?
:查询网络质量
+CSQ:<rssi>, <ber>
rssi:31 -51 dBm or greater, 99 not known or not detectabl
ber:99 not known or not detectable
AT+CPIN
: 搜索SIM卡命令,查询SIM是否准备好。
+CPIN: READY //sim 卡检测到
OK
AT+CREG?
:查看系统是否驻网的命令,
+CREG: 2,1,"18c2","0e752e90",7
OK
AT+COPS?
: 设置网路方式,也是查看系统是否驻网的命令,
+COPS: 0,2,"46000",7 //驻网成功,
OK
note:目前我们DKB板子之后SIM查到背面才可以使用ATD10086;打电话。
AT+CIREG?
:
+CIREG: <n>,<reg_info> [,<ext_info>]
n: 0 disable reporting; 1 enable reporting
reg_info:0 IMS not registered; 1 registered.
1.2.3 IP获取
AT+GETIP=<CID>
:获取IP
AT+CGDCONT?
: 查看4G是否可以上网, 可以看到DKB是可以访问外网的,IP地址:191.153.154.241
2. 客户可以自己建立socket通过4G来访问外网。
3. 或者客户可以通过Wireshark 抓取数据包来看。
+CGDCONT: 1,"IPV4V6","ctnet.MNC011.MCC460.GPRS",
"100.114.66.138 254.128.0.0.0.0.0.0.0.1.0.2.181.153.154.241",0,0,,,,
AT+CGDCONT=1,"IP","CMNET"
: 设置APN无线接入点.
AT+CGDCONT=1,"IP","cmwap"
OK
返回一个 ok 表示modem接通正常,
- IP: 表示使用因特网协议,
- PPP: 表示点对点协议。如 AT+CGDCONT=1,”PPP”,”cmwap” 点对点协议 wap 接入点。
- CMWAP:China Mobile Wireless Application Protocol,中国移动人为划分的两个GPRS接入方式之一,是为手机WAP上网而设立的。是手机上网使用的接入点的名称。CMWAP使用HTTP代理协议和WAP网关协议可以访问到Internet。
1.2.4 Band 设置
AT*BAND=X
:
1)发送at*band=0
(设置为GSM单模)
2)发送at*band=5
(设置为LTE单模)
3)发送at*band=8
(设置为GSM+LTE双模),根据当前的网络信号情况自动选择GSM或者LTE,优先LTE. 默认是at*band=8
1.2.5 电话相关
ATH
: 挂电话命令
+CLCC: 1,0,2,0,0,"112",129,"",0,0
OK
/*Indicates a disconnect for Call Clearing or a Call Failed for*/
/* an outgoing call.*/
NO CARRIER
+CSQ:31,99
1.2.6 SIM卡检测
AT*SIMDETEC=1
//–Detect Sim1
*SIMDETEC:1,SIM
OK //检测到sim卡1
AT*SIMDETEC=2
//Detect Sim2
1.2.7 cmwap 和cmnet
wap接入点cmwap和cmnet有什么不同?
WAP是一种无线网络应用协议,而GPRS是实现WAP应用的一种网络传输技术方式。
CMWAP 和 CMNET 只是中国移动人为划分的两个wap接入方式。前者是为手机WAP上网而设立的,后者则主要是为PC、笔记本电脑、PDA等利用GPRS上网服务。
(1) 连网方式不同
就是说通过cmwap的方式访问,需要走移动的网关通过http协议去连接,这样的后果就是速度会变慢,而通过cmnet来连接的,就是直接连接到internet上的服务器,速度会比cmwap的快一些。
1.2.8 AT 写 IMEI
**IMEI:**国际移动设备识别码(International Mobile Equipment Identity)是手机硬件的一个手机序列号,串号,用于在移动电话网络中识别每一部独立的手机等移动通信设备,类似我们的身份证,是手机硬件的唯一标识。换句话说一个手机对某一个软件的使用权限是唯一的,一个手机一个手机号码绑定一次。
- 一般写IMEI是在产线上,产线本来就是
CFUN=0
状态下,必须飞行模式才能写IMEI