短信猫常用AT指令指南
 

    AT指令短信猫通讯中起着重要的作用,能够通过AT指令控制手机的许多行为,包括拨叫号码、按键控制、传真、GPRS等。

    AT指令基本用法:

      1. 测试命令(Test Command)

         在AT指令后面加上“=?”即构成测试命令。例如“AT+CSCS=?”会列举出所有支持的字符集。

      2. 读取命令(Read Command)

         在AT指令后面加上“?”即构成读取命令。例如“AT+CSCS?”会列举出当前设置。

      3. 执行命令(Execute Command)

         一般而言在AT指令后加上“=”及命令参数即可。有些命令例如AT+CMGR命令没有参数,直接就可以执行。

    以WAVECOM GSM MODEM为例,其常用的AT指令集及开发参考如下:

指令名称 用法 说明
CSMS 选择信息服务
0兼容GSM07.05 Phase 2 version 4.7.0
1兼容GSM07.05 Phase 2+ version
T+CSMS=0
+CSMS: 1,1,1
AT+CSMS=1
+CSMS: 1,1,1
SMS-MO
SMS-MT
SMS-CB(小区广播)
全部支持
CNMA 新SMS收到确认
CPMS 首选的SMS存储区
SM为SIM卡区,BM为内存区,缺省为SM
AT+CPMS=?
+CPMS: (("SM","BM"),("SM"))
AT+CPMS="SM"
+CPMS: 3,25,3,25
AT+CPMS="BM"
+CPMS: 0,20,3,25
(1)为读和删的信息
(2)为写和发的信息
已用1,总共1,已用2,总共2
CMGF 设置SMS编码方式(1文本格式,0为PDU格式)
CSAS 存储CSCA与CSMP的相关信息于E2PROM
CRES 从E2PROM中恢复相关信息
CSDH 显示文本格式参数(1为显示,0为不显示)
AT+CDSH=1

+CMT: "+8613501154105",,"01/09/12,18:04:09+32",145,4,0,0,"+8613800100500",145,3
AAA

AT+CSDH=0
+CMT: "+8613501154105",,"01/09/12,18:04:48+32"
AAA
相关的信息有+CMTI,+CMT,+CDS,+CMGR,+CMGL

左边两个例子同样是发送和接收AAA为内容的SMS
CNMI SMS的输出方式
AT+CNMI=2,2,0,0,0

+CMT: "+8613501154105",,"01/09/13,11:04:09+32"
AAA

AT+CNMI=2,1,0,0,0

+CMTI: "SM",4
其中第2位决定SMS直接输出还是保存于"SM"中

左边两个例子同样是发送和接收AAA为内容的SMS,为0则不接收
CMGR 读取存于"SM"中的信息
AT+CMGR=1
+CMGR: "REC READ", "+8613501154102",,"01/08/14,10:46:47+32"
X000E8

AT+CMGR=4
+CMGR: "REC UNREAD", "+8613501154105",,"01/09/13,11:02:06+32"
AAA

AT+CMGR=2
+CMGR: "REC READ", "+8613501154105",,"01/08/23,16:32:34+32"
DCS format error
at+cmgf=0;+cmgr=2
+CMGR: 1,,26
0891683108100005F0040D91683105114501F500081080326123432306004400460044
读取第1条
来源13501154102

读取第4条
来源13501154105

读取第2条时遇到DCS格式错误,转成PDU格式后,读出数据
来源13501154105
CMGL 信息列表,(+CMGL:索引,类型,,长度<内容>=
AT+CMGL=4
+CMGL: 1,1,,26
0891683108100005F0040D91683105114501F20000108041016474230658180C56C401
+CMGL: 2,1,,26
0891683108100005F0040D91683105114501F500081080326123432306004400460044
+CMGL: 3,1,,32
0891683108100005F0040D91683105114501F50008108032617492230C003400310032
003100320033
+CMGL: 4,1,,23
0891683108100005F0040D91683105114501F500001090311120602303C16010
类型
"REC UNREAD"  0
"REC READ"   1
"STO UNSENT"  2
"STO SENT"  3
"ALL"  4
CMGS 发送SMS,可按文本方式或PDU方式
AT+CMGF=1
OK
AT+CMGS=13501154105
> AAA<^Z>
+CMGS: 204
OK

AT+CMGF=0
OK
AT+CMGS=18
>0011000D91683105114501F500040103414141<^Z>
+CMGS: 205
OK
按文本方式发送





按PDU方式发送
CMGW 写信息到存储器
AT+CMGW="+8613501154105"
> AAA<^Z>
+CMGW: 5
OK

AT+CMGW=<lengh><CR><pdu><^Z>
按文本方式写入







按PDU方式写入
CMSS 从存储器中发送信息
AT+CMSS=5
+CMSS: 207
OK

+CMT: ,23
0891683108100005F0040D91683105114501F500001090316163932303C16010

AT+CMSS=5,+8613501154102
+CMSS: 210
OK
发送存储器中的第5条信息

收到信息

也可将第5条信息发送到指定用户
CSMP 设置文本格式参数,+CSMP:<fo><vp><pid><dcs>
AT+CSMP?

+CSMP: 1,167,0,0
其中为信息有效期,
167默认
0-143:(VP+1)*5分钟
143-167:12小时+(VP-143)*30分钟
168-196:(VP-166)*1天
197-255:(VP-192)*1周
CMGD 删除信息,AT+CMGD=<索引>
CSCA 短信息服务中心号码
at+csca?
+CSCA: "+8613800100500",145
OK
北京短信息服务中心号码
CSCB 选择小区广播信息类型
WCBM 小区广播信息标识符
WMSC 信息状态更正
WMGO 信息重写