SIM900系列模块AT指令详解:短信操作与应用

需积分: 13 5 下载量 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"或特定的返回值),确保指令成功执行。