| 论坛管理员 | 
				 短消息调试笔记 
 
			
			// AT+CSMS 选择消息业务AT+CSMS=0                        // SMS 的AT 命令兼容GSM 07.05 Phase 2
 AT+CSMS=1                        // SMS 的AT 命令兼容GSM 07.05 Phase 2+
 // AT+CMGF 选择消息格式
 AT+CMGF?                         // 查询当前值
 AT+CMGF=0                         // PDU: 0
 AT+CMGF=1                         // TXT: 1
 // AT+CMGL 列举短消息,AT+CMGF=0 PDU模式
 AT+CMGL=0                        // 接收未读
 AT+CMGL=1                        // 接收已读
 AT+CMGL=2                        // 存储未发送
 AT+CMGL=3                        // 存储已发送
 AT+CMGL=4                        // 所有消息
 // AT+CMGL 列举短消息,AT+CMGF=1 TXT模式,等于号后前的是字符串
 AT+CMGL="REC UNREAD"                // 接收未读
 AT+CMGL="REC READ"                // 接收已读
 AT+CMGL="STO UNSENT"                // 存储未发送
 AT+CMGL="STO SENT"                // 存储已发送
 AT+CMGL="ALL"                        // 所有消息
 // 删除信息
 AT+CMGD=1,4                        // 删除sim卡上已发的和未发的全部短信
 AT+CMGD=1,2                        // 删除已读短信
 如果你发送一条短信后回复信息 +CNTI:"SM",3 这个3表示的是你现在这个卡上的第三条信息
 此时发送AT+CMGR=3就可以读取这一条短信
 如果要删除这一条短信的话发送AT+CMGD=3
 下面是一些AT+CMGD指令的作用
 AT+CMGD=1,0 The message from the preferred message storage at the location 1 is deleted
 AT+CMGD=1,1 ALL READ messages from the preferred message storage are deleted
 AT+CMGD=1,2 ALL READ messages and SENT mobile originated messages are deleted
 AT+CMGD=1,3 ALL READ, SENT and UNSENT messages are deleted
 AT+CMGD=1,4 ALL messages are deleted
 // 将消息提示该为中断方式。这样在收到短信的时候内容直接用+CMT: 提示出来,不存卡。
 AT+CNMI=2,2,0,0,0
 
 // 用TEXT模式发短信息流程
 AT+CMGF=1\r                        // TXT模式
 //AT+CSCA="+8613800512500"        // 写信息中心号码
 AT+CSCS="GSM"\r                        // 字符集
 AT+CMGS="+8618913179619"\r        // 写手机号
 >HELLO                                // 发"HELLO"
 1A                                // (ctrl-Z)以十六进制发送
 // 用PDU模式发短信息流程
 AT+CMGF=0\r                        // pdu模式
 AT+CSCS="UCS2"\r                // 字符集
 AT+CMGS=                        // 之后跟的是从短消息中心之后的所有字符长度
 0891683108502105F0                // 短信息地址
 11000D91683155845570F1                // 对方手机号
 000800                                // 14
 06                                // 要发送的数据长度
 4F60597D0021                        // 数据
 0x1A                                // (ctrl-Z)以十六进制发送
 注: 在发送短信时,SMSC地址可以不要,用00代替。
 如发送“你好!”到13554855071.代码如下:
 AT+CMGF=0\r
 AT+CSCS="UCS2"\r
 AT+CMGS=21\r
 “0011000D91683155845570F1000801064F60597D0021”
 0x1A
 ********************************************************************************
 0891683108502105F011000D91683155845570F1000801064F60597D0021
 0891683108502105F0        // 短信息地址
 11000D91683155845570F1
 000800                        //14
 06
 4F60597D0021
 什么是PDU Mode?
 它是发送或接收手机SMS消息的一种方法。消息正文经过十六进制编码后进行传送; PDU发送只能输入十六进制的字符0-9 A-F.
 
 基本的PDU命令:
 ->读取短消息
 AT+CMGR:
 
 ->列举短消息
 AT+CMGL:
 
 ->发送短消息
 AT+CMGS:
 
 PDU接收短信格式:
 +CMT: ,26
 08                        // 地址信息的长度
 91                        // SMSC地址格式(TON/NPI),用国际格式号码(在前面加‘+’)
 683108500145F1                // SMSC地址13800510541
 24                        // 基本参数(TP-MTI/MMS/RP)
 0D                        // 回复地址数字个数,共13个十进制数(不包括91和‘F’)
 91                        // 回复地址格式(TON/NPI)
 688119139716F9                // 回复地址(TP-RA)
 00                        // 协议标识(TP-PID)
 08                        // 用户信息编码方式(TP-DCS)
 90809281543223                // 时间戳(TP-SCTS)        090829 18 45 23 32
 06                        // 用户信息长度(TP-UDL)
 4F60597D0021                // 用户信息(TP-UD)
 ********************************************************************************/
 短消息相关指令(转)
 
 短消息相关指令
 
 CSMS
 选择信息服务
 0兼容GSM07.05 Phase 2 version 4.7.0
 1兼容GSM07.05 Phase 2+ version
 
 AT+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
 0891683108100005F0040D91683105114501F50008108032617492230C003400310032003100320033
 +CMGL: 4,1,,23
 0891683108100005F0040D91683105114501F500001090311120602303C16010
 
 
 类型
 "REC UNREAD" 0
 "REC READ"     1
 "STO UNSENT"   2
 "STO SENT"      3
 "ALL"           4
 
 CMGS
 发送SMS,可按文本方式或PDU方式
 AT+CMGF=1OK
 AT+CMGS=13501154105> AAA<^Z>
 +CMGS: 204
 OK
 AT+CMGF=0OK
 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
 OK
 其中为信息有效期,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
 信息重写
 
				__________________  让世界倾听我们的笛声 |