SIM900A调试之波特率设置_SIM900A基站定位调试详细步骤

电子说

1.3w人已加入

描述

  SIM900A调试之波特率设置

  1、波特率

  1.1自适应波特率

  当SIM900A模块处于自适应波特率下,模块开机后,会从串口发出一串字符,在上位机不同的波特率下,会显示出不同的字符,以115200为例子,模块开机后,上位机会收到如下信息,其中0x49是英文字母”I”的ASCII码:

波特率

  然后我们发送AT指令,即可把模块的波特率同步成我们上位机的波特率(能同步成功的波特率是特定的几个:1200、2400、4800、9600、19200、38400、57600、115200)同步好后,会出现以下界面,返回“OK”,自适应下同步出来的波特率,在关机后就失效,下次启动还是自适应波特率。

波特率

  1.2确定波特率

  当SIM900A模块处于确定波特率下,模块开机后,若上位机在正确的波特率下,那么就会收到如下的信息,其中“RDY”代表模块启动成功,可以接收AT指令,“+CREG: 1”代表SIM卡注册网络成功。

波特率
波特率

  2、GPRS心跳包

  GPRS连上TCP后,若长期不发送数据,会发生连接在但不能发数据的情况。这是运营商为了保护网络资源而设定的。我们需要定时发生数据包以维持连接一直可用,这个数据包也叫做心跳包。心跳包的间隔随着地区运营商不同而不同,可根据实验情况确定,网络繁忙地区一般为几分钟。当SIM发送心跳包或者其他数据,服务器没有回应的时候,我们不需要继续等待数据,认为这次的连接已失效,主动断开连接,转入重连程序。

  系统有这么一个徐需求:服务器决定SIM900A何时上传数据,上传什么数据,由于服务器不能主动去连接SIM900A,且SIM900A是运营商的内网,服务器是外网,要实现这样的需求,有两个方案:

  1)SIM900A一直连接TCP,用心跳包维持;

  2)SIM900A平时与服务器是断开连接的,要连接时,服务器发送短信,SIM900A然后连接TCP。

  我使用的是方案1,用定时中断。不一定是SIM向服务器发送心跳包,服务器定时向SIM发送数据也是可以维持的。

  心跳包的作用可以不仅仅是维持连接,我们可以在心跳包里附加一点有价值的状态信息等。

  在我调试这个模块的时候,经常连接不上,后来发现是信号的问题,信号低于10,很难通信成功。

  3、网络时间同步

  如果SIM模块是带有网络时间功能的,就可以不使用MCU的RTC了。授时服务器可以多准备几个,防止某一个服务器挂掉。另外,还可以根据ntp协议,做一个自己的授时服务器。

  SIM900A基站定位调试详细步骤

  第1步:ATE1握手并设置回显

波特率

  第2步:AT+CGMR查看SIM900的版本信号

波特率

  第3步:AT+CSQ查看信号质量

波特率

  第4步:AT+CREG?查看GSM是否注册成功

波特率

  第5步:AT+CGREG?查看GPRS是否注册成功

波特率

  第6步:AT+CGATT?查看GPRS附着状态

波特率

  第7步:AT+SAPBR=3,1,“CONTYPE”,“GPRS”设置网络参数

波特率

  第8步:AT+SAPBR=3,1,“APN”,“CMWAP”//设置APN

波特率

  第9步:AT+SAPBR=1,1//激活网络场景

波特率

  第10步:AT+SAPBR=2,1//获取分配IP地址

波特率

  第11步:AT+CIPGSMLOC=1,1获得定位信息

波特率

  第12步:AT+CIPGSMLOC=2,1获得时间信息

波特率

  第13步:AT+SAPBR=0,1关闭网络场景

波特率

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分