SIM900系列模块AT指令详解:短信操作与应用
需积分: 13 119 浏览量
更新于2024-08-24
收藏 741KB PPT 举报
SIM900系列模块是广泛应用在短信和数据通信中的GSM/GPRS模块,它们支持多种AT指令用于控制和配置模块的功能。在这个应用中,我们主要关注短信服务(SMS)的相关AT指令。
1. AT+CPMS: 这个指令用于查询SIM卡中存储短消息的内存状态,可以设置短信存储在SIM卡或者手机内存中。例如,`AT+CPMS="SM","SM"`会设置短信存储在SIM卡上。
2. AT+CNMI: 这个设置新消息通知的指令,可以控制模块如何处理新接收到的短信,例如是否立即显示、是否存储以及是否发送到串口等。
3. AT+CMGF: 选择短信的格式,0为PDU模式,1为文本模式。在文本模式下,短信以可读的文本形式发送,而PDU模式则是二进制格式,适用于包含特殊字符或非ASCII编码的短信。
4. AT+CSCS: 用于设置短信编码集,比如"GSM"用于7位GSM默认编码,"UCS2"则用于16位Unicode编码,适用于发送非拉丁字符的短信。
5. AT+CSCA: 用于查询或设置短信服务中心(SMSC)的电话号码,这是短信发送和接收的中转站。
6. AT+CSMP: 在文本模式下设置短信参数,例如编码类型、压缩模式等。
7. AT+CMGS: 发送短信的指令,通常后面跟电话号码,然后输入短信内容,最后发送Ctrl+Z(ASCII码26)来结束短信发送。
8. AT+CMGR: 读取存储在SIM卡或手机内存中的短信,可以指定短信的ID。
9. AT+CMGD: 删除单条或所有短信,通过指定ID删除特定短信,或者不提供ID删除所有短信。
10. AT+CMGDA: 删除所有短消息,这个命令比AT+CMGD更彻底,一般用于清空存储。
SIM900系列模块与SIM300系列的主要区别在于处理AT指令的方式。SIM300能同时处理多条指令,而SIM900则一次只能处理一条,这要求在编程时要注意发送指令的顺序和等待响应,避免指令冲突。
除此之外,SIM900模块还支持其他功能,如网络注册(AT+CREG)、语音通话(AT+VCID)、TCP/IP连接(AT+CGATT、AT+CIPSTART)、PPP拨号(AT+CGDCONT、AT+CGACT、AT+CGPADDR)、MMS(AT+CMMS)、FTP和HTTP等高级应用。在实际使用中,需要根据具体需求选择和配置相应的AT指令。
设置模块功能的AT+CFUN指令允许用户控制模块的状态,例如软件复位(AT+CFUN=1,1)或者关闭所有功能(AT+CFUN=0),以达到节省电源或重启网络连接的目的。
固定波特率的设置(AT+IPR)可以确保MCU与模块之间的通信稳定,尤其是在波特率不匹配可能导致数据丢失的情况下,可以通过AT+IPR设置一个固定的波特率,如`AT+IPR=115200`将波特率设定为115200。
在开发过程中,了解并熟练运用这些AT指令是实现有效通信的关键。需要注意的是,每个指令的正确执行都需要等待模块的响应(如"OK"或特定的返回值),确保指令成功执行。
2007-05-01 上传
2018-10-03 上传
2018-05-14 上传
2023-05-18 上传
点击了解资源详情
点击了解资源详情
2016-06-01 上传
2017-08-08 上传
2015-08-30 上传
西住流军神
- 粉丝: 31
- 资源: 2万+
最新资源
- 深入浅出:自定义 Grunt 任务的实践指南
- 网络物理突变工具的多点路径规划实现与分析
- multifeed: 实现多作者间的超核心共享与同步技术
- C++商品交易系统实习项目详细要求
- macOS系统Python模块whl包安装教程
- 掌握fullstackJS:构建React框架与快速开发应用
- React-Purify: 实现React组件纯净方法的工具介绍
- deck.js:构建现代HTML演示的JavaScript库
- nunn:现代C++17实现的机器学习库开源项目
- Python安装包 Acquisition-4.12-cp35-cp35m-win_amd64.whl.zip 使用说明
- Amaranthus-tuberculatus基因组分析脚本集
- Ubuntu 12.04下Realtek RTL8821AE驱动的向后移植指南
- 掌握Jest环境下的最新jsdom功能
- CAGI Toolkit:开源Asterisk PBX的AGI应用开发
- MyDropDemo: 体验QGraphicsView的拖放功能
- 远程FPGA平台上的Quartus II17.1 LCD色块闪烁现象解析