SIM900模块短信发送实战:AT命令与PDU编码解析
创作时间:
2025-01-22 06:45:33
作者:
@小白创作中心
SIM900模块短信发送实战:AT命令与PDU编码解析
SIM900模块是常用的GSM通信模块,广泛应用于物联网和嵌入式系统中。本文将详细介绍如何使用SIM900模块发送长中文短信和英文短信,通过具体实例解析短信的编辑和发送过程。
短信基本概念
Short Messaging Service(简称SMS)是最早的短消息业务,也是普及率最高的一种短消息业务。一条短信最长可以发送160个字符,即160个英文或数字字符,或70个中文字符。对于长文本的发送,有些短信业务平台支持发送长短信,用户最终会收到一条完整的长短信,但业务统计和计费会按照长短信拆分后的短信条数进行。
发送英文短信
发送英文短信的基本步骤如下:
发送AT命令,确认模块可以执行AT命令操作:
AT OK设置为Text模式:
AT+CMGF=1输入接收短信的手机号码,等待出现“>”:
AT+CMGS="1366265ABCD" > TEST\u001A注意:所有短信内容均以“Ctrl+z”结束。这里
\u001A表示转义字符“Ctrl+z”。
发送中文短信
发送中文短信需要使用PDU模式:
发送AT命令,确认模块可以执行AT命令操作:
AT OK设置为PDU模式:
AT+CMGF=0发送PDU编码的长度(三位十进制字符串表示):
AT+CMGS=017 > 0891683108501505F011000D91688152963059F8000800020033 +CMGS: 55 OK
中文短信PDU编码解析
以一个完整的中文短信为例:
0891683108501505F011000D9168316662A5CBFD000801020033
SCA部分解析
08:表示后续字符长度(16个字符)91:表示发送设备为手机683108501505F0:服务中心号码(8613800551500),其中F用于凑数使字符数量为偶数
PDU内容解析
1100:表示正常发送短信,点到点标准短信0D9168316662A5CBFD:接收手机号码(+861366265ABCD)0D:表示手机号码长度(13位)91:表示接收设备为手机68316662A5CBFD:经过字符交换的手机号码000801:TP-PID信息码00:普通GSM类型,点到点方式08:UCS2编码01:时间戳020033:用户信息02:用户信息长度(4字节)0033:实际短信内容(中文字符“1”)
编辑长中文短信
长中文短信通过将多个“数据报文”进行拼接实现:
两个数据报文的拼接示例
AT+CMGS=023
> 0891683108501505F051000D91688152963059F800080108050003FC02010031
+CMGS: 59
OK
AT+CMGS=023
> 0891683108501505F051000D91688152963059F800080108050003FC02020032
+CMGS: 60
OK
5100:表示发送带有报头的短信000801:TP-PID信息码08050003FC02010031和08050003FC02020032:用户信息08:用户信息长度05:协议头长度00:分拆短信标志03:分拆数据元素长度FC:合并标志0201和0202:数据报文序号0031和0032:实际短信内容
长短信实例
第一条短信
0891683108100005F051000D91683118216553F60008018C0500032302014E8C96F64E005B9A4F1A597D597D597D768465F665F665F695F44E0D597D597D597D768460254F1A4E8654754F604E5F4E0D898157284E006B21751F76EE8FDB665A70B954275417662F4E004E2A4E1C5F20897F62114E0D662F62117231597D4E86541754758BBE7F6E597D597D554A51765B83662F554A5475547554754F607684547562A4
0891683108100005F0:SMSC地址5100:有报头短信0D91683118216553F6:回复地址0008:TP-PID信息码8C:用户信息长度05:协议头长度00:分拆短信标志03:分拆数据元素长度23:唯一标志0201:数据报文序号4E8C96F6...:数据内容
第二条短信
0891683108100005F051000D91683118216553F60008012605000323020281EA4ECE524D5C3177617740542754755475007A007A006C0076006C006F007A
0891683108100005F0:SMSC地址5100:有报头短信0D91683118216553F6:回复地址0008:TP-PID信息码26:用户信息长度05:协议头长度00:分拆短信标志03:分拆数据元素长度23:唯一标志0202:数据报文序号81EA4ECE...:数据内容
中文短信发送实例
单条短信
AT+CMGS=017
> 0891683108501505F011000D91688152963059F8000800020033
+CMGS: 55
OK
多条短信拼接
AT+CMGS=023
> 0891683108501505F051000D91688152963059F800080108050003FC02010031
+CMGS: 59
OK
AT+CMGS=023
> 0891683108501505F051000D91688152963059F800080108050003FC02020032
+CMGS: 60
OK
接收到的中文短信解析
+CMTI:"SM",2
AT+CMGR=2
+CMGR: 0,"",52
0891683108707515F0240D91688186418379F20008416042712393232000280047003100320033003400350036003700380039003B003000314F600029
0891683108707515F0:短信息中心号码240D91688186418379F2:发送短信的手机号码000841604271239323:时间戳00280047003100320033003400350036003700380039003B003000314F600029:短信内容
应用场景
在没有服务器的情况下,使用短信通讯可以降低服务器租赁费用。在一些防盗系统、液位控制系统和台风预警系统中,短信报警是一种较为实惠的解决方案。
至此,中文短信和英文短信的编辑与发送方法已介绍完毕。
热门推荐
北大学霸直通博士,你符合条件吗?
北大王选所智能技术新突破,引领未来科技潮流
北大计算机专业课程揭秘:下一个IT大佬就是你?
重温现代数据揭示达尔文进化论:快速适应能力也可用来解释物种分化
植物所科研人员揭示全球气候变化下葡萄科植物生存策略的转变机制
重庆火锅:热辣温情,传承文化的生活态度
宝鸡到长沙自驾游,一路美景不容错过!
叶绿素含量测定:精准农业中的关键指标与技术
叶绿素的作用及用途
中药注射液,丹红注射液为何不建议用
小鸡大乱斗修改器爽翻天?当心账号被封!
猪肝:不止是美味,更是护眼“神器”
猪肝补血,你真的吃对了吗?
乐昌市最新发布:这些地方禁止燃放烟花爆竹!
郑州巅峰画室刘老师教你画青年头像
抽象艺术风头像,年轻人的新宠
社交媒体头像拍摄秘籍:秒变人气王
住房公积金贷款办理条件及注意事项
如何在各地计算公积金?计算时要遵循哪些标准?
基因革命:北大魏文胜团队揭示DNA损伤修复新机制
ESTJ的e值与领导力:科学解读与现实应用
E型人格如何在销售职场中游刃有余?
E人和I人,谁更适合职场?
《钢铁是怎样炼成的》:保尔的伤病与成长
保尔·柯察金:伤病中的成长与思考
保尔的伤病经历,你也能坚持吗?
债券休市,你的投资策略怎么调?
顺境中善待他人,逆境中善待自己,才能拥有健康心理
心理研究 | 8种负面情绪加速衰老,危害比吸烟高32%
永远别小看自己,你的影响力可能超乎想象