PDU发送短信收到数据不够的问题???
我是用MC35I,使用超级终端通过串口发送AT指令,发送pdu格式短信如下:
发送用户数据为7个时一切正常如下:
AT+CMGS=22
> 0011000D91683187368979F20400000711223344556677
+CMGL: 1,0,,26
0891683108703305F0040BA13187368979F20400506080513563200711223344556677
可发送用户数据为8个或8个以上时,收到的内容会少一个字节如下:
AT+CMGS=23
> 0011000D91683187368979F2040000081122334455667788
+CMGL: 2,0,,26
0891683108703305F0040BA13187368979F20400506080514502200811223344556677
我改变用户数据长度为实际加1后,收到数据长度正确,如下8个我填的用户数据长度为9:
AT+CMGS=23
> 0011000D91683187368979F2040000091122334455667788
+CMGL: 2,0,,26
0891683108703305F0040BA13187368979F2040050608051450220081122334455667788
问题点数:50、回复次数:2Top
1 楼wujunliang(亮)回复于 2005-06-08 16:28:03 得分 0
请问为何啊???急
Top
2 楼meishi(meishi)回复于 2005-06-09 13:22:34 得分 50
是这样的,
001100
0D91683187368979F2
04
00 //短消息格式00:U7bit;04:ASCII;08:UNICODE
00 //有效期
07 //短消息长度
11223344556677
很明显你发的短消息采用的编码为U7bit,
采用这种编码时,端消息长度应该这样计算:
假设实际的字节数x,端消息长度n,则:
n=x*8/7;
但是你发的短消息内容好像并没有压缩,不符合U7bit规范
请参考规范,发标准的短消息。
看你的短消息内容采用的好像是:ASCII规范
这样你只要把00改为04,其余不做任何改动就行了。
试一下,我一直在引身
qq:153973717
Top




