在 WM 平台上开发 GPS 导航系统
2010-02-21 22:52:00 来源:WEB开发网现在GPS应用必须足以在商业环境如汽车导航中使用,此外,该如何解释GPS数据的实际工作过程,在这三个部分组成的系列,我将介绍两个主题,在大多数行业工程有GPS设备的今天,增加你编写一个商业级GPS应用的技巧。
一个强大的语句
这系列中的第一部分的任务将探讨解析原始GPS数据。幸运的是,任务是简化国家海洋电子协会由于它采用了一种行业标准,现在使用绝大多数的GPS设备。为了给开发人员提供一个良好的开端,我选择使用一些Visual Studio。NET源代码来自我的“GPS.NET全球定位SDK的”组件。 (代码被剥离,如多线程和错误处理功能。)
NMEA数据发送以逗号分隔的“句子”,其中载有关于这句话的第一个字的信息。有超过50多种的句子,但翻译完成这项工作真只需要处理其中的一些。所有最常见的NMEA语句是一句是“Recommended Minimum”这一句,以“$GPRMC开头”。下面是一个例子:
代码:
1 $GPRMC,040302.663,A,3939.7,N,10506.6,W,0.27,358.86,200804,,*1A
这一个句子包含几乎所有的GPS应用程序需要:纬度,经度,速度,轴承,卫星获取的时间,固定的地位和磁性的变化。
解析器的核心
做NMEA翻译的第一步是写一个方法来做这两件事情:将每一句分离成单个字、审议第一个字,找出哪些信息是可以进一步提取。列表1-1显示了翻译类的开始。
代码片段:
1 '*******************************************************
2
3 '** Listing 1-1. The core of an NMEA interpreter
4
5 '*******************************************************
6
7 Public Class NmeaInterpreter
8 ' Processes information from the GPS receiver
9 Public Function Parse(ByVal sentence As String) As Boolean
10 ' Divide the sentence into words
11 Dim Words() As String = GetWords(sentence)
12 ' Look at the first word to decide where to go next
13 Select Case Words(0)
14 Case "$GPRMC" ' A "Recommended Minimum" sentence was found!
15 ' Indicate that the sentence was recognized
16 Return True
17 Case Else
- ››开发Android 日历教程
- ››开发学院总结 Win 8实用技巧大全
- ››开发学院原创教程:把win8的IE10放桌面上方法(非...
- ››开发者眼中的Windows Phone和Android
- ››开发学院教你用SQL 语句最快速清空MySQL 数据表的...
- ››WM 无法连接到win 7及webservice的异类原因
- ››开发一个自己的HTML在线编辑器(一)
- ››开发一个自己的HTML在线编辑器(二)
- ››开发者在App Store上赚的钱比在Android Market上多...
- ››开发者应深入学习的10个Android开源应用项目
- ››WM/WP上最完美的背光控制软件
- ››WM性能优化的一些经验
更多精彩
赞助商链接