android 短信编码 usc2,QT串口发送SMS中文短信--编码

串口发送SMS中文短信步骤

1.设置SMS格式:发送指令 AT+CMGF=0 (0为PDU格式格式,1为Text模式)

qStrCmd= "AT+CMGF=0\r";

myCom->write(qStrCmd.toAscii());

2.发送短信长度:发送指令 AT+CMGS=length

int iLength=strlen(m_SendCont.toStdString().c_str())/2;

qStrCmd=QString("%1%2\r").arg("AT+CMGS=").arg(iLength-9);

myCom->write(qStrCmd.toAscii());

3.发送短信内容:

myCom->write((m_SendCont+"\x01a").toStdString().c_str());

SMS编码

08 91 683108501905F0 11 00 0d 91 685158191026F4 00 08 01 06 60a8597d0021(您好!)

1、SCA:

08                                             服务中心的电话号码长度(默认00 将读取SIM 中设置的SCA)

91                                             短消息中心地址的类型,常用为 0x91

683108501905F0            短信服务中心号码

2、PDU Type:11

协议数据单元类型

3、MR:00

Message Reference

4、DA 接收方地址 :0d 91 685158191026F4

0d 接收方电话号码长度

91 表国际

685158191026F4   号码加86

5、PID协议标识 (Protocol-Identifier):00

6、DCS 数据编码方案:08

参数表示用户数据(UD)采用什么编码方案

7、VP 信息有效期:01

8、UDL 用 户 数 据 长 度:06

参数表示消息在SMSC中不再有效的时长

9、UD 用 户 数 据 :60a8597d0021

编码类型为USC2(16bit)

注:测试时,发送地址为10086时,SCA不能为默认00

AT+CMGS的参数是从PDUType部分开始计算PDU的长度,不包括SCA的长度。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值