您的位置:首页 > 其它

GSM模块短信应用指导和实践分析(PDU格式)

2017-04-24 09:48 387 查看
第一部分PDU 格式

0891683108200105F011000B813119169083F80000A806C9363C3CA603

以上是一个SUBMIT-PDU 发出例子分析内容如下
[align=center]08[/align]
[align=center]91[/align]
[align=center]68 31 08[/align]
[align=center]20 01 05[/align]
[align=center]F0[/align]
[align=center]11[/align]
[align=center]00[/align]
[align=center]0B[/align]
[align=center]81[/align]
[align=center]31 19 16[/align]
[align=center]90 83 F8[/align]
[align=center]00[/align]
[align=center]00[/align]
[align=center]A8[/align]
[align=center]06[/align]
[align=center]C9363C3CA603[/align]
[align=center]Length[/align]
[align=center]Tosca[/align]
[align=center]Address[/align]
[align=center]FO(PDU第一个字节)[/align]
[align=center]MR(消息参考号码)[/align]
[align=center]Length[/align]
[align=center]Toda[/align]
[align=center]address[/align]
[align=center]PID[/align]
[align=center]DSC[/align]
[align=center]VP[/align]
[align=center]UDL[/align]
[align=center]UD[/align]
[align=center]SCA(服务中心号码)[/align]
[align=center]DA(目标地址)[/align]
[align=center]协议标示[/align]
[align=center]数据编码标准[/align]
[align=center]允许时间[/align]
[align=center]用户数据长度[/align]
[align=center]用户数据[/align]
[align=center]1-12个字节[/align]
[align=center]1字节[/align]
[align=center]1字节[/align]
[align=center]2-12个字节[/align]
[align=center]1字节[/align]
[align=center]1字节[/align]
[align=center]1字节[/align]
[align=center]1字节[/align]
[align=center]0-140字节[/align]
 

收到的DELIVER-PDU
[align=center]SCA[/align]
[align=center]FO[/align]
[align=center]OA[/align]
[align=center]PID[/align]
[align=center]DCS[/align]
[align=center]SCTS[/align]
[align=center]UDL[/align]
[align=center]UD[/align]
[align=center]服务中心号码[/align]
[align=center]第一字节[/align]
[align=center]原地址[/align]
[align=center]协议表示[/align]
[align=center]编码标准[/align]
[align=center]服务中心时间戳[/align]
[align=center]用户数据长度[/align]
[align=center]用户数据[/align]
 

一、SCA服务中心号码
[align=center]08[/align]
[align=center]91[/align]
[align=center]68 31 08 20 01 05 F0[/align]
[align=center]Length(长度)[/align]
[align=center]Tosca(服务中心号码类型)[/align]
[align=center]Address(地址)[/align]
[align=center]SCA服务中心号码[/align]
 

长度08即SCA区去除08外后面的字节数单位是字节如上91683108200105F0共8字节但是当长度值为00时后面SCA区将只有00后面的号码类型和地址都不存在发送短消息时从SIM卡读出SCA号码此号码要用at+csca=xxxxx设定

Tosca服务中心号发类型91为国际型81为未知类型号码A1为国内型一般为国际型

Address地址每个字节先用低位4bit后用4-7bit如果号码个数为奇数个最后一个字节的4-7bit全部设置为1即FxH如号码1234567,变化好以后就是21 43 65 F7”;

 

二、FO信息第一字节

收到的PDU,典型为04H
[align=center]BIT[/align]
[align=center]7[/align]
[align=center]6[/align]
[align=center]5[/align]
[align=center]4[/align]
[align=center]3[/align]
[align=center]2[/align]
[align=center]1[/align]
[align=center]0[/align]
[align=center]参数[/align]
[align=center]RP[/align]
[align=center]UDHI[/align]
[align=center]SRI[/align]
[align=center]-[/align]
[align=center]-[/align]
[align=center]MMS[/align]
[align=center]MTI[/align]
[align=center]MTI[/align]
 

发送的PDU,典型为11H
[align=center]BIT[/align]
[align=center]7[/align]
[align=center]6[/align]
[align=center]5[/align]
[align=center]4[/align]
[align=center]3[/align]
[align=center]2[/align]
[align=center]1[/align]
[align=center]0[/align]
[align=center]参数[/align]
[align=center]RP[/align]
[align=center]UDHI[/align]
[align=center]SRR[/align]
[align=center]VPF[/align]
[align=center]VPF[/align]
[align=center]RD[/align]
[align=center]MTI[/align]
[align=center]MTI[/align]
 

MTI 2bit消息类型00收01发其余值参考SMS with the M20文档P.22

MMS 1bit短消息服务中心是否有更多短消息等待移动台1有0无默认为1

SRI 1bit状态报告标示0不需要状态返回到移动设备1需要默认为0

UDHI 1bit用户数据头标示0用户数据没有头信息1有一般为0

RP 1bit是否有回复路径的标示1有0没有一般为0

VPF 2bit有效期限格式00 VP不存在10 VP区存在用一个字节表示是相对值01 保留11 存在半个字节表示绝对值

RD 1bit重复信元丢弃0通知服务中心碰到同源同目的地同样的MR短消息序号的短消息接受1抛弃此时将在短消息提交报告中返回一个适当的FCS值

SRR 1bit状态报告要求.

三、MR短消息参考

1个字节表示移动台向短消息服务中心提交的短消息序号从0到255一般移动模块会自动改动所以默认为00

四、OA短消息原发手机地址
[align=center]OB[/align]
[align=center]81[/align]
[align=center]31 19 16 90 83 F8[/align]
[align=center]Length(长度)[/align]
[align=center]Toda(地址类型)[/align]
[align=center]Address(地址)[/align]
[align=center]DA(目标地址)[/align]
[align=center]2-12字节[/align]
Length为地址的数字个数

Toda地址类型91为国际型81为国内型

Address地址编码方法与SCA同一个字节先用低4bit奇数个号码最后一位高四位设为F.

五、DA目的手机地址

短消息目的地址参考OA

六、PID协议标志

是短消息传输层作为高层协议参考或者是远程设备协同工作的标示需要服务商支持但是00H是所有服务商都支持的建议采用00H即可

七、DCS数据编码方法

表示数据编码方法和消息类别一般为00H默认7位编码等级号0。04为8位编码。

UCS2编码0等级为08H可以传输中文。

 
[align=center]7[/align]
[align=center]6[/align]
[align=center]5[/align]
[align=center]4[/align]
[align=center]3[/align]
[align=center]2[/align]
[align=center]1[/align]
[align=center]0[/align]
[align=center]编码组[/align]
[align=center]保留[/align]
[align=center]X[/align]
[align=center]X[/align]
[align=center]X[/align]
具体如下:
编码组bit7-4Bit3-0
[align=center]OOXX[/align]
[align=left]BIT5:0文本未压缩1用GSM标准压缩[/align]
Bit4:0表示bit1,0是保留没有消息类别1表示有
[align=left]Bit1  Bit0   消息类别[/align]
[align=left]0      0      Class0[/align]
[align=left]0      1      Class1[/align]
[align=left]1      0      Class2[/align]
[align=left]1      1      Class3[/align]
[align=left]Bit3   Bit2   字母表[/align]
[align=left]0      0      默认字母表[/align]
[align=left]0      1      8bit数据[/align]
[align=left]1      0      UCS2编码[/align]
1      1      保留
其余情况暂不讨论

Class0短消息直接显示到用户终端

Class1短消息存储在SIM卡上

Class2短消息必须存储在SIM卡上禁止直接传输到中断

Class3短消息存贮在用户设备上

八、SCTS服务中心时间戳

告诉目标用户短消息到达时间为7个字节表示
YearMonthDayHourMinuteSecondTime Zone
10403221948300
表示01年4月23号12点49分38秒时区表示本地时间和格林尼治标准时间差。

九、VP 合法时间

标示短消息服务中心在接到短消息后在没有发到目标机前可以保证短消息存在的时间其格式在FO中的VPF中设定一般是相对值10B这时时间如下:
[align=center]VP值,16进制[/align]
[align=center]相对合法时间[/align]
[align=center]00-8F[/align]
[align=center](VP+1)*5分[/align]
[align=center]90-A7[/align]
[align=center]12小时+(VP-143)*30分钟[/align]
[align=center]A8-C4[/align]
[align=center](VP-166)*1天[/align]
[align=center]C5-FF[/align]
[align=center](VP-192)*1周[/align]
如果是绝对时间即VPF=11B则VP区和SCTS同.

 

十、UDL用户数据长度

1 如果用户用默认7位编码

1>没有用户数据头此数字标示7bit的字符个数

2>有用户数据头此数字表示包括用户数据头包含补丁在内在内的7bit个数

2 如果用户用8位编码

表示用户数据区的字节数有数据头信息包括在内

3 如果为UCS2编码则是用户数据区的字节数

十一、UD用户数据

1 如果是7bit编码则从前向后每个字节从低到高位使用最后不足的一个字节的各位全部用0补全最多可以有160个字符例子如下

设一个字母为x,它的编码的17bit分别为x1x7,如8个字母分别为ABCDEFGH,则编码如下

[align=center]B1[/align]
[align=center]A7[/align]
[align=center]A6[/align]
[align=center]A5[/align]
[align=center]A4[/align]
[align=center]A3[/align]
[align=center]A2[/align]
[align=center]A1[/align]
[align=center]C2[/align]
[align=center]C1[/align]
[align=center]B7[/align]
[align=center]B6[/align]
[align=center]B5[/align]
[align=center]B4[/align]
[align=center]B3[/align]
[align=center]B2[/align]
[align=center]D3[/align]
[align=center]D2[/align]
[align=center]D1[/align]
[align=center]C7[/align]
[align=center]C6[/align]
[align=center]C5[/align]
[align=center]C4[/align]
[align=center]C3[/align]
[align=center]E4[/align]
[align=center]E3[/align]
[align=center]E2[/align]
[align=center]E1[/align]
[align=center]D7[/align]
[align=center]D6[/align]
[align=center]D5[/align]
[align=center]D4[/align]
[align=center]F5[/align]
[align=center]F4[/align]
[align=center]F3[/align]
[align=center]F2[/align]
[align=center]F1[/align]
[align=center]E7[/align]
[align=center]E6[/align]
[align=center]E5[/align]
[align=center]G6[/align]
[align=center]G5[/align]
[align=center]G4[/align]
[align=center]G3[/align]
[align=center]G2[/align]
[align=center]G1[/align]
[align=center]F7[/align]
[align=center]F6[/align]
[align=center]H7[/align]
[align=center]H6[/align]
[align=center]H5[/align]
[align=center]H4[/align]
[align=center]H3[/align]
[align=center]H2[/align]
[align=center]H1[/align]
[align=center]G7[/align]
 

2 如果是8bit编码很简单最多140个字符

3 如果是UCS2编码则最多是70个字符也比较简单

更加详细的内容请参考《Quectel_GSM模块短消息应用指导_V1.1.pdf》

接收短信实践性分析:

1.没有短信中心号码

2.发送的号码为18194080973

3.发送时间为2017.04.24.08.38.36

4.7bit字符编码

5.短信内容为12345678



[align=left]00000B818191040879F30000714042808363000831D98C56B3DD70
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]
[/align]
[align=left]1. 00:没有短信中心号码[/align]
[align=left]2. 00: FO:第一个8位字节[/align]
[align=left]3. 0B :未知格式[/align]
[align=left]818191040879F3:发送的号码
[/align]
[align=left]编码格式:[/align]
[align=left]
[/align]



[align=left]4.00 PID[/align]

5.00  DCS

6.71404280836300
 SCTS时间戳

7.发送的数据长度:08 UDL

8.UL:用户数据 31D98C56B3DD70
 

编码格式如下:



0011000D91683197453038F400000105C8329

BFD06
发送短信实践性分析:

示例:
发送“Hello” 到
+8618194080973

发送端: +8613651979176
接收端: +8618194080973
//步骤
1:核对短消息服务中心号
AT+CSCS=“GSM” //设置
TE 字符集为
“GSM”

OK
AT+CSCA?
//查询短消息中心号。对上海的中国

移动, 短消息中心号为
"+8613800210500"。如果这个号码

错误, 短消息可能发送失败,那么

用命令AT+CSCA=<sca> 设置正确

的短消息中心号,并用AT+CSAS保

存设置。
+CSCA: "+8613800210500",145

OK
//步骤
1:核对短消息服务中心号
AT+CSCS="GSM"
OK
AT+CSCA?
+CSCA: "+8613800210500",145

OK
//步骤
2:设置 PDU
模式
AT+CMGF=0 //设置PDU模式
OK
//步骤
2: 设置 PDU
模式和接收短消息的参


AT+CMGF=0 //设置PDU模式
OK
AT+CNMI=2,1,0,0,0
//设置新短消息到达时的提示参

数。第二个参数设成1,获取+CMTI
提示。
OK
AT+CPMS?
//核对短消息存储空间是否已满,

如果已满,用+CMGD或+QMGDA
删除短消息。
+CPMS: "SM",1,50,"SM",1,50,"SM",1,50

OK
//步骤
3:发送短消息
AT+CMGS=20
>
0011000D91688191040879F300000105C8329BFD06

BFD06 <Ctrl+Z>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: