一、一般性AT指令
ATE、ATQ、ATV指令
ATE0 // 回显模式关闭。
OK // ATE1设置回显模式打开,一般客户跑程序都会将回显关闭处
理,特别是TCP/IP和ppp拨号类应用。
ATQ0 // 设置ATQ0后每条AT执行后都会有相应返回,比如OK、send
OK ok等提示信息。
ATQ1 // 设置ATQ1意味模块每条AT指令执行后不会有有任何返回。
ATV0 // 设置ATV0,每条AT执行后返回的是数字信息,如0 1 2 3 4等
0
ATV1 // 设置ATV1,每条AT执行后返回的是字符信息,如ok ring
OK connect等
模块默认ATE1 ATQ0 ATV1,客户可根据需要进行设置。
AT+CFUN设置模块功能
AT+CFUN=?
+CFUN: (0,1,4),(0-1) // 默认参数1,全部功能。
OK
AT+CFUN=0,AT+CFUN=1 //重启模块射频,可以重新注册网络
AT+CFUN=1,1
IIII //软件复位模块重启标志性提示,波特率为115200时才会出现。
RDY
OK
+CFUN: 1
+CPIN: READY // 如果是固定波特率,模块重启也会上报这些信息。
AT+IPR固定波特率
SIM900系列模块所有软件版本出厂默认自适应波特率,客户初次使用使用可以根据mcu端波
特率固定模块波特率。
AT+IPR=?
+IPR: (),(0,1200,2400,4800,9600,19200,38400,57600,115200)
OK
AT+IPR=115200
OK
如果个别客户在使用过程中mcu和模块无法正常通讯,建议客户端设计将DTR引脚开机默认
置低电平,应该有很大改善,待可以正常AT通讯,使用AT+IPR固定模块波特率。
AT+CMEE上报详细错误信息
AT+CMEE=?
+CMEE: (0-2)
OK
AT+CMEE=2
OK
AT+CSQ?
+CME ERROR: operation not allowed
客户在程序设计时,可以考虑初始化加入该AT,可以根据返回的大致意思,判断AT指令是哪方面的error。
IMEI号查询、修改及说明
• AT+GSN // 查询模块 IMEI 号,仅仅是查询而已
012207000080280
OK
• AT+SIMEI? // 查询模块 IMEI 号,可通过该指令修改 IMEI 号,最多可修改 3 次。
012207000080280
OK
• AT+SIMEI="012207000080280"
OK
IMEI为TAC(6位)+ FAC(2位)+ SNR(6位)+SP(1位)组成。
IMEI(International Mobile Equipment Identity)是国际移动设备身份码的缩写,国际移动装备
辨识码,是由15位数字组成的"电子串号",它与每个模块一一对应。
AT+CCID显示CCID(SIM卡背面20为数字)
• AT+CCID
89860081090772182604
OK
SIM卡背面20为数字所代表的含义(不过目前市面上SIM卡号段繁多,目前也无法对应起来,
仅供参考):
前6位:898600中国移动;898601中国联通
第7位:业务接入号,对应于134~139中的4、5、6、7、8、9;
第8位:SIM卡的功能位:一般为0,现在的预付费SIM卡为1;
第9、10位:各省的编码;
第11、12位:年号;
第13位:供应商代码;
第14—19位:用户识别码;
第20位:校验位。
AT+GSV、AT+GMR查询模块软件版本
AT+GSV
SIMCOM_Ltd
SIMCOM_SIM900
Revision:1137B09SIM900M64_ST
OK
或
AT+GMR
Revision:1137B09SIM900M64_ST
OK
Call Ready // 意味着模块初始化已经完成,可以进行语音类功能操作,如ATD拨号。
AT+CPIN输入pin码
AT+CLCK设置pin码,取消pin码
AT+CLCK=“SC”,1,“1234“ // 设置pin码,一般建议不要随意设置SIM的PIN码
OK
AT+CPIN?
+CPIN: SIM PIN
OK
•
AT+CPIN="1234“
OK
注意:SIM卡设置pin后,如果3次输入pin码失败,需要输入puk码,puk输入10次无效SIM卡
无效,只能重新补卡。
AT+CLCK=“SC”,0,“1234“ // 取消pin码设置。
OK
AT+CSQ信号质量查询
AT+CSQ // 模块开机后注册网络前,请先查询改指令。
+CSQ: 23,0 // 参数1:RSSI,参数2:ber
OK
设置CSQ值URC自动操作如下:
AT+EXUNSOL=“SQ”,1 // 该参数一般建议设备比较固定的应用,如车载、跟踪器、
OK 手持设备等,在动态过程中小区切换、网络覆盖强弱等
因素,CSQ值将不停上报,可能会影响客户的判断。
+CSQN: 12,0
+CSQN: 14,0
+CSQN: 16,0
首先说误码率(ber),其范围0~7,待机状态下如果查询CSQ也存在误码率,只能说客户的产
品射频干扰太大;一般只有在拨打电话瞬间才会有较高的误码率。
AT+CREG网络注册信息
AT+CREG=1 // 开启显示网络注册,当模块注册网络、掉网会有URC上报信息。
OK
+CREG: 1,1 // 模块是否注册网络,主要看第二个参数,返回1或5表示注册网
络,其它2 3 4则表示模块未注册网络。
AT+CREG=2 // 设置自动上报,当模块注册网络、掉网、小区切换均有URC上
OK 报信息。
+CREG: 2,1,“144F”,“C3E9“ // 参数3:lac,参数4:cellid
注意: 若查询返回+CREG: 0,5,则表示SIM卡处于漫游状态。目前国内移动或联通的SIM
卡,在中国大陆地区使用不会显示漫游状态,主要是因为同一个运营商的SIM卡在其运
营商覆盖的网络环境下,不会因为区域不同显示漫游状态。
AT+CGATT附着和分离GPRS业务
AT+CGATT? // 查询模块是否附着GPRS网络
+CGATT: 1
OK
模块开机后首先查询模块是否附着GPRS网络,不要主动设置AT+CGATT=1,除非待机状态
下主动上报+CGATT: 0,此时可以设置AT+CGATT=1,否则不要设置。
在一些特殊的情况,比如模块从无信号的状态进入有信号的状态(穿过隧道),有可能会出现无法附着GPRS网络的情况,此时建议用AT+CFUN来重启射频。
小结:模块开机后应该执行下面初始化流程
AT // 测试串口通讯是否正常
OK
AT+CPIN? // 查询是否检测到SIM卡
+CPIN: READY
OK
AT+CSQ // 查询信号质量
+CSQ: 18,0
OK
AT+CREG? // 查询模块是否注册网络
+CREG: 0,1
OK
AT+CGATT? // 查询模块是否GPRS
+CGATT: 1
OK
以上全部正常在进行其它功能操作。