- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
GSM短信
GSM900模块收发短信
使用 ATK-SIM900A 模块进行短信的读取与发送,将要用到的指令有:
AT,AT 指令必须以AT或at开头, 以回车(CR)结尾;
AT+CNMI,用于设置新消息指示。发送:AT+CNMI=2,1,设置新消息提示,当收到新消息,且 SIM 卡未满的时候,SIM900A 模块会返回数据给串口;
AT+CMGF,用于设置短消息模式,SIM900A 支持 PDU 模式和文本(TEXT)模式等 2种模式,发送:AT+CMGF=1(文本模式)、AT+CMGF=0(PDU模式);
AT+CSCS,用于设置 TE 字符集,在发送纯英文短信的时候,发送:AT+CSCS=GSM,设置为缺省字符集即可。在发送中英文短信的时候,需要发送:AT+CSCS=UCS2,设置为 16 位通用 8 字节倍数编码字符集;
AT+CSMP,用于设置短消息文本模式参数,在使用 UCS2 方式发送中文短信的时候,需要发送:AT+CSMP=17,167,0,8;AT+CSMP=17,167,0,0(英文模式);AT+CSMP=17,167,2,25(中英文混合);
AT+CMGR,用于读取短信,比如发送:AT+CMGR=1,则可以读取 SIM 卡存储在位置1 的短信。
AT+CMGS,用于发送短信,在GSM字符集下,最大可以发送 180 个字节的英文字符,在UCS2字符集下,最大可以发送 70 个汉字(包括字符/数字)。
发送短信例子
发送英文短信(yaoju)
AT+CSCS=GSM //回车
OK
AT+CMGF=1 (短信为文本模式) //回车
OK
AT+CMGS //回车
yaoju // 发送不回车
16进制发送:1A,不回车
+CMGS: 235(成功标志)
OK
中文发送
AT //回车
OK
AT+CMGF=1 //回车
OK
AT+CSMP=17,167,0,8 //回车
OK
AT+CSCS=UCS2 //回车
OK
AT+CMGS=00310035003800300036003100320035003100390031 (手机号) //回车
4F60597D //不用回车
最后以十六进制(HEX)格式单独发送(不用添加回车):1A(即
0X1A),启动一次短信发送
+CMGS: 245(成功标志)
OK
中英文混合测试
AT
OK
AT+CMGF=1
OK
AT+CSMP=17,167,2,25
OK
AT+CSCS=UCS2
OK
AT+CMGS=00310035003800300036003100320035003100390031
00410054004B002D00530049004D00390030003000414E2D82F1658777ED4FE1
+CMGS: 254
OK
读取短信的例子
读取英文短信
1、我们发送:AT+CMGF=1,设置为文本模式,然后发送:AT+CSCS=GSM,设置 GSM 字符集,
2、然后发送:AT+CNMI=2,1,设置新消息提示。
接着,我们用别的手机发送一条英文短信“ALIENTEK ATK-SIM900A Module”到我们的模块上(如果不知道模块号码,可以发送:AT+CNUM,查询模块号码)。
3、模块接收到短信后,会提示如:+CMTI: SM,2,表明收到了新的短信,存放在 SIM 卡位置 2。
4、我们发送 AT+CMGR=2,即可读取该短信
命令:
AT+CMGF=1 //回车
OK
AT+CSCS=”GSM” //回车
OK
+CMTI: SM,47 //自己返回的结果
AT+CMGR=47 //读取SIM 卡位置 47的短信息
+CMGR:”REC READ”,…… //返回的信息
OK //返回的
重点:
每次发送命令前都要确定在第一行,且不能有空格;
用AT+CSMP设置短消息文本模式参数时,参数之间的逗号一定要在英文状态下;
发送中文短信时,需要将手机号转成Unicode码,并加上冒号,而发送纯英文短信时则不需要转码;
发送短信内容时不需要回车,直接发送,然后在16进制下不回车发送1A;
成功发送完一条短信后,不需要退出,可接着再次发送。
文档评论(0)