搜档网
当前位置:搜档网 › gps一机多图配置文件详解

gps一机多图配置文件详解

gps一机多图配置文件详解
gps一机多图配置文件详解

1、这里面是以#---------------------------------为分界线分的板块,首先是程序主体参数设置,这里的东西不难看懂,大家不要畏惧,知道怎么设置,以后自己就会折腾了:LOBALSETTINGS————[段标识]:全局设置注释的标题,应该没什么用ShowMessage = 0————显示信息= 0,他的值应该就是0或者1,这里不需要修改,具体干什么的我也不清楚。

QuitOnDoubleClick = no————在界面上双击鼠标就退出= 否,这里没事也不用改。

X = 0————界面背景图片左上角在屏幕上的位置X 坐标= 0,参数设定,不用改

Y = 0————界面背景图片左上角在屏幕上的位置Y 坐标= 0,参数设定,不用改Width = 480————界面背景图片宽度= 480 (如果你用的大屏幕,请相应修改,比如,你如果需要800*480的多图界面,只要把这里的数字改成800就可以了,当然,pic文件夹里背景图也必须是800*480的)

Height = 272————界面背景图片高度= 272 (如果你用的大屏幕,请相应修改,比如,你如果需要800*480的多图界面,只要把这里的数字改成480就可以了,当然,pic文件夹里背景图也必须是800*480的)

Arrange = No————界面显示方式= 默认(另两个值:Vertical=垂直,Horizontal=水平),这里也不需要修改。

BackgroundBitmap = ..\pic\45.bmp————界面背景图片文件(这里是与pic文件夹里背景图对应的45.bmp)

StartUpAnimation = FlyUp————界面出场动画= 向上飞入,就是你进入多图界面时的出场动画,如果你不喜欢向上出图的话,你可以将FlyUp改为NoAnimation。

Accelerated = yes————界面出场动画加速= 是

TopMost = no————本界面保持在其它窗口的前端= 否,这里需要注意的是,一般情况下这里都是选no的,但如果手机用户需要直接在wince下运行的话,选no的话会出现无法满屏的现象,可以将这里改为yes。一般情况专业的导航仪和车载一体机都不用改。

2、设置退出的参数,这里没有设置文字信息,大家往下看,看懂的话,可以自行往这段里加。

#---------------------------------

ICONXPBUTTON————[段标识]:图标按钮。通过调用ICON 的图标文件显示的按钮x = 405————图标左上角X 坐标,这个是设置图标在画面中横向的位置的,大家可以自己摸索一下。

y = 150————图标左上角Y 坐标,这个是设置图标在画面中竖向的位置的,大家可以自己摸索一下。

SizeNormal = 48————设置正常情况下图标的大小,单位是像素

SizePushed = 48————设置图标按下后的大小,单位是像素

ScaleAlpha = 90————透明度= 90 (设置紧跟其后的图标的显示透明度。0-100 :全透明-不透明)

IconNormal = ..\Icons\Exit.ico————设置正常图标路径,图标文件在icon文件夹里ScaleAlpha = 80————透明度

IconPushed = ..\Icons\Exit.ico————设置按下后图标路径,图标文件在icon文件夹里QuitOnExecute = yes————单击该图标后执行退出命令= 是

3、设置对应的导航文件路径和图标路径,每个导航图标对应一个以下文件,除退出图标,实际上在我提供下载的程序里,共有五个这样的代码,分别对应五个不同的导航按键。#---------------------------------

ICONXPBUTTON————[段标识]:图标按钮。通过调用ICON 的图标文件显示的按钮x = 30————图标左上角X 坐标,这个是设置图标在画面中横向的位置的,大家可以自己摸索一下。

y = 20————图标左上角Y 坐标,这个是设置图标在画面中竖向的位置的,大家可以自己摸索一下。

Command = \SDMMC\TJJ\NaviOne.exe————单击该图标后执行导航的命令。这里需要注意的是,这个文件的配置实际上是Command =\卡的路径\文件夹\启动程序.exe。卡的路径一般有四个情况:Storage Card(有空格)、StorageCard(无空格)、sdmmc card、sdmmc四种情况。文件夹:放启动文件的文件夹名(注意,启动程序应该在一个文件夹下,不要一个套一个,如果确实需要一个套一个的话,就用\母文件夹\子文件夹\的格式);启动程序.EXE,比如如果你的凯立德用的是loard.exe的话,应该是loard.exe,如果是Navi.exe的话,就是Navi.exe.这是需要大家自己慢慢研究的项目。

SizeNormal = 48————设置正常情况下图标的大小,单位是像素

SizePushed = 48————设置图标按下后的大小,单位是像素

ScaleAlpha = 100————透明度=100 (设置紧跟其后的图标的显示透明度。0-100 :全透明-不透明)

IconNormal = ..\Icons\abs.ico————设置正常图标路径,图标文件在icon文件夹里. ScaleAlpha = 80————透明度

IconPushed = ..\Icons\abs.ico————设置按下后图标路径,图标文件在icon文件夹里TEXT———— [段标识]:文本标签,就是图标下面字的设置

x = 35————文本左上角X 坐标,这里的设置应该略比图标按钮设置的数值大一点,在图标大小为48的情况下一般是大5点,如果全是英文字的话,一般是大10个点,当然如果汉字数超过4个的话,这里应该设置的和图标坐标一样。

y = 70————图标左上角Y 坐标,这个坐标的设置要根据设置的图标大小定,我们这里设的48,那这里的坐标就要比图标按钮设置的大50点。

Text = 铁将军————这里显示的就是对应的图标下的文字信息,这里可以根据需要随便改。

Color = 6A5ACD————显示出来文字的字体色

FrameColor = 000000————显示出来文字的边框色

Size = 14————显示出来文字的字体大小

Weight = 100————单个字体的宽度,100位正常

CreateFont————产生文本(如果文本中使用了加粗、边框等特效,就需要Create一下,否则可以不用)

单片机解析GPS数据

三、单片机解读GPS信息的程序设计 用单片机解读GPS信息是GPS模块使用最重要的环节,由于汲设到产品的保密问题,这里只介绍时间的处理方法,而方位、速度的处理方法不做介绍,但通过时间的处理方法,同样可以处理方位、速度。 1、获取GPS模块的输出信息 由于GPS模块每秒输出一次:$GPGGA 、$GPGSA、$GPGSV、$GPRMC数据。速率慢,因此必须采用中断方式接收!(采用查询会造成数据丢失),而且单片机只需要处理$GPRMC信息,即可得到时间、方位、速度。程序采用C51编制,在Keil C中编译! code unsigned char GPS_ASC[]="$GPRMC" ; //定义特征字符串 unsigned char idata RsBuf[60]; //********************************************************** //读取GPS模块串口数据, 采用中断方式 void GetRs232_Data() interrupt 4 { unsigned char i; unsigned int j; if (RI){ RI=0; RsBuf[0]=SBUF; if (RsBuf[0] =='$'){ //是GPS数据的开始,进入查询接收 for (i=1;i

MATLAB解析GPS数据程序

% 注:本程序可直接在MATLAB 2017a 中运行 %该脚本文件用于学习GPS数据的读取,需要做其他用途请自行修改代码 %本脚本文件的前面几行代码是要设置的一些参数 %默认使用COM3(需视情况修改) %波特率设为GPS模块默认的38400 %下面为程序源码 clear num_execute = 100; % 执行次数 num_SingleRead = 150; %单次从串口读取的字节数(最好设置足够大(最低大概设为80),保证单次读取的数据包含一条完整的GPS数据) Timedelay = ; % 用于延时读取串口数据 BaudRate = 38400; % 读取数据的波特率 Terminator = 'CR'; num_MaxTry = 5; %打开串口的最多尝试次数 BytesAvailableFcnCount = 1000; %% 设置参数 % delete(instrfindall); % 串口打开失败时使用此句 % delete(s);clear s % 串口打开失败时使用此句 serial3 = serial('COM3'); % 串口设置 = 'byte'; % = 38400; % 输出波特率 = BaudRate; % 读入波特率

% = 1024; = BytesAvailableFcnCount; = 'continuous'; = Terminator; %% 打开串口 count_opentimes = 1; while contains,'closed') > 0 && count_opentimes < num_MaxTry fopen(serial3); %打开串口 count_opentimes = count_opentimes+1; end if contains,'open') < 1 disp('open com failed!'); return end %% 读取并处理数据 % 初始化 GPS_Data = GPS_Init(); while(num_execute > 0) GPS_DataStrs = fread(serial3,num_SingleRead,'char'); %一次读出10个字符 GPS_DataStrs = reshape(GPS_DataStrs,1,[]); GPS_DataStrs = split_str2strs(GPS_DataStrs); GPS_Data_tmp = get_GPS_specificData(GPS_DataStrs);

GPS-NMEA数据格式详解

NMEA data Table of Contents ?Introduction ?Hardware connection ?NMEA sentences ?Decodes of some position sentences ?Decodes of some navigation sentences ?Decodes of a few other sentences ?Decodes of some proprietary sentences ?Sample Streams Disclaimer This site is based on personal research and is believed to be accurate but there is no guarantee that any of the information is correct or suitable for any purpose. I have been told by the NMEA folks that my information is old and out of date. The current version of NMEA at the time I wrote this is 3.01 which is not described here. This site is for historical information and is not intended to be used for any official purpose. For official data please contact the NMEA web site. Please see the bottom of this article for the sources of this data. Introduction The National Marine Electronics Association (NMEA) has developed a specification that defines the interface between various pieces of marine electronic equipment. The standard permits marine electronics to send information to computers and to other marine equipment. A full copy of this standard is available for purchase at their web site. None of the information on this site comes from this standard and I do not have a copy. Anyone attempting to design anything to this standard should obtain an official copy. GPS receiver communication is defined within this specification. Most computer programs that provide real time position information understand and expect data to be in NMEA format. This data includes the complete PVT (position, velocity, time) solution computed by the GPS receiver. The idea of NMEA is to send a line of data called a sentence that is totally self contained and independent from other sentences. There are standard sentences for each device category and there is also the ability to define

GPS数据包解析

2. 定位状态,在接收到有效数据前,这个位是‘V’,后面的数据都为空,接到有效数据后,这个位是‘A’,后面才开始有数据。 3. 纬度,我们需要把它转换成度分秒的格式,计算方法:如接收到的纬度是:4546.408914546.40891/100=45.4640891可以直接读出45度, 4546.40891–45*100=46.40891, 可以直接读出46分46.40891–46 =0.40891*60=2 4.5346读出24秒, 所以纬度是:45度46分24秒。4. 南北纬,这个位有两种值‘N’(北纬)和‘S’(南纬) 5. 经度的计算方法和纬度的计算方法一样 6. 东西经,这个位有两种值‘E’(东经)和‘W’(西经) 7.速率,这个速率值是海里/时,单位是节,要把它转换成千米/时,根据:1海里=1.85公里,把得到的速率乘以1.85。 8. 航向,指的是偏离正北的角度 9. 日期,这个日期是准确的,不需要转换GPGGA GPS 定位数据数据详解:$GPGGA,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,M,<10>,M,<11>,<12>*xx$GPGGA :起始引导符及语句格式说明(本句为GPS 定位数据);<1> UTC 时间,格式为hhmmss.sss ;<2> 纬度,格式为ddmm.mmmm(第一位是零也将传送);<3> 纬度半球,N 或S(北纬或南纬)<4> 经度,格式为dddmm.mmmm(第一位零也将传送);<5> 经度半球,E 或W(东经或西经)<6> 定位质量指示,0=定位无效,1=定位有效;<7>使用卫星数量,从00到12(第一个零也将传送)<8>水平精确度,0.5到99.9<9>天线离海平面的高度,-9999.9到9999.9米M 指单位米<10>大地水准面高度,-9999.9到9999.9米M 指单位米<11>差分GPS 数据期限(RTCMSC-104),最后设立RTCM 传送的秒数量<12>差分参考基站标号,从0000到1023(首位0也将传送)。解析内容:第9,10 个字段,海平面高度和大地水准面高度,单位是米GPVTG 地面速度信息 $GPVTG,<1>,T,<2>,M,<3>,N,<4>,K,<5>*hh <1> 以正北为参考基准的地面航向(000~359度,前面的0也将被传输) <2> 以磁北为参考基准的地面航向(000~359度,前面的0也将被传输) <3> 地面速率(000.0~999.9节,前面的0也将被传输) <4> 地面速率(0000.0~1851.8公里/小时,前面的0也将被传输) <5> 模式指示(仅NMEA0183 3.00版本输出,A=自主定位,D= 差分,E=估算,N=数据无效 随笔分类(35) C#(29) C++(1) Delphi 资料摘录(1) LINQ & Lambda(1) MapX(1) Sql 代码重构和设计模式 其它(2) 随笔档案(42) 2013年9月 (2) 2013年2月 (2) 2012年12月 (1) 2012年6月 (2) 2011年12月 (1) 2011年11月 (1) 2011年10月 (8) 2011年9月 (6) 2011年8月 (3) 2011年7月 (3) 2011年6月 (9) 2011年5月 (4) 相册(2) ArticleLegend(2) 最新评论 1. Re:[转]MSSQL 优化之索引优化 不错 受教了 --茗::流 2. Re:C#下水晶报表的数据动态绑 定(推模式, 非关联数据库) 还是换用finereport 吧,周围几个朋 友用的水晶都快崩溃了 --ilovejava 3. Re:[整理]GPS 数据包解析 你好,我用的是GR-213的接收器, 根据他给的手册使用4800, none ,1的设置。但是接收的是有 规律的乱码,不是类似于 $GPGLL,4738.0173,N,12211.1 874,W,191934.7...... --mavapo

GPS数据分析

nmea数据如下: $GPGGA,121252.000,3937.3032,N,11611.6046,E,1,05,2.0,45.9,M,-5.7,M,,00 00*77 $GPRMC,121252.000,A,3958.3032,N,11629.6046,E,15.15,359.95,070306,,,A* 54 $GPVTG,359.95,T,,M,15.15,N,28.0,K,A*04 $GPGGA,121253.000,3937.3090,N,11611.6057,E,1,06,1.2,44.6,M,-5.7,M,,00 00*72 $GPGSA,A,3,14,15,05,22,18,26,,,,,,,2.1,1.2,1.7*3D $GPGSV,3,3,10,29,07,074,,30,07,163,28*7D 注:NMEA0183格式以“$”开始,主要语句有GPGGA,GPRMC,GPGSA,GPGSV,GPVTG,GPZDA等 1、 GPS DOP and Active Satellites(GSA)当前卫星信息 $GPGSA,<1>,<2>,<3>,<4>,,,,,<12>,<13>,<14>, <15>,<16>,<17>,<18> <1>模式:M = 手动, A = 自动。 <2>定位型式 1 = 未定位, 2 = 二维定位, 3 = 三维定位。 <3>到<14>PRN 数字:01 至 32 表天空使用中的卫星编号,最多可接收12颗卫星信息 (上面蓝色处,总共有12个)。 <15> PDOP位置精度因子(0.5~99.9) <16> HDOP水平精度因子(0.5~99.9) <17> VDOP垂直精度因子(0.5~99.9) <18> Checksum.(检查位). 2、 GPS Satellites in View(GSV)可见卫星信息 $GPGSV, <1>,<2>,<3>,<4>,<5>,<6>,<7>,?<4>,<5>,<6>,<7>,<8> <1> GSV语句的总数 <2> 本句GSV的编号 <3> 可见卫星的总数,00 至 12。 <4> 卫星编号, 01 至 32。 <5>卫星仰角, 00 至 90 度。 <6>卫星方位角, 000 至 359 度。实际值。 <7>讯号噪声比(C/No), 00 至 99 dB;无表未接收到讯号。 <8>Checksum.(检查位). 第<4>,<5>,<6>,<7>项个别卫星会重复出现,每行最多有四颗卫星。其余卫星信息会于次一行出现,若未使用,这些字段会空白。

GPGGA数据解析论文

摘要 GPS全球定位系统能连续、实时地确定船舶的准确位置,并将它的信息反馈给船舶驾驶自动控制系统的中央处理系统,以便中央处理系统随时检查船舶是否偏离最佳航线,据此采取措施,确保船舶稳定而精确地沿最佳航线航行。 GPGGA,作为GPS NMEA-0183协议主要数据之一,是目前使用最广的数据。最大帧长72,包括17个字段。我们可以通过解析它来确定船舶当前的时间,纬度,纬度半球,经度,经度半球,定位质量指示,使用卫星数量,水平精确度,海拔高度,高度单位,大地水准面高度,高度单位,差分GPS数据期限,差分参考基站标号。 本次设计主要是要通过学习GPS原理及NMEA-0183协议,运用C语言进行编程,即读取、解析数据的定位信息。 关键字:GPS,GPGGA,C语言,NMEA-0183协议

目录 前言 (1) 1.绪论 (3) 2.方案设计 (6) 3.PCB图绘制 ............................................................................. 错误!未定义书签。4.调试.. (25) [参考文献] (26)

前言 GPS的工作原理,简单地说来,是利用我们熟知的几何与物理上一些基本原理。首先我们假定卫星 的位置为已知,而我们又能准确测定我们所在地点A至卫星之间的距离,那么A点一定是位于以卫星为 中心、所测得距离为半径的圆球上。进一步,我们又测得点A至另一卫星的距离,则A点一定处在前后 两个圆球相交的圆环上。我们还可测得与第三个卫星的距离,就可以确定A点只能是在三个圆球相交的 两个点上。根据一些地理知识,可以很容易排除其中一个不合理的位置。当然也可以再测量A点至另一 个卫星的距离,也能精确进行定位。事实上,接收机往往可以锁住4颗以上的卫星,收到四颗则加上高 程值这时,接收机可按卫星的星座分布分成若干组,每组4颗,然后通过算法挑选出误差最小的一组用 作定位,从而提高精度。 NMEA-0183协议是GPS接收机应当遵守的标准协议,也是目前GPS接收机上使用最广泛的协议。GPGGA 是GPS NMEA0183协议语句中的一种格式,这是一帧GPS定位的主要数据,也是使用最广的数据。GPGGA 语句包括17个字段:语句标识头,世界时间,纬度,纬度半球,经度,经度半球,定位质量指示,使用卫星数量,水平精确度,海拔高度,高度单位,大地水准面高度,高度单位,差分GPS数据期限,差分参考基站标号,校验和结束标记(用回车符和换行符),分别用14个逗号进行分隔。利用一些软件就能把GPGGA的这些信息数据完整的显示出来。 GPS是20世纪70年代由美国陆海空三军联合研制的新一代空间卫星导航定位系统。其最初目的是 为陆、海、空三大领域提供实时、全天候和全球性的导航服务,并用于情报收集、核爆监测和应急通讯 等一些军事目的;目前已被广泛应用于交通、测绘等许多行业。GPS由21颗工作的卫星和3颗备用 的卫星组成。它能够覆盖全球,可以为公路、铁路、空中和海上的交通运输工具提供导航定位服务。它 能够军民两用,战略作用与商业利益并举。全球卫星定位系统包括绕地球运行的多颗卫星,能连续发射 一定频率的无线电信号。只要持有便携式信号接收仪,则无论身处陆地、海上还是空中,都能收到卫星 发出的特定信号。接收仪中的电脑选取几颗卫星发出的信号进行分析,就能确定接收仪持有者的位置。 全球定位系统用途广泛,主要有三个方向的应用:(1)陆地应用,主要包括车辆导航、应急 反应、大气物理观测、地球物理资源勘探、工程测量、变形监测、地壳运动监测、市政规划控 制等;(2)海洋应用,包括远洋船最佳航程航线测定、船只实时调度与导航、海洋救援、海洋探宝、水文地质测量以及海洋平台定位、海平面升降监测等;(3)航空航天应用,包括飞机导航、 航空遥感姿态控制、低轨卫星定轨、导弹制导、航空救援和载人航天器防护探测等。 【1】随着科技的发展,GPS定位系统应用越来越广泛。不光在尖端科技方面普遍,就在我们的生活方面也得到广泛的应用。 在军事、科技等尖端方面应用有航空方面的,还有导弹方面的。在军事领域和科技领域起着越来越重要的作用。并且在这些方面的发展很有前景。未来在这方面的竞争将非常激烈。 现在已经进入3G时代,有许多手机已经安装了导航系统。为我们的生活提供了很大的方便,越来越贴近我们的生活。还有在其他方面的应用主要有: 1.船舶远洋导航和进港引水; 2.飞机航路引导和进场降落; 3.汽车自主导航; 4.地面车辆跟踪和城市智能交通管理; 5.紧急救生; 6.个人旅游及野外探险;

GPS-GPZDA数据解析C语言

摘要 GPS(Global Positioning System)可说是目前最热门、最受人瞩目的一项科技。简单的说,GPS是利用位于地球同步轨道上的同步卫星,以其相对位置的关系,来测出精确的位置,事实上,接收机往往可以锁住4颗以上的卫星,这时,接收机可按卫星的星座分布分成若干组,每组4颗,然后通过算法挑选出误差最小的一组用作定位,从而提高精度。GPS除了可作为精确的定位工具之外,同时也可以用作精密的测量工具。在进行大范围、大面积的地面测量时,往往受限于地球本身的弧度与测量仪器的精密程度,甚至于当时的天候状况或测量人员本身的许多因素,导致测量的结果产生或多或少的误差。倘若利用GPS来作为测量工具,由于人造卫星高悬于地表上空,受地表弯曲弧度的影响相对减少。透过GPS与GIS的结合,更可以让我们更快速、精确地处理所需的资料。 发明准确的计时工具之后的短时间内,没有人会想象得到有了准确的时间会带来改变世界的冲击,影响了我们的生活,新兴的产品和服务产业都由其引发。GPS对精确的位置就有如时钟对精确的时间一样,因此其得到大范围使用。由于GPS定位需要非常精确的时间,每颗GPS卫星上都有精密的原子钟,所以发送的信号可以附带精确的时间信息。对于接收机也就有一定要求,GPS卫星接收机种类很多,根据型号分为测地型、全站型、定时型、手持型、集成型;根据用途分为车载式、船载式、机载式、星载式、弹载式。 随着通信技术的迅速发展,为适应社会的需求,满足用户的需要,必须提高软件开发水平,近些年随着嵌入式操作系统的兴起,嵌入式终端与GPS的结合更加完善了GPS的可视性、功能性和操作性,使GPS 的泛用性得到增强,用户的数量增多使功能需求越来越复杂,其中就有部分用户对时间精度要求较高,需要专门的语句格式来解析,这也是GPZDA得到应用并推广的原因之一。 无论是生活还是军事,GPS全球卫星定位系统都已经成为最重要的定位系统。它的信号所包含的信息中有位置信号和时间信号,NMEA-0183协议的其他语句格式解析可以为用户指明自己的所处方位,时间信息却不是很准确。用户所需要的除了准确的位置信息,还有收到信号时的准确时间。GPZDA是NMEA0183协议中专门为解析时间准备的编码,比NMEA0183协议中的其他语句格式更加精确,因此其专用性受到用户认可。经过20余年的实践证明,GPS系统是一个高精度、全天候和全球性的无线电导航、定位和定时的多功能系统。 GPS技术已经发展成为多领域、多模式、多用途、多机型的国际性高新技术产业。 关键字:GPS 0183协议 GPZDA

GPS数据格式

GPS接收机串行通信标准摘要 参考NMEA-0183 美国国家海洋电子协会(NMEA—The NationalMarine Electronics Association) 为了在不同的GPS导航设备中建立统一的RTCM(海事无线电技术委员会)标准,先后制定了NMEA-0180、0182和0183三个标准。0183可以认为是前两种的升级,也是目前使用最为广泛的一种。目前广泛采用的是Ver 2.00版本。现在除少数GPS接收机外,几乎所有的GPS接收机均采用了这一格式。 接口电平 符合NMEAO183标准的GPS接收机的硬件接口能够兼容计算机的RS-232C协议串口,然而,严格来说NMEA标准不是RS-232C,规范推荐依照EIA422(也称为RS-422)。 EIA-422是利用导线之间的信号电压差来传输信号的,其每个通道要用两条信号线,一条是逻辑“1”,~条是逻辑“0”,通过传输线驱动器和传输线接收器实现逻辑电平和电位差之间的转换,一般允许驱动器输出为±2V~±6V 。 标准RS-232C采用负逻辑,即逻辑“1”表示-5V~-15v,逻辑“0”表示+5V~+15V,利用传输信号线和信号地之间的电压差进行传输。 虽然存在区别,但在实际使用中,如果只是接收GPS的输出,则只需GPS数据输出线和信号地线同计算机的Rs232C输入线相连(这个方法我并没有试验过,是从别的地方听来的,有兴趣有条件的兄弟可以动手实验一下,不过后果自负哦!呵呵)。 NMEA通讯协议所定义的标准通讯接口参数为: 波特率:4800bit/s; 数据位:8位; 停止位:1位; 奇偶校验:无; 输出语句格式 NMEA通讯协议所规定的通讯语句都已是以ASCII码为基础的,NMEA-0183协议语句的数据格式如下:“$”为语句起始标志;“,”为域分隔符;“ *”为校验和识别符,其后面的两位数为校验和,代表了“$”和“*”之间所有字符的按位异或值(不包括这两个字符);回车换行为终止符,所有的语句必须以此来结束,也就是ASCII 字符的0x0D和0x0A。 接收机可能发送很多类型的语句,而我们需要的可能只是某些语句中的几个字段。因此就需要对接收到的数据进行解析,取得所需的信息。另外,可能会由于小数点位数不同等原因,语句的长度是可变的,因而分离感兴趣的信息时,不能按照该信息在语句中所处的字符位置来查找,只能依据逗号分隔符,这一点在数据提取的过程中非常重要。 GPS 接收OEM 板的型号甚多、性能各异,但它们的GPS定位信息串行输出格式大多采用美国国家海洋电子协会制定的NMEA-0183 通信标准格式。其输出数据采用的是ASCII码,内容包含了纬度、经度、高度、速度、日期、时间、航向以及卫星状况等信息,常用语句有6 种,包括GGA、GLL、GSA、GSV、RMC 和VTG。我们也可以通过GPS 专用设置软件或普通的串口调试软件发送相应的命令语句给OEM 板,把GPS OEM 板设置为每隔若干毫秒发送哪种或哪几种NMEA 语句,然后该OEM 板将这些设置参数存储到板上的EEPROM 芯片内,此后该OEM 板将按照这些设置每隔相应的毫秒数发送出一个或几个

GPS数据格式详解

GPS数据格式 (2009-05-15 11:15:05) 一、NMEA0183标准语句 1、Global Positioning System Fix Data(GGA)GPS定位信息 $GPGGA,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,M,<10>,M,<11>,<12>*hh <1> UTC时间,hhmmss(时分秒)格式 <2> 纬度ddmm.mmmm(度分)格式(前面的0也将被传输) <3> 纬度半球N(北半球)或S(南半球) <4> 经度dddmm.mmmm(度分)格式(前面的0也将被传输) <5> 经度半球E(东经)或W(西经) <6> GPS状态:0=未定位,1=非差分定位,2=差分定位,6=正在估算 <7> 正在使用解算位置的卫星数量(00~12)(前面的0也将被传输) <8> HDOP水平精度因子(0.5~99.9) <9> 海拔高度(-9999.9~99999.9) <10> 地球椭球面相对大地水准面的高度 <11> 差分时间(从最近一次接收到差分信号开始的秒数,如果不是差分定位将为空) <12> 差分站ID号0000~1023(前面的0也将被传输,如果不是差分定位将为空) 2、GPS DOP and Active Satellites(GSA)当前卫星信息 $GPGSA,<1>,<2>,<3>,<3>,<3>,<3>,<3>,<3>,<3>,<3>,<3>,<3>,<3>,<3>,<4>,<5>,<6>*hh <1> 模式,M=手动,A=自动 <2> 定位类型,1=没有定位,2=2D定位,3=3D定位 <3> PRN码(伪随机噪声码),正在用于解算位置的卫星号(01~32,前面的0也将被传输)。 <4> PDOP位置精度因子(0.5~99.9) <5> HDOP水平精度因子(0.5~99.9) <6> VDOP垂直精度因子(0.5~99.9) 3、GPS Satellites in View(GSV)可见卫星信息 $GPGSV,<1>,<2>,<3>,<4>,<5>,<6>,<7>,…<4>,<5>,<6>,<7>*hh <1> GSV语句的总数 <2> 本句GSV的编号 <3> 可见卫星的总数(00~12,前面的0也将被传输) <4> PRN码(伪随机噪声码)(01~32,前面的0也将被传输) <5> 卫星仰角(00~90度,前面的0也将被传输) <6> 卫星方位角(000~359度,前面的0也将被传输) <7> 信噪比(00~99dB,没有跟踪到卫星时为空,前面的0也将被传输) 注:<4>,<5>,<6>,<7>信息将按照每颗卫星进行循环显示,每条GSV语句最多可以显示4颗卫星的信息。其他卫星信息将在下一序列的NMEA0183语句中输出。 4、Recommended Minimum Specific GPS/TRANSIT Data(RMC)推荐定位信息$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>*hh <1> UTC时间,hhmmss(时分秒)格式 <2> 定位状态,A=有效定位,V=无效定位 <3> 纬度ddmm.mmmm(度分)格式(前面的0也将被传输) <4> 纬度半球N(北半球)或S(南半球)

GPS数据采集分析

基于GPS数据采集系统的设计 时间:2012-08-02 09:58:50 来源:现代电子技术作者:史晓影 关键字:GPS数据采集系统 摘要:为了设计高精度、全天候、全天时的数据采集系统,采用了GPS技术实现通信,信息采用NMEA-0183格式,单片机接收GPS输出的时间和定位信息后,将信息调整为我国的标准,并将调整后的经度、纬度、海拔高度和时间等信息通过液晶终端显示。最终实现了GPS数据采集及转换等工作,为事故定位、搜查救援等工作提供了技术依据。关键词:GPS数据采集;定位;数据处理;单片机 随着科技的发展,移动技术的不断成熟,定位导航开辟了一个重要的新兴市场。GPS(Global Positioning System)以其高精度、全天候、全天时的特点,在定位、导航、测距等领域被广泛应用,具有测量精度高、速度快、用户数量不限、抗干扰能力强等优点。不仅用于军事领域,还广泛用于工农业生产、交通运输、野外探险等领域。本系统实现的数据采集精确度较高;采集到的位置可以控制在2 m范围之内,接收数据并处理的时间小于2 s,存精确度和实时性上要优于其他数据采集系统。 1 GPS数据采集系统的设计 硬件系统中主要由主控制器、液晶显示模块和CPS射频前端,数据传输单元组成,如图1所示。

GPS信号通过天线接收值射频前端模块,在射频芯片中实现A/D 转换,将模拟中频信号转化为数字信号通过串口传入单片机,单片机接收的数据信息经过时差,坐标处理等操作,在通过LCD显示出来。 2 GPS数据采集系统的设计及实现 2.1 GPS语句的输出格式 GPS-OEM板采用NMEA-0183通信格式,可以输出多种句型,均以“$”开头。其语句格式如表1所示。 输出的语句按串口通信协议:1位开始位,8位数据位,1位停止位,无奇偶校验。输出数据采用的是ASCⅡ码字符,内容包含了纬度、经度、速度、日期、航向及卫星状况等信息。语句达十余种,其中定位语句$GPRMC其结构为: $GPRMC,<1>.<2>,<3>.<4>,<5>.<6>,<7>,<8>,<9>,<10>,<11>*hh 其中: “GP”-交谈识别符;

按NMEA-0813协议解析GPS数据

1.typedef data struct{ 2. double latitude;//经度 3. double longitude;//纬度 4.int latitude_Degree;//度 5.int latitude_Cent;//分 6.int latitude_Second;//秒 7.int longitude_Degree;//度 8.int longitude_Cent;//分 9.int longitude_Second;//秒 10. float speed;//速度 11. float direction;//航向 12. float height;//海拔高度 13.int satellite; 14. U8 NS; 15. U8 EW; 16. DATE_TIME D; 17.}GPS_INFO; 时间结构体: 1.typedef struct{ 2.int year; 3.int month; 4.int day; 5.int hour; 6.int minute; 7.int second; 8.}DATE_TIME; 核心算法就是解析GPRMC数据,得到经纬度,日期时间,速度,航向: 1.int GPS_RMC_Parse(char *line, GPS_INFO *GPS) 2.{ 3. U8 ch, status, tmp; 4. float lati_cent_tmp, lati_second_tmp; 5. float long_cent_tmp, long_second_tmp; 6. float speed_tmp; 7. char *buf = line; 8. ch = buf[5];

GPS-HX6317 GPS数据内部解析资料

模块产品-HX6317产品规格书

HX-6317BD/GPS OEM Module Data Sheet Revision:1.0 Date:03/2013 西安华迅微电子有限公司 HuaXun Microelectronics Inc.

HX-6317BD/GPS OEM Module Data Sheet Copyright?HuaXun Microelectronics Inc.2013.All rights reserved. Release history Disclaimer This documentation is provided for use with HuaXun products.No license to HuaXun property rights is granted.HuaXun assumes no liability,provides no warranty either expressed or implied relating to the usage,or intellectual property right infringement except as provided for by HuaXun Terms and Conditions of Sale. All information in this document should be treated as preliminary.HuaXun may make changes to this document without notice.Anyone relying on this documentation should contact HuaXun for the current documentation and errata. HuaXun Microelectronics Inc. 3F,HuiHao International Building,No.58,KeJi3rd Road,Xi’an High tech Zone,Shaanxi, 710075,China Tel:86-29-62960588 Fax:86-29-62960588-819 https://www.sodocs.net/doc/c118601726.html,

3.GPS信息-GPVTG数据解析

摘要 GPS是利用卫星,在全球范围内实时进行定位、导航的系统,目前可以说是最热门、最受人瞩目的一项科技。它具有在海、陆、空进行全方位实时三维导航与定位能力,并提供实时、全天候和全球性的导航服务。所以,船舶可以根据GPS的解析信息来确保稳定而精确最佳航线。 随着科技的迅速发展,各种新型的航海仪器均已实现了数字化和计算机化,目前各种航海仪器之间的通信一班采用NMEA-0183接口。NMEA-0183现已成为GPS导航设备统一的标准协议,主要包括GPGGA,GPRMC,GPVTG,GPGSV,GPZDA等语句格式,其中GPVTG的功能就是解析卫星信号中的对地速度信息,将其信号序列变为非专业人员可读取的文字。 本文针对当前比较普及的GPS系统,介绍了GPS通信的NMEA-0183协议、GPVTG信息解析的实现方法。关键字:GPS NMEA-0183协议 GPVTG

目录 前言 (1) 第1章绪论 (2) 1.1 GPS定位系统原理 (2) 1.2 C语言编程特点 (3) 第2章NMEA-0183协议的简介 (4) 2.1 NMEA-0183协议的格式定义 (4) 2.2 NMEA-0183的应用领域 (5) 2.3 NMEA-0183数据处理中的注意事项 (5) 第3章设计方案 (6) 3.1 主要方案思路及步骤 (6) 3.1.1主流程图 (6) 3.1.2调用函数流程图: (7) 3.1.3解析程序的编写及流程图 (7) 3.2程序的编写及调试结果 (8) 3.2.1 最终程序及其注解 (8) 3.2.2调试步骤及显示结果 (11) 3.3文本输出显示结果: (13) 第4章小结 (14) 4.1 设计中遇到的问题及解决方案 (14) 4.2心得体会 (15) [参考文献] (17)

MATLAB解析GPS数据程序

% 注:本程序可直接在MATLAB2017a 中运行 %该脚本文件用于学习GPS数据得读取,需要做其她用途请自行修改代码 %本脚本文件得前面几行代码就是要设置得一些参数 %默认使用3(需视情况修改) %波特率设为GPS模块默认得38400 %下面为程序源码 clear num_execute= 100; %执行次数 num_SingleRead = 150;%单次从串口读取得字节数(最好设置足够大(最低大概设为80),保证单次读取得数据包含一条完整得GPS数据) Timedelay =0、2;%用于延时读取串口数据 BaudRate=38400; % 读取数据得波特率 Terminator = 'CR'; num_MaxTry= 5; %打开串口得最多尝试次数 BytesAvailableFcnCount = 1000; %% 设置参数 %delete(instrfindall); %串口打开失败时使用此句 % delete(s);clear s % 串口打开失败时使用此句 serial3 =serial('3'); % 串口设置 serial3、BytesAvailableFcnMode = ’byte'; % serial3、InputBufferSize = 38400; % 输出波特率 serial3、BaudRate= BaudRate;% 读入波特率 % serial3、OutputBufferSize =1024; serial3、BytesAvailableFcnCount= BytesAvailableFcnCount;

serial3、ReadAsyncMode = 'continuous’; serial3、Terminator = Terminator; %%打开串口 count_opentimes=1; while contains(serial3、status,’closed')〉 0 &&count_opentimes 〈 num_MaxTry fopen(serial3); %打开串口 count_opentimes = count_opentimes+1; end if contains(serial3、status,’open')< 1 disp(’open failed!'); return end %%读取并处理数据 % 初始化 GPS_Data = GPS_Init(); while(num_execute〉 0) GPS_DataStrs = fread(serial3,num_SingleRead,'char’);%一次读出10个字符 GPS_DataStrs = reshape(GPS_DataStrs,1,[]); GPS_DataStrs =split_str2strs(GPS_DataStrs); GPS_Data_tmp= get_GPS_specificData(GPS_DataStrs); GPS_Data = Updata_GPU_Data(GPS_Data,GPS_Data_tmp); show_GPS_Data(GPS_Data); pause(Timedelay); %延时

NEMA格式 GPS数据提取解析 坐标转换等 源码

GPS数据提取解析源码GPS source data extraction analysis, we can refer to learn from GPS数据解析 数据拆分\坐标转换\显示线路图\源代码 逐条读取gps数据然后进行拆分解析,坐标转换,绘制线路。。。很好的示例多多交流学习。。 本程序是基于VC++ 建立的单文档工程。 废话少说,直接上代码 //获取子字符串个数 int GetSubStrCount(CString str,char cFlag) { cFlag = ','; int i = 0; BOOL isHas = FALSE; for (int iStart = -1; -1 != (iStart = str.Find(cFlag,iStart+1)) ; i++) { isHas = TRUE; } if (!isHas) { return 0; } else { return i+1; } } //获取子字符串 // i 序号0 CString GetSubStr(CString str,int i,char cFlag) { cFlag = ','; int iStart = -1; int iEnd = 0; int j = 0; int iStrCount; iStrCount = GetSubStrCount(str,cFlag);

if (i>iStrCount -1 || i<0) { str = ""; return str; } else { //do nothing } if (i == iStrCount-1) { i = iStrCount; for (;j

相关主题