CDMA短信收发设备与2G GSM短信收发设备在超级终端下发送短信有点不同的就是CDMA下发短信必须使用英文模式才可以成功发不,GSM可以直接使用pdu格式来发送:详细价绍如下: 1. 发文本短信 eg. 发送英文数字短消息“123ABC”,使用其相应ASCII码发送。 AT+WSCL=1,2 // 设置为发英文短信OK OK AT+CMGS="13601193264" // 区别于GSM模块,CDMA模块发短信号码必须要加 引号 123ABC +CMGS:1 OK 返回代码: +CMGS:N 表示成功发出,N为序号。 2. 发中文短信 CDMA发中文短消息不是采用PDU格式,而是直接发送其Unicode代码 eg . 发送中文短消息“您好”其相应Unicode编码:0x60a8 0x597d AT+WSCL=6,4 AT+CMGS="13600193264" 60A8597D 返回代码: +CMGS:N 表示成功发出,N为序号。 注:程序中发送的时候应该是发送数据0x60,0xa8,0x59,0x7d,对于中文短消息其中的控制字符也必须用其UNCODE代码表示。消息内容的结束则以结束符来做标记,所以它的结束符也应该是UNICODE格式的。即在超级终端中用此种方式是无法发送成功的,因为从键盘键入的 3 . 同样CDMA模块也可以中文、英文及数字一起发送,都使用其相对应的UNICODE代码发送。 模块读写列短消息 1.通过设置AT+CNMI,短消息会有不同的提示信息 AT+CNMI=2,1,0,0,0 // 若第二个参数设置为1 OK AT+CMGS=13823372605 > HELLO,HOW ARE YOU? //输入发送内容,Ctrl+Z发送 +CMGS: 3 OK +CMTI: "SM",12 // 收到短信息提示 +CMTI: AT+CMGR=12 // 读收到短消息 +CMGR: "REC UNREAD","+8613823372605",,"03/03/11,15:56:25+00" HELLO,HOW ARE YOU? OK AT+CNMI=2,2,0,0,0 // 若设置第二个参数为2 OK AT+CMGS=13826672605 > HELLO +CMGS: 57 OK +CMT: "+8613826672605",,"03/03/06,10:21:31+00" HELLO // 收到短信息提示+CMT:,内容直接显示 注:AT+CMGR= 2.写入短信息 AT+CMGW 发送 AT+CMSS AT+CMGW=13826672605 // 写短消息 > NICE TO MEET YOU! // 短消息内容 +CMGW: 1 OK AT+CMSS=1 // 发送存储的第一条短消息 +CMSS: 83 OK +CMT: "+861386672605",,"03/03/13,17:51:40+00" // 收到短信息 NICE TO MEET YOU! 3. 列出短信息 AT+CMGL AT+CMGL="ALL" // 列出所有短信息 +CMGL: 1,"STO UNSENT","13823372605",, NICE TO MEET YOU1 +CMGL: 2,"REC UNREAD","+8613826672605",,"03/03/13,17:07:40+00" HELLO OK AT+CMGL="REC READ" // 文本格式下列出已读短信息 +CMGL: 2,"REC READ","+8613826672605",,"03/03/13,17:07:40+00" HELLO 4.删除短消息 AT+CMGD AT+CMGD= AT+CMGD=1,1 删除所有已经阅读的短消息 AT+CMGD=1,2 删除所有已经阅读和发送出去的短消息 AT+CMGD=1,3 删除所有已经阅读过、已经发送出去和未发送的短消息 AT+CMGD=1,4 删除所有短消息 注:有时候发送短消息不成功,可能是memory已满,可以通过AT+CMGD=1,4删除 |