一、英文短信的发送:

一般分为五步进行短信的发送:

1、我们用到AT+CSCS指令来设置TE字符集,默认的为GSM7位缺省字符集,在发送英文短信时,需要发送:AT+CSCS="GSM",设置为缺省字符集即可。

2、用指令AT+CMGF来设置短消息模式,即为文本模式(TEXT)还是PDU模式,这里我们发送AT+CMGF=1,设置为文本模式即可。

3、下面就是要设定具体的发送对象的电话号码了,假如我们要给电话为18792992426的号码发送短信,则发送:AT+CMGS="18792992426"即可。

4、指定号码设置完毕之后就要发送短信内容了,直接发送英文内容即可,没有其他附加的指令。

5、最后就是短信发送的启动指令了,即发送0X1A即可。

特别注意:以上五步即可完成一条短信的发送,但是还是特别需要注意几点:

在发送前面三条的内容时,要在发送的结果加上回车,如果用调试助手的话,不用加回车,只需在新行发送那里打钩即可。发送第四条短信内容的时候不必发送回车。在发送完短信内容以后,最后已十六进制(HEX)格式单独发送:1A(即0X1A),即可启动一次短信的发送,另外还可以发送:0X1B即“ESC”的键值,用于告诉SIM900A,取消本次操作,不执行发送。稍等片刻,在短信发送成功之后,模块会返回如:+CMGS:156的确认信息,表示短信发送成功。

二、英文短信的读取:

1、和发送短信一样,发送指令AT+CSCS="GSM"。

2、发送指令AT+CMGF=1,设置模式。

3、 一条关键的指令:AT+CNMI,用于设置新消息指示。发送AT+CNMI=2,1,设置新消息提示。当收到短信,且SIM卡未满的时候,SIM900A模块会返回数据给串口,如:+CMTI:"SM",2表示收到的新消息,存储在SIM卡的位置2。

4、知道了短信存储的位置,下来就是读取短信的指令了,发送:AT+CMGR,用于读取短信,比如发送AT+CMGR=1就可以读取SIM卡存储在位置1的短信。

英文短信的读取步骤比较简单,但是还是需要注意几个地方:

1: 如果SIM内存满了,当接受到新消息的时候就不会返回数据给串口,此时解决的方法就是删除以前的存储内容,释放空间,具体操作为:发送指令:AT+CMGD=1,删除全部短信。

2: 想要编程更加清晰方便,我们也可以提前知道SIM卡的实时内存状态,如发送指令:AT+CPMS?,可以查询当前SIM卡最大支持多少条短信存储,以及当前存储了多少条短信等信息。如返回:+CPMS:用户手册“SM”,1,50,表示当前SIM卡最大存储50条信息,目前已经有1条存储的信息。

SIM900A短信操作相关推荐

  1. android学习笔记---37_采用广播接收者实现系统短信操作_获取短信_收发短信等

    37_采用广播接收者实现短信操作 1.       原理:当系统接收到短信时候,会发出一个广播Intent,Intent的action名称为android.provider.Telephony.SMS ...

  2. 1.模拟完成多个线程往10几万用户发短信操作

    文件在E:\学习文档子目录压缩\并发技术\J2SE多线程基础 或我的网盘\我的笔记\学习文档子目录压缩\并发技术\J2SE多线程基础下 项目结构 代码如下 User.java package com. ...

  3. Android短信操作(通过内容提供者)

    2019独角兽企业重金招聘Python工程师标准>>> 1.Android短信数据库表结构 URI主要有: content://sms/               所有短信 con ...

  4. android sms 接收短信,Android SMS 短信操作

    android的短信保存在短信库里,但并提供类似Contacts的公开的Content Provider方便操作.这里简单的介绍下:android中的短信信息保存在/data/data/com.and ...

  5. Android的基本常用的短信操作

    1.调用系统发送短信界面(传入手机号码+短信内容) 2.隐藏发送短信(指定号码指定内容)(这里隐藏只是没有反写入数据库) 3.获得收件箱接收到的短信 4.Android屏蔽新短信通知提示信息:(Con ...

  6. php短信android,Android_Android短信操作常见协议和常用代码,content://sms/inbox 收件箱 conte - phpStudy...

    content://sms/inbox 收件箱 content://sms/sent 已发送 content://sms/draft 草稿 content://sms/outbox 发件箱 conte ...

  7. [应用][AT][C++] 使用AT命令操作SIM卡进行短信发送

    最近投身于某电子公司的用电信息采集终端软件重写,主要负责终端与主台的通讯功能编写.本周用到了AT命令操作SIM卡进行发送短信功能,在此做一个小小的总结,希望对有类似需求的童鞋能有所帮助. 注:由于有C ...

  8. Android之——短信的备份与还原

    转载请注明出处:http://blog.csdn.net/l1028386804/article/details/47091281 眼下,Android手机中的一些软件能够实现手机短信的备份与还原操作 ...

  9. Android从普通发送和接收短信到对短信进行拦截

    概述: 说实话,关于Android中对短信的一些相关操作是一个比较入门的东西.那我现在还要来写这一篇博客的原因只是因为现在开发中有相关内容,而又想将这些东西分享给更多的人来学习,同时在以后对Andro ...

  10. Linux-C实现GPRS模块发送短信

    "GSM模块,是将GSM射频芯片.基带处理芯片.存储器.功放器件等集成在一块线路板上,具有独立的操作系统.GSM射频处理.基带处理并提供标准接口的功能模块.GSM模块根据其提供的数据传输速率 ...

最新文章

  1. saxreader读取服务器xml文件,使用SAXReader从xml文件读取元素
  2. dwr消息推送和tomcat集群
  3. Python3 pymysql连接mysql数据库 windows
  4. Oracle 小技巧
  5. 没有qpress_关于网站没反应的阿里云帮助中心问题解答
  6. iOS调用系统相册、相机 显示中文标题
  7. matlab画图plot设置字体_R语言科研画图字体格式设置
  8. windows下,linux下elasticsearch安装插件head插件的步骤
  9. Tensorflow Auto-encoder + VAE 实战
  10. Open3d之交互式可视化
  11. wxWidgets第十七课 采用AGG渲染库
  12. 第2章_Java基本语法(下):程序流程控制
  13. 对于java中接口的作用与理解
  14. 这份Java面试题,阿里P7的正确率都不到50%!!
  15. libjpeg php,libjpeg62_turbo
  16. 神舟计算机主板bios,最详细的各种主板bios设置方法
  17. iphone型号表_iPhone12各版本有什么区别 苹果12四款机型配置表一览
  18. python怎么输入下一行_python中怎么换行,怎么从第一行换到第二行的?
  19. 谷物大脑(来自樊登读书会)
  20. 【C语言】#文件操作#有5个学生,每个学生有3门课程的成绩,从键盘输入以上数据(包括学号、姓名、3门课成绩),计算出平均成绩,将原有数据和计算出的平均分数存放在磁盘文件stud中。

热门文章

  1. 思科模拟器5506防火墙配置_企业办公网络配置不求人之三——端口映射
  2. 5分钟入门ER/Studio
  3. IntelliJ IDEA汉化解决方案教程
  4. java奶茶店管理系统_奶茶店的管理信息系统.doc
  5. 国产手机企业在IOT行业展开混战,华为增长势头凶猛
  6. houdini 常用
  7. STM32F103串口通信用于获取GY-53 红外测距模块数据
  8. 实验二、人工智能:产生式系统(动物识别系统)
  9. Matlab资料汇总暨MATLAB中文论坛帖子整理(一)
  10. VS 2019 打包安装应用