Arduino 2560 如何连接GPS模块

 时间:2024-11-10 07:26:43

可以看到,其中最重要的字段应该为$GPGGA字段,该字段的数据几乎包含了GPS所需要所有数据,这里再贴一遍他的含义。例:$GPGGA,092204.999,4250.5589,S,14718.5084,E,1,04,24.4,19.7,M,,,,0000*1F字段0:$GPGGA,语句ID,表明该语句为Global Positioning System Fix Data(GGA)GPS定位信息字段1:UTC 时间,hhmmss.sss,时分秒格式字段2:纬度ddmm.mmmm,度分格式(前导位数不足则补0)字段3:纬度N(北纬)或S(南纬)字段4:经度dddmm.mmmm,度分格式(前导位数不足则补0)字段5:经度E(东经)或W(西经)字段6:GPS状态,0=未定位,1=非差分定位,2=差分定位,3=无效PPS,6=正在估算字段7:正在使用的卫星数量(00 - 12)(前导位数不足则补0)字段8:HDOP水平精度因子(0.5 - 99.9)字段9:海拔高度(-9999.9 - 99999.9)字段10:地球椭球面相对大地水准面的高度字段11:差分时间(从最近一次接收到差分信号开始的秒数,如果不是差分定位将为空)字段12:差分站ID号0000 - 1023(前导位数不足则补0,如果不是差分定位将为空)字段13:校验值所以要解析GPS数据,首要任务就是解析$GPGGA的数据。观察GPGGA的数据,发现他大概有3个部分组成。头:$GPGGA。数据:经纬度,海拔,时间,卫星数量等等。尾:校验和。头的作用是用来定位数据,因为GPS模块可能会除了这个字段的数据以外,还会发其他字段的数据。那么根据头,我们首先在读取串口的时候检测是否是这个头,然后再按照这个头后的数据格式读取正确数量的数据。尾是用来检验数据,校验和的存在就是为了验证收到的数据的正确性。查询该协议可知,此处的校验使用的是异或校验。即把收到的所有数据(除了$和*以外)进行异或(可百度)操作。最终的到的答案与*号后的数据比较。相同则校验通过说明数据读取正确没有误码。有了头、尾,数据已经可以被定位,现在来看看各个数据如何解析。可以看出各个数据之间都是由逗号‘,’隔开,如此一来可以用逗号作为分隔符,分开各个数据,然后再分别提取其中的有用数据。

  • Python27编码方式各种情况总结
  • 虚拟光驱加载及推出的光盘镜像文件方法
  • 如何使用UART通信获取电位器值?
  • 15-110V降压12V 5v1A 内置MOS图纸
  • Python教程 原始字符串的使用
  • 热门搜索
    端午节手抄报简单字少 过年手抄报简单又漂亮 关于心理健康手抄报 法制手抄报图片大全 庆元旦迎新春手抄报 小学生爱国手抄报 预防禽流感手抄报 草房子手抄报 重阳节手抄报简单好看 关于绿色环保的手抄报