AT指令发送PDU短信详解

AT指令发送PDU短信详解

ID:37625016

大小:133.11 KB

页数:15页

时间:2019-05-26

AT指令发送PDU短信详解_第1页
AT指令发送PDU短信详解_第2页
AT指令发送PDU短信详解_第3页
AT指令发送PDU短信详解_第4页
AT指令发送PDU短信详解_第5页
资源描述:

《AT指令发送PDU短信详解》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、AT指令发送PDU短信详解AT指令发送PDU短信详解(支持发送到小灵通)本文以一个实例来解说AT指令发送PDU短信的全过程,假如我要发送下面的短信:接收号码:+8613602433649短信内容:工作愉快!短信中心号码:+8613800200500一、短信中心号码处理:用字符串addr表示1、将短信息中心号码去掉+号,看看长度是否为偶数,如果不是,最后添加F即addr="+8613800200500"=>addr="8613800200500F"2、将奇数位和偶数位交换。=>addr="683108200005F0"3、将短信息中心号码前面加上字符91,

2、91是国际化的意思=>addr="91683108200005F0"4、算出addr长度,结果除2,格式化成2位的16进制字符串,16/2=8=>"08"=>addr="0891683108200005F0"二、手机号码处理:用字符串phone1、将手机号码去掉+号,看看长度是否为偶数,如果不是,最后添加F即ph=>ph2、将手机号码奇数位和偶数位交换。=>phone="683106423346F9"三、短信息部分处理:用字符串msg表示1、转字符串转换为Unicode代码,例如“工作愉快!”的unicode代码为5DE54F5C61095FEBFF01

3、,(转换函数见最后附录)2、将msg长度除2,保留两位16进制数,即5DE54F5C61095FEBFF01=20/2=>"0A",再加上msg=>msg="0A5DE54F5C61095FEBFF01"四、组合1、手机号码前加上字符串11000D91(1100:固定,0D:手机号码的长度,不算+号,十六进制表示,91:发送到手机为91,发送到小灵通为81),即phone="11000D91"+phone=>11000D91683106423346F92、手机号码后加上000800和刚才的短信息内容,000800也写死就可以了即phone=phone+"

4、000800"+msg即11000D91683106423346F9+000800+0A5DE54F5C61095FEBFF01=>phone=11000D91683106423346F90008000A5DE54F5C61095FEBFF013、phone长度除以2,格式化成2位的十进制数即11000D91683106423346F90008000A5DE54F5C61095FEBFF01=>50位/2=>25五、所以要发送的内容为AT+CMGF=0<回车>OKAT+CMGS=25<回车>>addr+phone六、如果返回不是ERR

5、OR,恭喜你,发送成功了^_^//-----------------------------------------------------//7bit编码//输入:pSrc-源字符串指针//nSrcLength-源字符串长度//输出:pDst-目标编码串指针//返回:目标编码串长度intgsmEncode7bit(constchar*pSrc,unsignedchar*pDst,intnSrcLength){intnSrc;//源字符串的计数值intnDst;//目标编码串的计数值intnChar;//当前正在处理的组内字符字节的序号,范围是0-7un

6、signedcharnLeft;//上一字节残余的数据//计数值初始化nSrc=0;nDst=0;//将源串每8个字节分为一组,压缩成7个字节//循环该处理过程,直至源串被处理完//如果分组不到8字节,也能正确处理while(nSrc

7、Char))

8、nLeft;//将该字节剩下的左边部分,作为残余数据保存起来nLeft=*pSrc>>nChar;//修改目标串的指针和计数值pDst++;nDst++;}//修改源串的指针和计数值pSrc++;nSrc++;}//返回目标串长度returnnDst;}//7bit解码//输入:pSrc-源编码串指针//nSrcLength-源编码串长度//输出:pDst-目标字符串指针//返回:目标字符串长度intgsmDecode7bit(constunsignedchar*pSrc,char*pDst,intnSrcLength){intnSrc;/

9、/源字符串的计数值intnDst;//目标解码串的计数值intnByte;//当

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。