基于单片机的GPS开发 (four) GPS基础知识

2023-05-16

一、GPS硬件模块:

VCC:兼容3.3V和5V

GND:地

TXD:接51单片机的RXD  ( P3.0 )

RXD:可接单片机的TXD  ( P3.1 ) 或者直接悬空

PPS:时钟脉冲输出脚 直接悬空不接

二、GPS主要参数:

(1).默认波特率9600

(2).指示灯:

     常亮:模块供电正常,但是并未成功定位。

     闪烁:模块已经定位成功。定位的时候,模块的天线要放在室外,室内是没有办法定位的。

三、GPS串口调试步骤:

连接模块和开发板,使用开发板的5V电源接口给模块直接供电,配置好后,下载程序,等待GPS定位成功(指示灯闪烁)。

我们先打开多功能调试助手,如下图

 

 

我们选择对应的端口号,然后选择波特率9600,再选择打开串口,等待接收数据。下面是成功接收数据的截图

 

四、GPS硬件电路原理图:

 

五、GPS指令详解:

1$GPGGA (GPS定位信息,Global Positioning System Fix Data)

$GPGGA语句的基本格式如下(其中M指单位M, hh指校验和,CR和LF代表回车换行,下同) :

$GPGGA,(1),(2),(3),(4),(5),(6),(7),(8),(9),M,(10),M,(11),(12)*hh(CR)(LF)

(1)UTC时间,格式为hhmmss.ss;

(2)纬度,格式为ddmm.mmmmm (度分格式) ;

(3)纬度半球,N或S (北纬或南纬) ;

(4)经度,格式为dddmm.mmmmm (度分格式) ;

(5)经度半球,E或W (东经或西经) ; 

(6)GPS状态,0=未定位,1=非差分定位,2= 差分定位;

(7)正在使用的用于定位的卫星数量(00~12)

(8)HDOP水平精确度因子(0.5~99.9)

(9)海拔高度(-9999.9到9999.9米 )

(10)大地水准面高度(-9999.9到9999.9米)

(11)差分时间(从最近- -次接收到差分信号开始的秒数,非差分定位,此项为空)(12)差分参考基站标号(0000到1023, 首位0也将传送,非差分定位,此项为空)

举例如下: 

$GPGGA,023543.00,2308.28715,N,1 1322.09875,E,1,06,1.49,41.6,M, 5.3,M,*7D

 

2,$GPGSA (当前卫星消息 ):

$GPGSA语句的基本格式如下:

$GPGSA,(1),(2),(3),(3),(3),(3),(3),(3),(3),(3),(3),(3),(3),(3),(4),(5),(6)* hh(CR)(LF)

(1)模式,M=手动,A=自动。

(2)定位类型,1=未定位,2=2D定位,3=3D定位。

(3)正在用于定位的卫星号(01~32)

(4)PDOP综合位置精度因子 (0.5-99.9)            注:精度因子值越小,则准确度越高。

(5)HDOP水平精度因子1 (0.5-99.9)

(6)VDOP垂直精度因子(0.5-99.9)

举例如下:

$GPGSA,A,3,26,02,0529,15,2*2.45,1.49,1.94*0E

 

3,$GPGSV (可见卫星数,GPS Satellites in View)

$GPGSV语句的基本格式如下:

$GPGSV, (1),(2),(3),(4),(5),(6),(7),....,(4),(5),(6),(7)*hh(CR)(LF)

(1) GSV语句总数。

(2)本句GSV的编号。

(3)可见卫星的总数(00~12, 前面的0也将被传输)。

(4)卫星编号(01~32, 前面的0也将被传输)。

(5)卫星仰角(00~90度, 前面的0也将被传输)。

(6)卫星方位角(000~359度, 前面的0也将被传输)

(7)信噪比 (00~99dB, 没有跟踪到卫星时为空)。注:每条GSV语句最多包括四颗卫星的信息,其他卫星的信息将在下一条$GPGSV语句中输出。

举例如下:

$GPGSV,3,1,12,02,39,117,25,04,02,127,05,40,036,24,08,10,052,*7E

$GPGSV,3,2,12,09,35,133,10,01,073,,15,72,240,22,18,05,274,*7B 

$GPGSV,3,3,12,21,10,316,31,24,16,176,26,65,035,42,29,46,277,18*7A

 

4,$GPRMC (推荐定位信息,Recommended Minimum Specific GPS/Transit Data)

$GPRMC语句的基本格式如下:

$GPRMC,(1),(2),(3),(4),(5),(6),(7),(8),(9),(10),(11),(12)*hh(CR)(LF)

(1)UTC时间,hhmmss (时分秒)

(2)定位状态,A=有效定位,V=无效定位

(3)纬度ddmm.mmmmm (度分)

(4)纬度半球N (北半球)或S (南半球)

(5)经度dddmm.mmmmm (度分)

(6)经度半球E (东经)或W (西经)

(7)地面速率(000.0~999.9节)

(8)地面航向(000.0~359.9度,以真北方为参考基准)

(9) UTC日期,ddmmyy (日月年)

(10)磁偏角(000.0~180.0度, 前导位数不足则补0)

(11)磁偏角方向,E (东)或W (西)

(12) 模式指示(A=自主定位,D=差分,E=估算,N=数据无效)

举例如下:

$GPRMC,023543.00,A,2308.28715,N,1 1322.09875,E,0.195,240213..,A*7899  999

 

5,$GPVTG (地面速度信息,Track Made Good and Ground Speed )

$GPVTG语句的基本格式如下:

$GPVTG,(1),T,(2),M,(3),N,(4),K,(5)*hh(CR)(LF)

(1)以真北为参考基准的地面航向(000~359度, 前面的0也将被传输)

(2)以磁北为 参考基准的地面航向(000 -359度,前面的0也将被传输)

(3)地面速率(000.0 999.9节,前面的0也将被传输)

(4)地面速率(0000.0~1851.8公里/小时,前面的0也将被传输)

(5)模式指示(A=自主定位,D=差分,E=估算,N=数据无效)

举例如下:

$GPVTG,,T,M,0.195,N,0.361,K,A*2A

 

6,$GPGLL (定位地理信息,Geographic Position)

$GPGLL语句的基本格式如下:

$GPGLL,(1),(2),(3),(4),(5),(6),(7)*hh(CR)(LF)

(1) 纬度ddmm.mmmmm (度分)

(2)纬度半球N (北半球)或S (南半球)

(3)经度dddmm.mmmmm (度分)

(4)经度半球E (东经)或W (西经)

(5)UTC时间: hhmmss (时分秒)

(6)定位状态,A=有效定位,V=无效定位

(7)模式指示(A=自主定位,D=差分,E=估算,N=数据无效)

举例如下:

$GPGLL,2308.28715,N,1 1322.09875,E,023543.00,A,A*6A

 

7,$GPZDA (当前时间信息)

$GPZDA语句的基本格式如下:

$GPZDA,(1),(2),(3),(4),(5),(6)*hh(CR)(LF)

(1) UTC时间: hhmmss (时分秒)

(2)日

(3)月

(4)年

(5)本地区域小时(NEO-6M未用到,为00)

(6)本地区域分钟(NEO-6M未用到,为00)

举例如下:

$GPZDA,082710.00,1 6,09,2002,00,00*64

 

六、获取到的GPS指令换算成实际经纬度:

假设你获取到的上面GPS输出的数据:

          N    2318.13307      纬度

          E    11319.72036    经度

将其转换为度(°)分(')秒(")

纬度=2318.13307 / 100 = 23°

2318.13307 % 100= 180.13307 * 60= 7.984"

经度= 11319.72036/ 100 = 113°

11319.72036 % 100= 190.72036 * 60= 43.2216”

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

基于单片机的GPS开发 (four) GPS基础知识 的相关文章

  • 基于单片机的可燃气烟雾系统设计(#0488)

    功能描述 本系统可用于可燃气体监测 烟雾火灾监测 1 采用51 52单片机 通用 作为主控芯片 xff1b 2 采用1602显示 xff1a 气体浓度的实时值及报警值 xff1b 3 采用MQ2 43 ADC0809检测气体浓度 xff1b
  • 析构函数的执行顺序

    析构函数的执行顺序 回答包括类定义的先后顺序 xff0c 局部和全部 xff0c 以及静态 xff0c 同时说明继承的关系 对于继承类的析构函数执行顺序为 xff0c 先派生类 xff0c 后基类 对于一个执行单元 xff08 cpp文件
  • 基于单片机的可燃气烟雾系统设计(#0489)

    功能描述 1 采用51 52单片机 通用 作为主控芯片 xff1b 2 采用数码管显示 xff1a 气体浓度等级 温度值 xff1b 3 采用MQ2 43 ADC0832检测气体浓度 xff1b 4 采用DS18B20检测温度 xff1b
  • 基于单片机的氢气监测系统设计(#0490)

    功能描述 1 采用51 52单片机 通用 作为主控芯片 xff1b 2 采用1602显示 xff1a 氢气浓度的实时值及报警值 xff1b 3 采用MQ8 43 ADC0809检测氢气浓度 xff1b 4 氢气浓度超标时 xff0c 蜂鸣报
  • 基于单片机的心率监测系统设计(#0495)

    功能描述 1 采用51 52单片机 通用 作为主控芯片 xff1b 2 采用1602液晶显示 xff1a 当前心率 报警上限 报警下限 xff1b 3 采用ST188红外对管检测心率 xff0c 当单片机检测到大约第5次信号时 xff0c
  • Verilog - 利用加法器实现乘法器 [代码]

    博主福利 xff1a 100G 43 电子设计学习资源包 xff01 http mp weixin qq com mp homepage biz 61 MzU3OTczMzk5Mg 61 61 amp hid 61 7 amp sn 61
  • LCD1602液晶 - 开发技术详解

    博主福利 xff1a 100G 43 电子设计学习资源包 xff01 http mp weixin qq com mp homepage biz 61 MzU3OTczMzk5Mg 61 61 amp hid 61 7 amp sn 61
  • LCD1602温度显示程序设计流程

    博主福利 xff1a 100G 43 电子设计学习资源包 xff01 http mp weixin qq com mp homepage biz 61 MzU3OTczMzk5Mg 61 61 amp hid 61 7 amp sn 61
  • 语音处理WT588D-20SS芯片 - 原理详解

    博主福利 xff1a 100G 43 电子设计学习资源包 xff01 http mp weixin qq com mp homepage biz 61 MzU3OTczMzk5Mg 61 61 amp hid 61 7 amp sn 61
  • 基于单片机的智能温度监测系统设计(电路图+程序)

    博主福利 xff1a 100G 43 电子设计学习资源包 xff01 http mp weixin qq com mp homepage biz 61 MzU3OTczMzk5Mg 61 61 amp hid 61 7 amp sn 61
  • 基于单片机的电子秤系统设计(电路+流程)

    博主福利 xff1a 100G 43 电子设计学习资源包 xff01 http mp weixin qq com mp homepage biz 61 MzU3OTczMzk5Mg 61 61 amp hid 61 7 amp sn 61
  • MPU6050 - 陀螺仪 - 技术总结

    博主福利 xff1a 100G 43 电子设计学习资源包 xff01 http mp weixin qq com mp homepage biz 61 MzU3OTczMzk5Mg 61 61 amp hid 61 7 amp sn 61
  • JavaParser使用指南

    抱歉这个博客是很久以前写的 xff0c 现在我已经不用javaparser了 xff0c 这个包也一直在更新所以这篇博客参考意义不大 大家可以根据官网的例子去试试 JavaParser使用指南 前言入门 StartJavaParser Cl
  • 共享式与交换式以太网

    大家好呀 xff0c 我是请假君 xff0c 今天又来和大家一起学习数通了 xff0c 今天要分享的知识是共享式与交换式以太网 一 共享式以太网 xff1a Hub 与同轴电缆都是典型的共享式以太网所使用的设备 xff0c 工作在OSI模型
  • 51单片机入门 - 自己动手搭建实验板

    博主福利 xff1a 100G 43 电子设计学习资源包 xff01 http mp weixin qq com mp homepage biz 61 MzU3OTczMzk5Mg 61 61 amp hid 61 7 amp sn 61
  • TCP 协议

    传输层协议作用 1 分段及封装应用层送来的数据 2 提供端到端的传输服务 3 在发送主机与接收主机之间构建逻辑通信 4 包括两个协议 xff1a 1 xff09 TCP 2 xff09 UDP 怎样提供的逻辑通信 xff1a 两台主机进程间
  • 海康门禁 远程控制

    1 登录海康官网下载sdk包 https www hikvision com cn download 61 html 2 登录海康sdk包 库文件中的ClientDemo exe 然后添加设备 只用填写ip xff0c 用户名 xff0c
  • TCP、UDP通信例程(C语言)

    xff08 转载 xff09 socket笔记 TCP UDP通信总结 1 基于TCP的本地客户端 服务端信息交互实例 xff08 windows xff09 xff08 已验证 xff09 实现功能 xff1a 本地TCP客户端往本地TC
  • STM32F030F4P6 HAL库 PPM信号输出 24L01 PPM接收机制作

    事件起因 因为给PX4测试缺少遥控器 xff0c 手撸了一套支持PPM的遥控器系统 xff0c 这篇文章将在接收机上遇到的问题分享一二 xff0c 供大家借鉴 1 需求分析 接收机需要输出至少8通道的PPM信号 xff0c 可以将 通PPM
  • Linux网络编程——简单基于TCP协议的服务器/客户端示例

    说明 xff1a 本文章旨在总结备份 方便以后查询 xff0c 由于是个人总结 xff0c 如有不对 xff0c 欢迎指正 xff1b 另外 xff0c 内容大部分来自网络 书籍 和各类手册 xff0c 如若侵权请告知 xff0c 马上删帖

随机推荐