正在进行安全检测...

发布时间:2024-04-20 20:08:29   来源:文档文库   
字号:
从串口获得并分析GPS数据
分类:GIS知识2009-01-0614:514047人阅读评论(17收藏举报
目前GPS(全球定位系统)定位应用市场日趋成熟,正在进入应用的高速发展时期。看到论坛里不断有人提问关于GPS的问题。现将个人对GPS的了解写出来跟大家一块探讨。1GPS应用简介
近年来GPS系统,已经在大地测绘、海上渔用、车辆定位监控、建筑、农业等各个领域得到广泛应用。从九十年代我国引进GPS定位技术开始,经过十多年的市场培育,GPS定位应用进入了发展的最好时机,未来十年基于GPS的应用将会改变我们的生活和工作方式。目前市场上的大部分GPS接受模块都是通过RS232串口与MCU进行数据传输的。这些数据包括经度、纬度、海拔高度、时间、卫星使用情况等基本信息。开发人员再依据这些基本数据,进行数据处理来完成整套的定位系统软件。2数据格式
在进行数据接受编程之前,先介绍一下该模块的数据格式。它支持NMEA-0183输出格式。信息如下:
GGA位置测定系统定位资料(GlobalPositioningSystemFixDataGSV导航卫星资料(GNSSSatellitesinView
RMC导航卫星特定精简资料(RecommendedMinimumSpecificGNSSDataVTG方向及速度等相关资料(CourseOverGroundandGroundSpeed由于文章篇幅问题,笔者在这里只以接收GGA数据为例,格式如下:
$GPGGA,hhmmss,dddmm.mmmm,a,dddmm.mmmm,a,x,xx,x.x,x.x,M,,M,x.x,xxxx*CS例:$GPGGA,033744,2446.5241,N,12100.1536,E,1,10,0.8,133.4,M,,,,*1F说明见表:

区域1234567
名称信息IDUTC时间纬度/北半球指示经度/西半球指示定位指示
$GPGGA0337442446.5241N12100.1536E1
单位

说明GGA协议开始hhmmssdddmm.mmmmN=northS=southdddmm.mmmmE=eastW=west0=未定位1=定位SPS模式2=定位DGPS,SPS模式
891011
应位卫星数HDOP海拔高度海拔高度单位
100.8133.4M

00-12


1213141516
WGS84水准面划分WGS-84水准面划分单位累计GPS数据微分参考工作站ID校验位
*1F




上面例子中,我们可读出位置信息:北纬2446.5241分,西经12100.1536格林威治时间:337443部分程序代码(c++
1.//初始化串口
2.//入口:strComm(串口名3.//返回:TRUE(成功;FALSE(失败
4.BOOLCGPSDlg::InitComm(CStringstrComm5.{6.inti;7.
DCBdcb;8.COMMTIMEOUTSTimeOuts;9.
10.for(i=0;i<3;i++//串口最多初始化3
11.{
12.m_hComm=CreateFile(strComm,GENERIC_READ|GENERIC_WRITE,
0,NULL,OPEN_EXISTING,0,NULL;13.if(m_hComm!=INVALID_HANDLE_VALUE14.break;15.}16.if(i==3//串口初始化失败
17.{18.AfxMessageBox("串口初始化失败...";19.returnFALSE;20.}21.22.SetupComm(m_hComm,MAXLENGTH,MAXLENGTH;//设置发送接收缓冲区大小
23.24.TimeOuts.ReadIntervalTimeout=0;//设定5个超时参数

本文来源:https://www.2haoxitong.net/k/doc/380a9b1ea8114431b90dd80f.html

《正在进行安全检测....doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式