(七)Linux搭载4G模块——AT指令实现短信包的获取和删除

一、前言

在前面,我们对串口编程已经实现了AT指令和中英文短信的发送。现在再来了解一下最后的两个功能:短信的获取和删除。在使用代码实现之前,先了解使用到的AT指令。

二、回显短信的两种方式

我们前面已了解到,Text只能发送英文,PDU可以发中英文,那读呢?其实也一样,Text只能正常的读英文,而解析不了中文,强行使用会出现乱码,PDU模式的话都可以,但是需要我们手动解码。

2.1AT+CMGF 配置短消息模式

该命令用于指定短消息采用的格式。消息格式可设置为 PDU 模式或者文本模式(消息报头和正文分别以不同的参数形式展示)。
索引
在这里插入图片描述
使用效果
在这里插入图片描述

2.2AT+CMGL 按照状态读取短消息

该命令用于获取存储器中对应消息状态的短消息。若短消息状态为"REC UNREAD",则存储器中短消息的状态将变更为"REC READ"。若执行 AT+CMGL 但不设置,模块将返回状态为"REC UNREAD"的短消息列表。

在这里插入图片描述
在这里插入图片描述

使用效果
在这里插入图片描述

2.3 PDU编码显示

先设置为PDU模式,再使用AT+CMGL=(0-4) 命令来查看消息,可以看到每条信息都是未解码的PDU编码包,以+CMGL:开头,还有对应的从0开始的序号。
其中PDU包的构成=中心号码长度+中心号码+TPDU头字节+源号码长度+源号码+协议标识+数据编码方案+日期时间+数据长度+数据
在这里插入图片描述

2.4 Unicode编码显示

下面是Text模式下查看短信的情况,可以看到英文短信可以正常显示,但是中文就不行了。所以后面解码的时候我们都是用短信的PDU格式来解码短信。
在这里插入图片描述

三、删除短信

AT+CMGD 删除短消息
该命令用于删除短消息首选存储器中位于的短消息。
在这里插入图片描述
在这里插入图片描述

四、索引号读短信

AT+CMGR 按照索引读取短消息,该命令用于从存储器中读取指定的短消息。若该短消息处于”REC UNREAD”,则其在存储器中的状态将会变为"REC READ"。

PDU模式使用索引读信息:
在这里插入图片描述
文本模式使用索引读信息:
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值