1.短信发送流程
测试设备正常
发送: AT
回复: OK
测试模块是否工作正常
发送:ATD10086; 不要忘记有分号结尾
回复:OK
如果对方的拒绝接电话,回复:BUSY
这里我们使用TXT文本方式发送短信。不使用PUD模式。
配置模块为TXT模式然后向指定的手机号码发送短信。
具体流程:
AT+CMGF=1 配置模块为TXT模式
AT+CMGS="10086" 指定手机号码
等待接收到“>”才发送短信内容
发送短信内容如: 1234567
最后确认发送: 16进制发送 “1A”
完成发送短信。
2.短信接收流程
模块正常工作的时候当收到了短信后模块会通知单片机。
单片机收到:
+CMTI: "SM",32 表明模块收到了短信。若缓存字符串中含有"+CMT"就表示有新的短信
注意32表示 信息存放在第几条。 想要读取短信内容
delay_ms(50);//等待数据全部接收完成
读取指定短信信息。
AT+CMGR=32 读取内存卡里面的第32条短信。
模块回复的内容:
AT+CMGR=32
+CMGR: "REC READ","+8613912345678","","16/07/15,15:07:01+32"
123456789
OK
REC READ 表示短信已经被读取了
"+8613912345678" 谁发来的短信
"16/07/15,15:07:01+32" 发短信的日期
为了保证短信接收正常,必须保证模块内存卡里面的短信有足够的空间保存信息。需要删除已经读取过的短信内容。
AT+CMGD=32 删除第32条短信内容。
短信AT命令
AT+CMGF=1 TXT模式
AT+CMGS="10086" 目标号码
AT+CMGR=32 读取短信
AT+CMGD=32 删除短信