用CMSS指令提高串口群发短信的效率
关键字: AT 串口54powerman
一 指令介绍:
1 +CMGW 将消息写入内存(Write Message to Memory)。
描述:该指令将一条消息存储到内存中(SMS-SUBMIT 或 SMSDELIVERS),并返回保存在内存中的位置。输入的“消息文本”或 PDU 可以被发送消息的指令 +CMSS 使用。
语法格式:
文本模式: (
AT+CMGW=
PDU模式:
AT+CMGW=
返回消息格式:
+CMGW:
或(如果发生错误)
+CMS ERROR:
2 +CMSS 发送存储的消息(Send Message From Storage)
描述:该指令发送存储在
语法格式:
AT+CMSS=
返回消息格式:
+CMSS :
或(如果发生错误)
+CMS ERROR:
如果通过
3 参数说明:
--0: "REC UNREAD"
--1: "REC READ"
--2: "STO UNSENT"
--3: "STO SENT"
二 实现原理:
基于上面的指令,我们发现可以如下方式提高发送效率——通过+CMGW将要群发的消息保存到内存中,然后一次调用+CMSS将消息发送出去,而无须每次发送重复的PDU信息,减少了通信数据。
三 示例:(以下采用java注释风格进行注释)
AT //测试连接状态
OK //连接正常
AT+CMGF? //查看当前工作模式
+CMGF: 1 //文本模式
OK //消息返回结束
at+cmgf=0; //设置工作模式为PDU模式
OK
AT+CMGF? //查看当前工作模式
+CMGF: 0 //PDU模式
OK
AT+CPMS=? //查看当前首选存储器
+CPMS: ("SM"),("SM"),("MT")
OK
AT+CPMS? //查看当前存储器中的消息
+CPMS: "SM",0,70,"SM",0,70,"MT",0,70 //当前三个存储器中消息数均为0
OK
AT+CMGW=21 //向内存中写入一条消息
> 0891683108100005F011000D916831xxxxxxxxFx00000006C8329BFD0E01^Z
+CMGW: 1 //消息保存成功,其索引
OK
AT+CPMS?
+CPMS: "SM",1,70,"SM",1,70,"MT",1,70 //当前SM 0存储器中有一条消息
OK
at+cmss=1,"13xxxxxxxx1",145 //将消息转发给13xxxxxxxx1
+CMSS: 232 //发送成功,并保存在存储器中,索引是232
OK
at+cmss=1,"13xxxxxxxx2",129 //将消息转发给13xxxxxxxx2
+CMSS: 233
OK //结束
如果有不清楚的地方,可以加入QQ群9040323讨论。
- 17:53
- 浏览 (496)
- 论坛浏览 (699)
- 评论 (0)
- 分类: 无线通信
- 相关推荐
发表评论
该博客是同时发布到论坛的,无法评论在论坛已被锁定的帖子







评论排行榜