TC35模块收发短信

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/TI321/article/details/86548534

1 GSM 模块测试
首先,将 SIM 卡插入板子背面 SIM 卡座。接上 5V/1A 电源适配器和串口,可
以看到电源灯“LED1”亮。按下启动开关 1 秒然后松开,模块的状态指示灯“led”
按照“64ms 亮/800ms 灭”闪烁。当搜寻到网络并注册上后,状态指示灯按照“64ms
亮/3000ms 灭”闪烁。 代表已经注册上网络,然后可以进行下一步的操作

1.2 串口调试助手操作
发送 ATE0 <回车> 

返回 ATE0
         OK (目的将回显关闭) 
 

1.3 设置文本的模式(有两种模式:PDU和TEXT)

1.PDU 发送模式: 
(1)发送 AT+CMGF=0 <回车> 
返回 OK 
(AT+CMGF=0 为设置短信息格式为 PDU 模式;

AT+CMGF=1 为设置短信息格式为 TEXT模式) 


(2)发送 AT+CMGS=27<回车> 
返回  


(3)发送 
0891683110100305F011000D91685126303289F10008AA0C6D4B8BD55DF27ECF5C317EEA <没有回车>
<如果发送回车了,你会发现只返回 OK 而并没有成功!90%初学者会犯这个毛病,包括我> 

<这段数字的含义在后面会有详细的解释>
返回 无 
如果返回是前部乱码,后面是正确的话,不要担心请继续。波特率自动设置问题。


(4)发送 1A<回车> (目的短信发送完毕结束符) 
返回 +CMGS: XXX 
          OK 

(5)发送 CTRL-Z 键(这里也是一个矛盾集中点,许多人误以为直接按此键,发现
被撤销了发送内容,其实他的本意是让你发送十六进制的 1A,这个数据。也就
是串口助手左边的十六进制发送选项打钩后发送。)注意 1A 后也打回车。
之后等待几秒如果不是 ERROR 而是 
+CMGS: XXX 
OK 
那么你就成功了!!O(∩_∩)O 哈哈~ 

下面我就这段代码进行解释性说明: 
0891683110100305F0(00)11000D91685126303289F10008AA0C6D4B8BD55DF27ECF5
C317EEA 
中心号设置: 
(1)08—短信息中心地址字节长度
指(91)+( 683110100305F0)的长度,两个数字计为一个字节长度;
(2)91— 短信息中心号码类型(Type of Number) 
91 是 TON/NPI 遵守 International/E.164 标准,指在号码前需加‘+’号.此外
还有其它数值,但 91 最常用;
(3) 685110100375F0—短信息中心号码,
注意其每两位是位置颠倒的。实际号码应为:8615010130570.由于电话号码位奇
数(11), 因此加入 F 来保证 8 位;(1)、(2)、(3)通称短消息中心地址(Address 
of the SMSC)。


地址及内容设置: 
(1)00-短信息中心地址长度。在这里为 0,表示使用存储在 SIM 卡中的短信息中
心地址;例子中直接写的信息中心号,首次发送写,其余可以写也可不写。 
(2)11-SMS_SUBMIT 的第一个 8 位; 
(3)00-发送方地址信息。
在这里为 0,表示使用本机号码; 
(4)0B-接收方号码长度; 
(5)81-接收方号码类型(Type of Number); 
(6) 3156307279F0-接收方号码.   实际号码为 13650327970+F; 
(7)00-协议标识 TP-PID(TP-Protocol-Identifier); 
(8)08-数据编码方案 TP-DCS(TP-Data-Coding-Scheme) 
Bit No.7 与 Bit No.6 :一般设置为 00; 
Bit No.5:0—文本未压缩,1—文本用 GSM 标准压缩算法压缩; 
Bit No.4:0—表示 Bit No.1、Bit No.0 为保留位,不含信息类型信息,1—表
示 
Bit No.1、Bit No.0 含有信息类型信息; 
Bit No.3 与 Bit No.2:00—默认的字母表,01—8bit,10—USC2(16bit),11
— 
预留; 
Bit No.1 与 Bit No.0:00—Class 0,01—Class 1,10—Class 2(SIM 卡特
定信 
息),11—Class 3;

(9)AA-有效期 TP-VP(TP-Valid-Period); 
(10)0C-用户数据长度 TP-UDL(TP-User-Data-Length).若发送 7Bit 编码数据,
则 TP-UDL 为实际字符个数;若为 8Bit 数据或 16Bit 编码的 Unicode,则 
TP-UDL 为数据字节(8 位)的个数。 
(11) 6D4B8BD55DF27ECF5C317EEA -用户数据 TP-UD(TP-User-Data) 
中文数据为:测试已经就绪 (可以使用Unicode编码软件来发送你自己想要发送的语句)



二.  TEXT 发送模式:(相对简单很多。) 
发送:AT<回车> 
返回:OK 
发送:AT+CMGF=1<回车> 
返回:OK 
发送:AT+CSCA=”+8615010130570”<回车> 注意要打引号啊 
返回:OK 
发送:AT+CMGS=”13650327970”<回车> 
返回:> 
发送:XXXXXX(0-9,A-Z)[XXXXX 是指阿拉伯数字 0-9,英文 26 个字母 A-Z] 
返回: 
发送:1A(十六进制发送)<回车> 
返回:+CMGS: XXX 
            OK  


 如果不能正常发送,返回 ERROR,则说明需要格式化。可以发送 AT&F 命令格式化。 
发送:AT&F<回车> 
返回:AT&F<回车> 

猜你喜欢

转载自blog.csdn.net/TI321/article/details/86548534
今日推荐