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:短信内容
应用场景
在没有服务器的情况下,使用短信通讯可以降低服务器租赁费用。在一些防盗系统、液位控制系统和台风预警系统中,短信报警是一种较为实惠的解决方案。
至此,中文短信和英文短信的编辑与发送方法已介绍完毕。
热门推荐
抗癌利器!国产质子治疗系统突破百例,已有“沪惠保”参保患者成功理赔
同事请下午茶唯独没点你的份,对你说:“不好意思呀,点的时候忘了你了。”你怎么回?
沈阳“九·一八”历史博物馆获赠14件日本侵华宣传画页
裹脚习俗:从美的象征到女性解放的历史变迁与反思
沈阳十大景点全攻略:从故宫到南湖公园,领略沈阳独特魅力
实现高效的企业供应链管理——精益生产与敏捷性的完美结合
珠海金巴2025 香港往返珠海交通,班次時間表/購票價錢/上車地點
打二板攻略:从市场趋势到风险管理的全方位指南
全方位解析:如何查看汽车违章记录的多种途径
为什么易语言开发简单又快却没有成为主流
G219旅游攻略丨玩转昭苏全攻略来了 赶紧安排吧
新车退车规定标准是什么?
人民日报:新版0-6岁儿童疫苗接种时间表!建议收藏
春节自驾,高速充电“丝滑”吗?光伏充电桩、充电机器人、服务补给站护航出行
深度解析汉字“郧”:读音、文化与历史背景
克苏鲁题材游戏推荐:十款Steam平台上的克苏鲁游戏精选
冰箱豆浆大揭秘:正确保存与饮用指南
怎么跟老板谈加薪
复仇者联盟4:终局之战
春节河北之旅:北京游客不容错过的景点与注意事项
工业铝合金:轻质高强度的材料优势
如何分析黄金市场的基本面情况?黄金基本面的变化对价格有何影响?
在操作RIE反应离子刻蚀机时,需要注意哪些问题?
下肢静脉溃疡居家管理五部曲
火箭推进榴弹——RPG
A股罕见分化:银行ETF盘中涨停,多股连续涨停提示风险
零基础学象棋第四节:中国象棋术语大全
颠沛的风花雪月——唐伯虎一生不风流
下肢静脉曲张的中医治疗方法
心脏呈逆钟向转位是什么意思?可能有哪些病因?