用单片机发送PDU格式的短消息
1.准备
待发送内容:二进制数据 0xFF 0x00 0xA0 0x05
2.过程
采用PDU格式发送过程:
组织PDU格式的二进制数据包--->转换成ASCII格式的PDU数据包-->开始发送短消息
2.1 组织PDU格式的二进制数据包
1) 配置好的电话号码存储格式: 13 10 31 25 32 2F
2) 配置好的短消息中心存储格式:13 01 01 80 50 0F
3) 数据长度为4个字节
开始组织PDU数据包
a. 短消息中心
长度 短消息中心有国家编码 短信中心号码编码
08 91 68 31 10 10 08 05 F0
b. 短消息类型
11 不需要状态报告
需为31
c. 信息参考
00
d. 目标电话号码
长度 目标电话号码有国家编码 目标电话号码的编码
0D 91 68 31 01 13 52 23 F2
注意:此处的长度和短消息中心长度含义不同。
e. 协议标识
00
对于标准情况下的下 MS-to-SC 短消息传送,只需设置 PID 为 00
f. 数据编码方案
08
或者
04
均可以发送出
g. 信息有效期
A5
具体参考GSM 03.40 或者PDU中文的文档的计算方法
h. 用户数据长度
04
以整型形式提供,表示后面用户数据段的数据长度
i. 用户数据
FF 00 A0 05
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
1.经过以上步骤组织出来的PDU数据包为
a 08 91 68 31 10 10 08 05 F0
b 11
c 00
d 0D 91 68 31 01 13 52 23 F2
e 00
f 08
g A5
h 04
i FF 00 A0 05
注意:
对于组织的PDU数据包我打算先做如下规定
将abc d efg 作为配置下发到存储器中
d,数据准备好后读出
h,数据准备好后算出
2.2 计算出 包长度
包长度是十进制数据格式
发送时为二进制格式
范围 15~155
其中19是指从b到i的二进制格式数据
转换成ASCII格式的PDU数据包 + 包尾0X1A
3. 开始发送短消息(PDU数据包)
AT+CMGS = 包长度
收对“>”,即开始发送 PDU数据包
| 有奖活动 | |
|---|---|
| 2026年“我要开发板活动”第三季,开始了! | |
| 硬核工程师专属补给计划——填盲盒 | |
| “我踩过的那些坑”主题活动——第002期 | |
| 【EEPW电子工程师创研计划】技术变现通道已开启~ | |
| 发原创文章 【每月瓜分千元赏金 凭实力攒钱买好礼~】 | |
| 【EEPW在线】E起听工程师的声音! | |
| 高校联络员开始招募啦!有惊喜!! | |
| 【工程师专属福利】每天30秒,积分轻松拿!EEPW宠粉打卡计划启动! | |
我要赚赏金打赏帖 |
|
|---|---|
| 以启明云端ESP32P4开发板实现TF卡读写功能被打赏¥28元 | |
| 【分享开发笔记,赚取电动螺丝刀】树莓派5串口UART0配置被打赏¥25元 | |
| 【STM32F103ZET6】17:分享在Rtos项目中断管理的使用经验被打赏¥23元 | |
| 【STM32F103ZET6】16:分享在中断中恢复串口任务,遇到的问题被打赏¥31元 | |
| 在FireBeetle2ESP32-C5上实现温度大气压检测及显示被打赏¥21元 | |
| 【分享开发笔记,赚取电动螺丝刀】SAME51双串口收发配置被打赏¥27元 | |
| Chaos-nano操作系统在手持式VOC检测设备上的应用被打赏¥37元 | |
| 【分享开发笔记,赚取电动螺丝刀】关于在导入第三方库lib时,wchart类型冲突的原因及解决方案被打赏¥30元 | |
| 在FireBeetle2ESP32-C5上实现温湿度检测和显示被打赏¥20元 | |
| 在FireBeetle2ESP32-C5上实现光照强度检测及显示被打赏¥21元 | |
我要赚赏金
