2020/10/23 GPS的数据格式学习

article/2025/9/26 13:30:40

GPS的数据格式学习

一、在使用GPS的通过串口向电脑发送数据的时候,要注意GPS数据线的连接;
1.1 VCC接VCC;(VCC表示接电源正极)
1.2 GND接GND;(GND表示接地或接电源负极)
1.3 TX接RX;(注:RX表示接受数据)
1.4 RX接TX;(注:TX表示发送数据)

1.5 要注意GPS的供电对数据传输的影响;

二、GPS数据格式解析
2.1 GPS发送数据以行为单位,数据格式如下:“$信息类型,x,x,x,x,x,x,x,x,x,x,x,x,x” 每行以回车和换行结束

2.2 本次只运用GPRMC(推荐定位信息)的数据格式:
$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>(校验值)回车换行
在这里插入图片描述

$GPRMC,092427.604,V,4002.1531,N,11618.3097,E,0.000,0.00,280814,E,N*08为例,各字段的含义如下:
在这里插入图片描述
三、GPS模块与单片机的交互
3.1 GPS模块通过串口向单片机发送GPS数据,并由单片机存储在串口缓冲区中;
3.2 GPS模块发送数据进行简易处理(区分GPS中的有效数据和无效数据),源代码:
(注:此代码只用于学习,若想具体实现得基于具体代码的头文件)

while(1){//UART3RecvPos表示串口缓冲区大小//SystemTimeInTU表示系统时间,每125us加1//UART3LastRecvDataTimeIN125US表示//_MS(10)表示将10乘以8if(UART3RecvPos>5&&USART3_RECV_BUF[UART3RecvPos-1]=='\n')//要判断GPS传输过来的数据是不是一段健康的数据{//if((u16)(USART3_RECV_BUF[5]=='C')&&(u16)(USART3_RECV_BUF[0]=='$')&&(u16)(USART3_RECV_BUF[1]=='G')&&(u16)(USART3_RECV_BUF[2]=='P')&&(u16)(USART3_RECV_BUF[3]=='R')&&(u16)(USART3_RECV_BUF[4]=='M'))if(USART3_RECV_BUF[0]=='$'&&(USART3_RECV_BUF[5]=='C')){TotalRecvGPSData++;//显示串口接收缓冲区大小len=0;//sprintf函数用于将函数中间参数的字符串复制到第一个参数的地址空间,且返回值是字符串的长度//因为len=0,string+len是字符数组的首地址			//“RX:%d“是要被复制到字符数组的字符串//UART3RecvPos是表示串口3的接收韩冲区大小的变量len+=sprintf(string+len,"RX3:%d",UART3RecvPos);//0,56分别代表x,y坐标//string代表要显示的字符串(数组)//FRONT_EN_5X8表示字体格式//len表示要显示的字符串长度//0代表显示的字符串没有黑底格式,而非0的u8型数字有黑底格式LCDPrintStringLen(0,56,string,FRONT_EN_5X8,len,0);//显示串口接收到的数据(仅显示串口3接收的前20个字节)//USART3_RECV_BUF代表串口3的接收缓存数组,数组长度为1000//FRONT_EN_5X8表示字体格式//25表示字符串长度//0代表显示的字符串没有黑底格式,而非0的u8型数字有黑底格式LCDPrintStringLen(0,48,USART3_RECV_BUF,FRONT_EN_5X8,40,0);//打印串口3的接收缓冲区的大小len=0;len+=sprintf(string1+len,"UART3RecvPos:%d",UART3RecvPos);LCDPrintStringLen(0,24,string1,FRONT_EN_5X8,len,0);//GPS数据格式解析for(;i<=100;i++){if(USART3_RECV_BUF[i]==','){sum++;}	if(sum==2&&USART3_RECV_BUF[i+1]=='A'){use++;break;}else{nouse++;break;}}data++;//格式化输出	len=0;len+=sprintf(String3+len,"use:%d/%d  ",use,data);			LCDPrintStringLen(0,40,String3,FRONT_EN_5X8,len,0);//格式化输出len=0;len+=sprintf(String2+len,"nouse:%d/%d  ",nouse,data);			LCDPrintStringLen(0,32,String2,FRONT_EN_5X8,len,0);//将串口3的接收缓冲区清0UART3RecvPos=0;}else{//将串口3的接收缓冲区清0UART3RecvPos=0;}}

3.3 我们现在使用的是使能GPS模块,意思是在GPS开机后会有一一段时间GPS模块需要调试,然后GPS才会将卫星发送的数据接收下来,本GPS模块大概在接受325个数据后会调试好,接收正常数据。


http://chatgpt.dhexx.cn/article/bnmpBbwy.shtml

相关文章

GPS数据包格式+数据解析

GPS数据包格式数据解析 一、全球时区的划分&#xff1a; 每个时区跨15经度。以0经线为界向东向西各划出7.5经度&#xff0c;作为0时区。即0时区的经度范围是7.5W——7.5E。从7.5E与7.5W分别向东、向西每15经度划分为一个时区&#xff0c;直到东11区和西11区。东11区最东部的经度…

GPS研究---GPS 数据格式

GPS 数据处理时所采用的观测数据是来自观测的 GPS 接收机。由于接收机的型号很多&#xff0c;厂商设计的数据格式各不相同&#xff0c;国际上为了能统一使用不同接收机的数据&#xff0c; 设计了一种与接收机无关的 RINEX(The Receiver Independent Exchange Format)格式&#…

GPS数据格式的分析

文章目录 前言一、数据格式解析1、GPGGA2、GPRMC3、GPCHC4、Kitti数据集oxts数据 二、驱动1、功能包1.1 解析GPGGA1.2 华测GPCHC 2、ROS相关消息类型2.1 sensor_msgs::NavSatFix2.2 gps_common::GPSFix2.3 sensor_msgs::Imu 3、驱动思路 三、时间1、UTC时间2、时间戳 前言 GPS…

GPS GLONASS数据文件类型解析

GPS & GLONASS数据文件类型解析 一、GPS数据格式 RINEX格式现如今已成为GPS测量应用中的标准数据格式&#xff0c;目前应用最为广泛、最普遍的是RINEX格式的第2个版本&#xff0c;该版本能够用于包括静态和动态GPS测量在内的不同观测模式数据。在该版本中定义了6种不同类…

GPS的数据格式介绍

GPRMC&#xff08;建议使用最小GPS数据格式&#xff09; $GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11><CR><LF> 1) 标准定位时间&#xff08;UTC time&#xff09;格式&#xff1a…

Android ExpandableListView

ExpandableListView可以显示一个视图垂直滚动显示两级列表中的条目&#xff0c;这不同于列表视图&#xff08;ListView&#xff09;。ExpandableListView允许有两个层次&#xff1a;一级列表中有二级列表。 比如在手机设置中&#xff0c;对于分类&#xff0c;有很好的效果。手机…

ExpandableListView用法

先上个效果图&#xff1a; 1&#xff0c;我用的fragment import java.util.ArrayList; import java.util.Collections; import java.util.List; import com.dami.student.ui.chatui.adapter.ContactsExpandableListAdapter; import com.dami.student.R; import android.conten…

android expandablelistview简单应用,android ExpandableListView简单例子

android中常常要用到ListView&#xff0c;有时也要用到ExpandableListView&#xff0c;如在手机设置中&#xff0c;对于分类有很好的效果&#xff0c;会用ListView的人一定会用ExpandableListView&#xff0c;因为 ExpandableListView extends ListView的&#xff0c;下面来看个…

android expandablelistview横向,完美实现ExpandableListView二级分栏效果

本文实例为大家分享了ExpandableListView二级分栏效果的具体代码&#xff0c;供大家参考&#xff0c;具体内容如下 对ExpandableListView控件进行封装(未自定义)直接上代码&#xff1a; 通用ViewHolder类&#xff0c;仅在setImageResource中添加代码 package com.svp.haoyan.ex…

android expandablelistview横向,expandableListView 总结

实现效果图&#xff1a; expandableListView groupIndicator 图片默认是在左边&#xff0c;而且比较难看&#xff0c;而我要的是实现groupIndicator 在右边自定义图片&#xff0c; 换图片 最简单的就是直接copy 系统 android:drawable/expander_group ?android:attr/expandab…

Android学习之ExpandableListView

什么是ExpandableListView ExpandableListView是扩展的ListView&#xff0c;继承自ListView&#xff1b;ExpandableListView可以实现点击展开列表&#xff0c;再点击收缩回去的效果。 ExpandableListView的使用 首先需要在主布局文件中声明ExpandableListView&#xff1b; …

ExpandableListView详解

文章目录 效果图ExpandableListView的简介与使用去掉ExpandableListView的箭头以及自定义Indicator解决setOnChildClickListener失效问题解决collapseGroup(i)崩溃问题解决group_item.xml中包含CheckBox、EditText等&#xff0c;点击不能展开的问题 1.效果图 2.ExpandableLi…

values_list()

转载&#xff1a;https://www.cnblogs.com/chenchao1990/p/5311531.html?utm_sourcetuicool&utm_mediumreferral

列表(lists)

Lists and the things you can do with them.Includes indexing(索引&#xff09;,slicing &#xff08;切片&#xff09;and mutating&#xff08;变异&#xff09;. 1.Python 中的列表表示有序的值序列。 以下是如何创建它们的示例&#xff1a; primes [2,3,5,7] #我们可以…

Android Preference API 用法--ListPreference(一)

一&#xff0e;ListPreference简介 我们都只知道SharedPreference非常适合于参数设置功能&#xff0c;在此处的preference 也是代表SharedPreference的意思&#xff0c;在SharedPreference中&#xff0c;我们可以迅速的将某些值保存进xml文件中&#xff0c;然后我们可以读取这…

android entries属性,ListPreference需要设置两个属性:android:entries和android:entryValues...

android:defaultValue"black" android:entries"array/setting_skintheme" android:entryValues"array/setting_skintheme_value" android:key"SkinTheme" android:summary"请选择您喜欢的软件皮肤颜色" android:title"…

Android ListPreference的用法

首先&#xff0c;我们明确&#xff0c;preference是和数据存储相关的。 其次&#xff0c;它能帮助我们方便的进行数据存储&#xff01;为什么这个地方一定要强调下方便的这个词呢&#xff1f;原因是&#xff0c;我们可以根本就不使用&#xff0c;我们有另外的N种办法可以实现同…

List总结

ArrayList与LinkedList的区别是什么&#xff1f; 从继承树&#xff0c;底层数据结构&#xff0c;线程安全&#xff0c;执行效率来进行分析。 1.底层使用的数据结构 ArrayList 底层使用的是Object数组&#xff0c;初始化时就会指向的会是一个static修饰的空数组&#xff0c;数…

android Preference ListPreference EditTextPreference

android中包含Preference ListPreference EditTextPreference等控件布局的写法&#xff0c;已经操作各个控件的事件介绍&#xff0c;如下 <?xml version"1.0" encoding"utf-8"?> <PreferenceScreen xmlns:android"http://schemas.android…

Android中ListPreference的使用

这篇主要是具体例子&#xff0c;可以先看一下理论&#xff0c;网址是&#xff1a;Android中Preference的使用以及监听事件分析 我们可以先看一下效果图 我们先截取不小段布局&#xff0c;代码如下&#xff1a; <ListPreferenceandroid:defaultValue"string/usb_defaul…