200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > GPRS使用AT命令拨接电话 发收中英文短信

GPRS使用AT命令拨接电话 发收中英文短信

时间:2021-11-09 15:03:21

相关推荐

GPRS使用AT命令拨接电话 发收中英文短信

*************************************************************************************************************************************************************

开发模块:A7模块(GPRS/GPS)

测试环境:串口调试助手,远程登陆软件(PUTTY)

**************************************************************************************************************************************************************

GPRS介绍:

GSM模块,是将GSM射频芯片、基带处理芯片、存储器、功放器件等集成在一块线路板上,具有独立的操作系统、GSM射频处理、基带处理并提供标准接口的功能模块。GSM模块根据其提供的数据传输速率又可以分为GPRS模块、EDGE模块和纯短信模块。短信模块只支持语音和短信服务。GPRS,可说是GSM的延续。它经常被描述成“2.5G”,也就是说这项技术位于第二代(2G)和第三代(3G)移动通讯技术之间。GPRS的传输速率从56K到114Kbps不等,理论速度最高达171k。相对于GSM的9.6kbps的访问速度而言,GPRS拥有更快的访问数据通信速度,GPRS技术还具有在任何时间、任何地点都能实现连接,永远在线、按流量计费等特点。EDGE技术进一步提升了数据传输的速率到384K-473K,被称为”2.75G”,数据传输速率更2倍于GPRS。目前,国内的GSM网络普遍具有GPRS通讯功能,移动和联通的网络都支持GPRS,EDGE在部分省市实现了网络覆盖。

GPRS模块,是具有GPRS数据传输功能的GSM模块。GPRS模块就是一个精简版的手机,集成GSM通信的主要功能于一块电路板上,具有发送短消息、通话、数据传输等功能。GPRS模块相当于手机的核心部分,如果增加键盘和屏幕就是一个完整的手机。普通电脑或者单片机可以通过RS232串口与GPRS模块相连,通过AT指令控制GPRS模块实现各种基于GSM的通信功能。

GPRS模块区别于传统的纯短信模块,两者都是GSM模块,但是短信模块只能收发短信和语音通讯,而GPRS模块还具有GPRS数据传输功能。”

A7模块介绍:

A7模块是深圳安信可公司开发的一个模块,这个模块将GPRS与GPS集成在了一个芯片上。所以我们可以通过这个模块既可以做GPRS的开发,也可以做GPS的开发。

1.硬件介绍

A7模块说明,我用的这个A7模块是将GPRS与GPS集成在一个芯片上的,如图所示:

2.USB转串口线与A7模块硬件连线

我的串口线是支持rs232电平和TTL电平两种,之前在连接开发板的时候我们用的是rs232,所以得把它拨到TTL电平才能通信上。

首先,我们在PC上调试,用我们的串口线的TXD与A7模块的RXD相连,串口线的RXD与A7模块的TXD相连,GND与GND相连,

如下所示:

(A7) TXD<------>RXD(串口)

RXD<------>TXD

GND<------>GND

硬件连线连好之后,打开A7模块的电源开关,按下模块启动按键(按下时间最好在1s以上),模块启动显示灯亮,说明模块已经自启动。

注意:这里后面我们要进行打电话发短信,所以要提前把我们的SIM卡插入A7模块,不过A7模块是不支持电信SIM卡的,只支持联通,移动的SIM卡。

3.串口通讯设置

GPRS模块波特率为115200,数据位为8,停止位为1校验位我们一般不需要校验位,所以默认为NONE。

当按下A7模块启动按键之后,串口调试助手上会默认打印一些信息,这时候说明模块已经成功自启动。

4.AT基础测试指令

AT测试AT指令能否使用有返回AT+CPIN? 测试SIM卡是否准备好AT+CCID测试SIM卡IDAT+CSQ测试信号强度

示例:

输入:AT

ATOK //返回OK说明成功

输入:AT+CPIN?

AT+CPIN? +CPIN:READY //返回ready说明指令发送成功OK

输入:AT+CCID

AT+CCID+CCID:89860115885020760317 //返回说明成功OK

输入:AT+CSQ

AT+CSQ+CSQ: 20,99 //返回说明成功OK

********************************************************************************************************************************************************************************

注意:在输入AT指令后一定要按“回车“键,再选择手动发送,只有这样才能有返回指令OK。

********************************************************************************************************************************************************************************

5.拨打,接听,挂断电话

打电话:ATD+电话号码+“;”

例:ATD+10010;(我是拨打联通服务电话的,后面一定要记得加上“;”分号)

应答电话:ATA

例:ATA(当别人给你打电话时,给AT模块发送ATA指令,即可接电话)

挂断电话:ATH

例:ATH(当你想挂断别人电话时,给AT模块发送ATH指令,即可挂断电话)

*************************************************************************************************************************************************************************

注意:1.上面指令我是在串口调试助手上进行的,当然也可以用远程登录软件来执行。

2.接电话时要用耳机插入A7模块才可以和对方进行讲话,不过这里要注意的是A7模块默认声道是喇叭输出,喇叭输出我们不能听到对方讲话

所以要切换到耳机输出,切换耳机输出AT指令为:AT+SNFS=0;切换喇叭输出为:AT+SNFS=1

3.A7模块使用的耳机采用一体式四段接口OMTP标准,而不是CTIA标准,所以耳机一定要一体式四段的,否则听不到声音。

*************************************************************************************************************************************************************************

6.发送,接收中英文短信

1.接收中英文短信

AT+CMGF=0 //显示PDU MODEAT+CSDH=1//显示文本格式AT+CNMI=0,2,0,0,0 //显示新收到的短信内容

这时候别人给你发中英文短信时,串口调试助手上就会显示中英文内容,

2.发送英文短信

发送短信内容之前我们要先将短信内容转换为十六进制如图所示

在线PDU编码解码网址:/_a/blog/a2274~/pdu.htm

AT+CMGF=1 // 设置TEXT MODEAT+CSCS="GSM"AT+CMGS=“10010“ // 其中短信要发给谁,号码就填谁的AT+CMGS=39 //这里是用CMGS,不是CMGW0011000D91685106686525F60008AA1800740065007300740020006500780061006D0070006C0065//发送这个数据后面别加换行1A

然后它会出现一个“>”,此时输入我们的短信内容,短信内容要转换为十六进制,例如短信内容为:test example,转换为十六进制为AT+CMGW=39

0011000D91685106686525F60008AA1800740065007300740020006500780061006D0070006C0065,也就是我们要先发送AT+CMGW=39,再发送十六进制短信内容

**********************************************************************************************************************************************************************

注意:如果我们是在串口调试助手上进行的话,发送短信内容后,要输入1A,也就是Ctrl+Z的码值,如果是在远程登录软件上进行的话,按照上面

同样的操作之后,最后输入完十六进制内容后,直接输入Ctrl+Z,即可将短信内容发送出去。

************************************************************************************************************************************************************************

3.发送中文短信

AT+CMGF=0 //设置PDU格式AT+CSCS="GSM"AT+CMGS=23 //这里我的短信内容为“我在测试”,所以转换为HEX格式后的数值为23,如果内容不同,数值也将不同0011000D91685106686525F60008AA08621157286D4B8BD51A

***************************************************************************************************************************************************************************************

注意:指令收发短信主要有两种模式:Text模式和PDU(Protocol Data Unit,协议数据单元)模式。使用Text模式收发短信代码简单,很容易实现,最大缺点不支持中文短信。PDU模式不仅能发送中文短信,也能发送英文短信,如果想只是接发英文短信,可以设置为TEXT模式,AT指令为:AT+CMGF=1

*********************************************************************************************************************************************

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。