AT返回状态包括三种情况 OK,ERROR,和命令相关的错误原因字符串.返回状态前后都有一个<CR>字符.
注: 这篇文章的内容多数来源于网上,对于最后的短消息提示,AT+CNMI,通过设置不同的模式,就可以得到短消息提示,但是这个命令最好在ttyUSB2上应用,应为这个端口会主动吐数据,这样当新的短信来的时候就会有数据输出。命令解释:选择短信存储载体
6.1.1命令格式:AT+CPMS=<mem1>[,<mem2>][,<mem3>]
设置短信存储载体
命令返回:+CPMS:<used1>,<total1>,<used2>,<total2>,<used3>,<total3>
OK
ERROR
测试结果:a. AT+CPMS=”SM”
+CPMS: 8,15,8,15,1,40
OK
设置成功,并显示状态:SM(SIM卡)存储器总容量为15,当前存储量8;
ME(模块)存储器总容量为40,当前存储量1;mem1定义为SM;
b. AT+CPMS=”SM”,”SM”
+CPMS: 8,15,8,15,1,40
OK
设置成功,并显示状态:SM存储器总容量为15,当前存储量8;
ME存储器总容量为40,当前存储量1;mem1定义为SM;mem2
定义为SM;
c. AT+CPMS=”SM”,”SM”,”SM”
+CPMS: 8,15,8,15,8,15
OK
设置成功,并显示状态:SM存储器总容量为15,当前存储量8;
ME存储器总容量为40,当前存储量1;mem1定义为SM;mem2
定义为SM;mem3定义为SM;
d. AT+CPMS=”ME”,”SM”,”SM”
+CPMS: 1,40,8,15,8,15
OK
设置成功,并显示状态:SM存储器总容量为15,当前存储量8;
ME存储器总容量为40,当前存储量1;mem1定义为ME;mem2
定义为SM;mem3定义为SM;
e. AT+CPMS=”ME”,”SM”,”ME”
+CPMS: 1,40,8,15,1,40
OK
设置成功,并显示状态:SM存储器总容量为15,当前存储量8;
ME存储器总容量为40,当前存储量1;mem1定义为ME;mem2
定义为SM;mem3定义为ME;
f. AT+CPMS=”ME
ERROR
命令格式错误,缺少{”};
6.1.2命令格式:AT+CPMS?
显示当前短信存储载体设置
命令返回:+CPMS:<mem1>,<used1>,<total1>,<mem1>,<used2>,<total2>,
<mem1>,<used3>,<total3>
OK
ERROR
测试结果:a. AT+CPMS?
+CPMS: "SM",8,15,"SM",8,15,"ME",1,40
OK
当前短信存储载体设置为:mem1为SM,mem2为SM,mem3
为ME;
b. AT+CPMS!
ERROR
命令错误;
6.1.3命令格式:AT+CPMS=?
显示本命令支持的参数
命令返回:+CPMS: (list of supported<mem1>s),(list of supported<mem2>s),
(list of supported<mem3>s)
OK
ERROR
测试结果:AT+CPMS=?
+CPMS: ("ME","SM"),("ME","SM"),("ME","SM")
OK
6.2 AT+CMGF
命令解释:设置短信格式
6.2.1命令格式:AT+CMGF=<mode>
命令返回:OK
ERROR
设置短信格式
6.2.2命令格式:AT+CMGF=?
命令返回:OK
ERROR
显示本命令支持的参数
6.2.3命令格式:AT+CMGF?
命令返回:OK
ERROR
显示当前短信格式
测试结果:AT+CMGF=?
+CMGF: (0,1)
OKAT+CMGF?
+CMGF: 0
OKAT+CMGF=1
OKAT+CMGF?
+CMGF: 1
OK
6.3 AT+CMGS
命令解释:发送短信
命令格式:AT+CMGS=<da>[,<toda>]<CR>
Text is entered<ctrl-z/ESC>
命令返回:+CMGS:<mr>[,<scts>]
+CMS ERROR:<err>
OK
ERROR
测试结果:a. AT+CMGS=13510090403<CR>
>ABCD1234.456<ctrl-z>
+CMS ERROR:500
命令错误;
b. AT+CMGS="13510090403"<CR>
> IT IS TEST NOW<ctrl-z>
+CMGS: 235
OK
6.4 AT+CMGR
命令解释:读短信
命令格式:AT+CMGR=<indes>
命令返回:+CMGS:<stat>,[<alpha>],<length>]<CR><LF><pdu>
+CMS ERROR:<err>
OK
ERROR
测试结果:a. AT+CMGR=5
+CMS ERROR:500
命令错误,5号短信位置为空;
b. AT+CMGR=2
+CMGL: 2,"REC READ","+8613682326205","N?R","03/08/28 17:30:35+00"
998B76844F60002E518D5FCD5FCD5427+CMGS: 235
OK
读出2号短信;
6.5 AT+CMGW
命令解释:写短信,并保存到存储载体
命令格式:AT+CMGW=<length>[,<stat>]<CR>
命令返回:+CMGS:<index>
+CMS ERROR:<err>
OK
ERROR
测试结果:AT+CMGW="13534139079"<CR>
> SHELLEY123456<ctrl-z>
+CMGW: 1
OK
把目标地址为13534139079的短信存入存储载体,且被分配的地址
为1号短信;
6.6 AT+CMGD
命令解释:删除短信
命令格式:AT+CMGD=<index>
命令返回:+CMS ERROR:<err>
OK
ERROR
测试结果:AT+CMGD=1
OK
1号短信被删除;
6.7 AT+CMGL
命令解释:显示短信清单
命令格式:AT+CMGL=<stat>
命令返回:+CMGL:<index1>,<stat>,<oa/da>,[<alpha>],[<scts>] [,<tooa/toda>,<length>]
<CR><LF><data>[<CR><LF>
测试结果:见总测试结果;
6.8 AT+CMSS
命令解释:发送存储载体中的短信
命令格式:AT+CMSS=<index>
命令返回:+CMSS:<mr>
+CMS ERROR:<err>
OK
ERROR
测试结果:AT+CMSS=2
+CMSS: 204
OK
6.9AT+CNMI
命令解释:新短信提示
6.9.1命令格式:AT+CNMI=[<mode>[,<mt>[,<bm>[,<ds>]]]]
命令返回:OK
ERROR
测试结果:AT+CNMI=3,2
OK
6.9.2命令格式:AT+CNMI?
命令返回:+CNMI:<mode>,<mt>,<bm>,<ds>
OK
ERROR
测试结果:AT+CNMI?
+CNMI: 3,2,0,0
OK
6.9.3命令格式:AT+CNMI=?
命令返回:+CNMI:(list of supported<mode>s), (list of supported<mt>s), (list of supported<bm>s),(list of supported<ds>s)
OK
ERROR
测试结果:AT+CNMI=3,2
OK