GPRS短信整理
来源:互联网 发布:stc单片机远程升级 编辑:程序博客网 时间:2024/05/17 02:49
这些天玩了一下SIM300C的短信功能,感觉还是有点意思,呵呵!经过几个昼夜的把玩终于搞定了,收到了发到自己手机上的短信,感觉还是很好的,在这里将整个过程整理一下。
短信分为TEXT模式和PDU模式,前者只能发送字符和英文,比较简单所以就不在多写。重点看看后者是如何发送中文短信的。发送短信需要两个AT指令:1. at+cmgf=0(0为PDU格式);2:AT+CMGS=**这里是短信的(所有的字节长度-18)/2,之后模块返回>符号,就可以输入短信的编码了!
下面就重点说一下短信的编码:
1. 所有编码是以字符的方式发送的,例如:
>0011 000D 9168 3107 0482 06F0 0004 0103 4141 41<^Z>
00:SMSC地址信息的长度;即中心号码长度,00代表为空.
11:基本参数(TP-MTI/VFP);
00:消息基准值(TP-MR);//信息类型(TP-Message-Reference)
0D:目标地址数字个数;
91:目标地址格式(TON/NPI);
68 3107 0482 06F0:目标地址(TP-DA);
00:协议标识(TP-PID);TP-Protocol-Identifier
04:用户信息编码方式(TP-DCS);TP-Da
01:有效期(TP-VP);TP-Valid-Period
03:用户信息长度(TP-UDL);(此处的长度为16进制)
4141 41:用户信息(TP-UD);//其内容是三个大写AAA
说明:18是PDU长度 17 + 1
第一,对模块写入 AT+CMGF=0<回车> 的AT命令(<回车> 要用 \r 来实现),之后应该得到一个 OK 响应,才能继续进行下一步;
第二,对模块写入 AT+CMGS=<length><回车> 的AT命令(其中 <length> 是一个数字,该数字是代表了PDU串中某一部分的长度,这一部分就是指除了SMSC地址之外的那一部分),之后应该得到一个 \r\n> \r\n 响应(特别要注意:\r是回车,\n是换行,>是一个大于号,>后面还有一个空格!),才能继续进行下一步;
第三,可以开始写入要发送的内容了。这一部分只是PDU串中的一部分,并不是完整的PDU串(如前所述,去掉了SMSC地址那一部分),这一部分要以 Ctrl+Z 结尾,但是我们要知道,在字符串中要带上 Ctrl+Z 的话,必须是用ACSII码。Ctrl+Z的ASCII码是16进制的 1A ,所以你可以在你的字符串后面用strcat函数附加上 "\x1A " 来实现。
这样之后,如果发送成功,你就会收到GSM模块的一个发送成功的响应,形如:
+CMGS: 246
OK
- GPRS短信整理
- GPRS短信发送方法
- GPRS模块发短信
- GPRS模块发送短信
- GPRS模块发短信
- GPRS模块发送短信
- 如何用gprs段信猫发短信
- 什么是GSM、GPRS短信猫?
- GPRS模块发送短信流程
- GPRS模块发送短信流程
- gps gprs sim300 发短信
- 手机GPRS、短信等设置
- gprs dtu发送中文短信
- GPRS常识整理
- GPRS常识整理
- gsm modem 短信猫 gprs modem wavecom
- 常用GPRS模块短信发送例程(转载)
- 常用GPRS模块短信发送例程(转载)
- 哈佛机构与冯.诺依曼结构
- DSP深入学习
- F2812的JTAG
- F2812的晶振
- F2812的四层板
- GPRS短信整理
- uC/OS-II (2)
- 如沙的岁月
- 理财说
- 午夜
- 关于死不死的问题
- 开封之行
- 有点累呀~~
- 有点厌倦现在的生活