SIM900A 通过RS232串口进行短信的发送。
一、基本数据
1、SIM900A模块支持RS232串口和LVTTL串口。保留了232口,在学习或者开发时可以监听51低端单片机和模块指令执行情况,能更快的找出原因,节省开发和学习的时间。
2、此模块供电要求:5V 供电 ,电脑调试初期电脑USB供电可以满足要求。因为我们加了1000UF的大电容。长时间传输数据用电量大推荐1A以上的直流,TTL电平串口自适应兼容3.3V和5V单片机。可以直接连接单片机。待机在80MA左右。
3.电脑调试USB转232和USB转TTL均可,根据各人配件而定。支持短信,数据,彩信,上网等。
二、模块的接线


三、模块确认
1.上电后,会发现红灯闪烁,一开始闪烁频率很快。在寻找基站,请等待一会。(一般到新的地方等待的时间比较长)经过十几秒,红灯闪烁频率变低,说明连接到基站。
2.打开串口软件,根据电脑自动识别的串口号,选择正确的串口号。
3.波特率默认为9600,如需更改,输入AT+IPR=xxxx就可以更改,也可以在软件界面更改。
4.接收发送先设置为ASCII,其余设置请见下图。
5.输入:
AT+CPIN? //检查是否插入SIM卡,是否牢固
AT+COPS? //检查是否能上网

如果返回ok,则说明连接正常。(常见的AT指令网上有很多资料常见的AT指令请看看这位博主,这里不再赘述)
四、发送短信
1.发送英文短信
(1)先设置"GSM"字符集(AT+CSCS=“GSM”) ,文本模式(AT+CMGF=1) 。
(2)如果我们要给手机号: 1xxxxx, 发送一条短信, 则发送: AT+CMGS=“1xxxx”,然后模块返回:>
(3) 此时我们输入我们需要发送的内容:“hello world” ,直接点击发送按钮。
(4)在发送完内容以后,输入1A(即 0X1A),注意发送设置为十六进制(HEX)格式 ,直接点击发送按钮。
注 1:0X1A, 即 “CTRL+Z” 的键值, 用于告诉 SIM900A, 要执行发送操作。 另外还可以发送: 0X1B,即“ESC”的键值,用于告诉 SIM900A,取消本次操作,不执行发送。
2.发送中文短信(中英文混合)
(1)发送:AT+CMGF=1,设置为文本模式。
(2)发送:AT+CSMP=17,167,2,25,设置文本模式参数。
(3)发送:AT+CSCS=“UCS2”,设置为 UCS2 编码字符集。(unicode编码字符),即所有字符/数字/汉字,都必须使用 UNICODE 编码。如果想参考汉字和Unicode转化请单击
(4)假定我们要给手机号10086发送一条中英文短信,内容为“我爱你” 。我们首先要将汉字转化为Unicode字符。”我爱你“的Unicode字符为 621172314f60 。同样将电话号码也转换为Unicode编码。
(5)然后,发送:AT+CMGS="(里面内容为电话号码的Unicode编码)"。 然后模块返回: >, 此时我们输入我们需要发送内容的Unicode编码:621172314f60。
(6)在发送完内容以后,输入1A(即 0X1A),注意发送设置为十六进制(HEX)格式 ,直接点击发送按钮。
如果没有理解清楚,见下图:


到此为止,SIM900A最基本的短信功能已经实现。
SIM900A 通过RS232串口进行短信的发送。的更多相关文章
- php实现的IMEI限制的短信验证码发送类
php实现的IMEI限制的短信验证码发送类 <?php class Api_Sms{ const EXPIRE_SEC = 1800; // 过期时间间隔 const RESEND_SEC = ...
- Android短信的发送和接收监听
/**发送与接收的广播**/ String SENT_SMS_ACTION = "SENT_SMS_ACTION"; String DELIVERED_SMS_ACTION = & ...
- 基于android 社会的app短信分享 发送回调事件的实现
摘要 前一段时间.由于项目的需要,采用ShareSDK该共享功能.其中包含 短信股吧.和呼叫系统,以分享要与成功处理服务器交互的消息后,(我不在乎在这里,收到.仅仅关心发出去了).可是ShareSDk ...
- .NET 微信开放平台接口(接收短信、发送短信)
.NET 微信开放平台接口(接收短信.发送短信) 前两天做个项目用到了微信api功能.项目完成后经过整理封装如下微信操作类. 以下功能的实现需要开发者已有微信的公众平台账号,并且开发模式已开启.接口配 ...
- Android 短信模块分析(四) MMS之短信的发送与接收
MMS之短信的发送与接收分析: 一.信息发送: com.android.mms.data.WorkingMessage.java 类 send()函数: public void send() { . ...
- iPhone上将短信内容发送到指定邮箱的方法
iPhone上将短信内容发送到指定邮箱的方法 迄今为止,移动应用安全基本聚焦在以下几个方面,一是移动设备管理BYOD(bring your own device),二是移动恶意软件分析,三是移动设备用 ...
- (转)Android短信的发送和接收监听
/**发送与接收的广播**/ String SENT_SMS_ACTION = "SENT_SMS_ACTION"; String DELIVERED_SMS_AC ...
- PHP实现对短信验证码发送次数的限制(防机刷验证码)
PHP实现对短信验证码发送限制(防止机刷验证码) 对用户获取短信验证码的手机号.ip.和浏览器(使用唯一标识)进行限制.本文介绍的方法是对用户每天只能通过同一浏览器或同一ip地址获取验证码10次或者同 ...
- Android 节日短信送祝福(UI篇:3-选择短信与发送短信的Activity的实现)
一.ChooseMsgActivity的实现 1.布局文件 <RelativeLayout xmlns:android="http://schemas.android.com/apk/ ...
随机推荐
- iOS开发技术 - 二维码扫描、生成
QRecLevel:QR_ECLEVEL_H // 二维码容错率,最高为30%(即QR_ECLEVEL_H),即LOGO有大 ...
- Java 14 发布了,再也不怕 NullPointerException 了!
2020年3月17日发布,Java正式发布了JDK 14 ,目前已经可以开放下载.在JDK 14中,共有16个新特性,本文主要来介绍其中的一个特性:JEP 358: Helpful NullPoint ...
- 【原创】(六)Linux进程调度-实时调度器
背景 Read the fucking source code! --By 鲁迅 A picture is worth a thousand words. --By 高尔基 说明: Kernel版本: ...
- hdu1541树状数组(降维打击)
题目链接:http://icpc.njust.edu.cn/Problem/Hdu/1541/ 题意是:在二维图上有一系列坐标,其中坐标给出的顺序是:按照y升序排序,如果y值相同则按照x升序排序.这个 ...
- WEB应用之httpd基础入门(四)
前文我们聊到了httpd的虚拟主机实现,状态页的实现,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/12570900.html:今天我们来聊一聊后面的常用基础配 ...
- 记录一些服务端术语和搭建web服务器
菜单快捷导航 服务端常用术语 搭建web服务器和配置虚拟主机 记录一些服务端方面的常用术语 1.CS架构和BS架构 1.1 CS架构 CS(Client/Server),基于安装包类型的桌面或手机软件 ...
- python3 open txt的UnicodeDecodeError: 'gbk' codec问题解决方案
python3 open txt的UnicodeDecodeError: 'gbk' codec问题解决方案先直截了当给出解决方案,在程序开头加上:import _locale_locale._get ...
- 【深度强化学习】Curriculum-guided Hindsight Experience Replay读后感
目录 导读 目录 正文 Abstract[摘要] Introduction[介绍] 导读 看任何一个领域的文章,一定要看第一手资料.学习他们的思考方式,论述逻辑,得出一点自己的感悟.因此,通过阅读pa ...
- vue动态定义图片路径
当我在html模块或者css中引入图片的时候用相对路径,例: <div> <img src="../../assets/img/policeImg/tt.png" ...
- 有个原则就是实体类还是controller入参都应该是 包装类型
问题说明 我在使用JPA作为项目的ORM框架的时候,在分页查询中,不管咋样使用查询不出来数据,然后发现Hibernate构建的查询SQL中,在where子句中带上了createTime=0这个条件.这 ...