SIM808调试笔记(GNSS获取经纬度,GPRS数据上传到服务器)
前一段时间调了LoNet 808,基于SIM808,就是下图这块板子。遇到了一些困难,记录下来,希望以后遇到类似问题有个参考。可能会有理解错误的地方,欢迎指出。
1、建立串口通信。
板子使用3.7V Li-Po电池供电。首先用USB转TTL工具连接SIM808和电脑,VIO接3.3V。打开串口助手,9600,none,连接。按下板子按键2秒打开电源,使用串口助手向SIM808发送一些AT指令(比如开、关回显),串口助手显示SIM808原样返回了AT指令,并没有返回OK或Error字样,关回显命令也没有生效。初步怀疑是由于没装SIM卡,模块启动时自检过不了(保留怀疑,因为如果仅使用定位功能的话,和SIM卡没关系,为什么一定要安装SIM卡呢)。但还是找了个移动SIM卡装上,上电后看到指示灯由频繁闪烁变为缓慢闪烁,约灭3秒亮1次,这表示SIM808成功注册到网络。再次使用串口助手发送AT指令,依然原样返回了命令,没有OK或Error字样。在串口助手的发送框里输入AT指令后,按Enter换行,再点击发送后,SIM808返回乱码,里面偶尔掺杂了几个正常的字符。看起来像是AT指令生效了。更改波特率和校验,无法解决返回乱码问题。改用SecureCRT,无法解决返回乱码问题。怀疑USB转TTL工具有问题(记此工具为1号),改用另一个USB转TTL工具(记此工具为2号)。使用2号工具后,正常显示OK字样,乱码问题解决。(后来用1号工具调试过别的模块,发现通信正常,但是调试SIM808就会显示乱码。嗯,,,是个谜)
2、定位功能调试
根据店家提供的参考资料,使用了几个关于GPS功能的AT指令(AT+CGPSPWR=1,AT+CGPSINF=0),但是回复Error。并且发现SIM808启动时的实际打印信息里没有“GPS Ready”,和参考资料不一致。上网查后发现SIM808硬件版本2.01及以后且软件版本1418B01SIM808M32及以后,应该使用GNSS功能获取位置信息。
室外太冷,且在室外调试不方便,所以只能将板子放到窗户边,AT+CGNSPWR=1开启GNSS电源,AT+CGNSINF获取位置信息。一开始获取不到位置信息,等待40秒左右再尝试就可以了,大概是因为冷启动。由于在窗户边不够开阔,每次获取的经纬度会有波动,上网查经纬度值与距离的换算,误差有几十米或几百米。后来将板子带到室外开阔场地,获取的经纬度值非常稳定。
GNSS手册下载:http://www.elecrow.com/wiki/images/0/05/SIM800_Series_GNSS_Application_Note_V1.00.pdf
3、GPRS功能调试
AT+SAPBR=3,1,"CONTYPE","GPRS''
AT+SAPBR=3,1,"APN","CMNET" (移动的接入点是CMNET,联通的是3GNET,电信卡不适用)
AT+SAPBR=1,1
AT+HTTPINIT
AT+HTTPPARA="URL","xxx.x.xx.xx:90/s?data1=***&data2=***'' (xx表示服务器地址,90是端口号,不写的话默认80,data1和data2是服务器上定义的变量名,***表示上传的变量值)
AT+HTTPACTION=1 (将数据post到服务器,正常会收到返回值200)
AT+HTTPREAD
AT+HTTPTERM (结束HTTP服务)
更多指令和含义可以网上查找SIM808 AT指令手册
4、不得不说的供电
一开始使用3.7v usb充电锂电池供电,将锂电池放在电池盒里,把正负极的线直接焊在板子上。最初可以正常使用,后来有一天晚上,模块出现了开机后很快自动关机的现象,使用板子上提供的充电接口给锂电池充电,模块不停重启。将锂电池取出用手机的电源适配器充满电,再装入仍然无法解决自动关机问题。最后怀疑电池质量有问题,另外电池盒的正负极输出线太长,最终导致驱动电流太低?因为这种事导致无法调试,好气呀。第二天换了块锂电池,大概下图这种,装上以后模块工作稳定。
SIM808调试笔记(GNSS获取经纬度,GPRS数据上传到服务器)相关推荐
- 通过GPRS将GPS数据上传到服务器
文章目录 一.目的 二.使用的器件 1. GPRS模块和物联网卡 2. GPS模块 3. MCU 三.电路连接 四.程序设计 五.程序代码 一.目的 将GPS获取到的位置信息,通过GPRS将数据上 ...
- 单片机 上传服务器协议,单片机数据上传云服务器
单片机数据上传云服务器 内容精选 换一换 公有云平台提供的云监控,可以对云耀云服务器的运行状态进行日常监控.您可以通过管理控制台,直观地查看云耀云服务器的各项监控指标.云耀云服务器正常运行.关机.故障 ...
- 数据上传虚拟服务器,如何上传数据到虚拟主机
如何上传数据到 上传数据到虚拟主机,一般采取FTP软件方式较多. 1.FTP上传 FTP是连接虚拟主机,管理虚拟主机文件的重要方式.由于技术原因,虚拟主机无法远程管理,主要采取控制面板和FTP方式.可 ...
- 怎么把项目的数据上传到服务器,怎么把sql数据库上传到云服务器
怎么把sql数据库上传到云服务器 内容精选 换一换 本章介绍如何在管理控制台购买GaussDB(for openGauss)实例,并通过内网使用弹性云服务器连接GaussDB(for openGaus ...
- Android 监听短信数据库过滤获取短信内容上传至服务器
前言 Android 监听短信的方式有两种 1.监听短信数据库,数据库发生改变时回调. 2.监听短信广播 其中第二种方式由于国内各厂家的定制Android 可能导致无响应 目前测试 魅族 无法监听到短 ...
- android post数据到php服务器,通过post方法将数据上传到服务器Android Studio
我正试图通过android studio中的POST请求上传一张图片到服务器上,但我完全被困住了. 控制台没有给我任何信息,可以指出出了什么问题,当我单击上传,它只是不工作. 我在postexecut ...
- 可通过蓝牙,WiFi,4G实现录音数据上传的WT2605新型音频芯片在录音笔等产品的应用解析
概述:本文主要介绍一款新型的音频芯片WT2605在录音产品中的应用与实现,主要依靠音频芯片通过ADC采集数据,将数据编码为音频流数据存储在本地,也可通过外设将数据传给蓝牙/WiFi/4G模块,实现录音 ...
- 服务器面对大量数据上传处理思想
同样是一个面试问题,面对大量设备同时传入数据如何处理,记录下来. 当大量设备连接服务器,大量数据上传到服务器,服务器要如何提高处理能力,来处理这些数据,数据源为设备数据. 服务器处理数据可以从已下几个 ...
- 微信小程序实现用form表单包裹输入的数据并上传到服务器
两个输入框分别为input与textarea,然后用form表单包裹两个输入框所输入的数据,再上传到服务器,效果图: post.wxml <form bindsubmit="formS ...
最新文章
- 深入Atlas系列:Web Sevices Access in Atlas示例(6) - 在客户端隐藏服务器端类型信息...
- 《C和指针》读书笔记-第六章指针
- 不知道如何选择的时候,付诸行动比选择更重要
- java提取多行嵌套div/div内容的正则表达式_提取某一段div标签之间内容的正则表达式怎么写...
- Web前端基础---认识HTML及其组成---标签、框架
- python datetime datetime
- java抽象类代码_java – 抽象类和通用代码
- book mac pro怎么重装系统_MacBook Pro怎么重装系统 MacBook Pro重装系统教程
- SAS学习7(gpolt过程、gchart过程、图形输出、ods功能、假设检验,ttest过程,rank过程,秩和检验(非参数检验))
- 外汇天眼:新手如何模拟炒外汇?模拟炒外汇的一点心得分享
- 计算机应用程序通过文件打不开,应用程序打不开|exe文件关联修复器|打开方式还原 - 所有应用程序文件打不开的解决方法 - 安全专题...
- 金属芯PCB中的贵族,热电分离铜基板(高导热380W)
- 【CSDN问答】关于CSDN问答社区的那些事儿
- 子元素padding一般不会撑开父元素盒子大小
- MIMO-OFDM无线通信技术及MATLAB实现
- 微信传文件又慢又限制大小?试试这3个免费在线传文件工具!
- Prometheus(一)——概述、监控体系、生态组件、部署
- (MATLAB与数学建模习题)不一样的十六进制
- I.MX6ULL ARM驱动开发---设备树下的platfrom设备驱动
- 笔记-深入理解计算机系统