CDMA短信接收PDU串分析

来源:互联网 发布:海岛奇兵民房升级数据 编辑:程序博客网 时间:2024/05/01 20:12
 接收A

AT+CCMGR=0

0000021002020702C54EA488649C0601FC08120003101BB00103100C100306110804182257

00表示点对点短信。

第一个字段: 00 02 10 02
0×00, 表示uTeleserviceID字段
0×02, 字段长度,该长度必须为2,否则为错误的pdu信息

字段内容为:0×1002,十进制是4098,表示teleserviceid

第二个字段:02 07 02 C5 4E A4 88 64 9C

0×02, SMS_TL_ORIG_ADDR 表示 (短信发送地址)
0×07, 字段长度为7
字段内容: 02 C5 4E A4 88 64 9C
只看前面几个 02 C5 4E A4的:
0000 0010 1100 0101 0100 1110 1000 0010 0100
取第一个bit 0 表示 RIL_CDMA_SMS_DIGIT_MODE_4_BIT 是4bit压缩
第二个bit 0 表示 RIL_CDMA_SMS_NUMBER_MODE_NOT_DATA_NETWORK
下来8个bit 是 00 0010 11 = 11,表示号码长度 为11
由于是4bit压缩 ,后面44个bit(4*11)表示号码,解析出来是15309221927

第三个字段:0601FC

表示SMS_TL_BEARER_RPLY_OPT,具体使用意义尚不清楚。

第四个字段:08120003101BB00103100C100306110804182257

0×08, 表示SMS_TL_BEARER_DATA字段(短信内容)

0x12,字段长度为18

这个字段也分成各个子字段:

第一子字段:00 03 10 1B B0

0×00 Mesage Id TAG
0×03 内容长度
10 1B B0  === 0001 0000 0001 1011 1011 0000
0001 表示 DELIVER 短信
0000 0001 1011 1011表示 message id, 与CMGS发送后上报的数据一致。
紧接后面的 0, 表示HEADER_IND

第二个子字段:01 03 10 0C 10

0×01, 字段类型
0x03,字段长度
10 0C 10 === 0001 0000 0000 1100 0001 0000
0×10 的前5个bit为00010, 为0×02, 表示短信编码方式为7bit ASCII编码
0×10 的后3个bit, 0x0C的前5个bit,为 000 0000 1, 即0x1表示有1个字符。0x0C的后3个bit,0×10的4个bit  0x0110 0001 (A)

第三个子字段: 0306110804182257

这是一个时间戳字段: 11年08月04号18时22分57秒(短消息发送时间)

原创粉丝点击