PDU短信息发送示例
作者:李红斌
 

第一, 设置短信息格式。

AT+CMGF=0

第二, 发送短信息。

如,要向号码为“+8613466611983”发送一条短信息(号码转换为683164661189f3),发送内容为“你好”,(假设变成Unicode为“4F60597D”,长度是04)。

那么操作如下:
AT+CMGS=019
>0011000D91683164661189f3000801044F60597D <ctrl+z>
+CMGS: <发送的条数>
OK

第三,简要解释:
首先将短信息格式设为PDU模式 :AT+CMGF=0
发送AT+CMGS= YYY [CR] ;其中 YYY 为TPDU的十进制长度
收到[>][SP]响应后再发送
[TPDU][ctrl-Z]
[TPDU]:发送规约数据单元:
TYPE 11
MR 00
DA 0D91683164661189f3 ; 8613466611983
PID 00
DCS F4
VP 01
UDL XX; XX 不大于 8C
DD; XX字节的用户数据
用户数据中最后一个字节为前面XX-1个字节的按位累加和。
TPDU 中用户数据前的PDU规约头的长度是15字节

用户数据最长可用到140字节。
发中文是 pdu 格式为 80 dcs=80

以下例子 发送到 13466611983
"你好"两个字,变成汉字的Unicode码:
译码为
044F60597D
04 长度

at 命令
AT+CMGS=019 {*解释:15(规约为15)+4(你好4个字节)=019}
返回
>
发送
0011000D91683164661189f3000801044F60597D <ctrl+z>
{*解释: 前面两个00照写; 11为TYPE; 00为MR, 0D91683164661189f3为DA; 00为PID; 08为DCS; 01为VP; 044F60597D为UDL的内容,就是中文信息部分}
具体就这些例子中显示其实是一种内存编码方式,如:1346为 3164, 8613466611983 为683164661189f3。

公司网站:www.chundi.com 邮件技术支持网站:www.mailer.cn  短信技术支持网站:www.sendsms.com.cn
Copyright 1997-2017 北京春笛信息技术有限公司 地址:北京海淀区知春路23号863软件园量子银座九层