首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

WinCE6.0 GPS驱动和GPSAPI(GPSID driverI)

Posted on 2011-07-15 15:06  ProEmbedded  阅读(1553)  评论(0)    收藏  举报


WinCE6.0已经集成了GPS Driver,同时系统提供了GPSAPI,组件名 称GPSID(GPS Intermediate Driver),GPS的NMEA数据解析、提取GPS定位和卫星信息等内容都由GPSID来完成,应用程序只要调用 GPSOpenDevice(),GPSCloseDevice(),GPSGetPosition(),GPSGetDeviceState()这几个 函数就可以获取足够的GPS信息。定制OS时只需要添加相应组件、实现COM驱动、注册表中添加相应GPSID的设置信息。同时GPSID使用了GPS的 COM端口后还会虚拟出另外一个COM口,供其它一些GPS方面的软件使用,且可以多个软件同时打开这个虚拟的端口,十分好用。

具体实现方法:


(原创内容,转载请注明出处:http://www.pro-embedded.com/thread-105-1-1.html

1、GPSID是基于标准的COM口获取GPS数据的,所以硬件上GPS模块要与UART连接,系统驱动要实现相应UART的COM驱动。

2、添加组件GPS Intermediate Driver。

GPSID.jpg


3、platform.reg中添加如下信息。

GPSID2.jpg


其中:GPS Intermediate Driver下的CurrentLogFile、OldLogFile、MaxLogFileSize是GPSID的LOG,文件中会存储获取到的原始NMEA数据,不需要LOG信息时可以将这段去掉。


GPS Intermediate Driver\Drivers项下的CurrentDriver的内容要与后边的GPS Intermediate Driver\Drivers\GPSCOM相对应,GPSID首先读取CurrentDriver的值,然后再去获取CurrentDriver指定的 项中的设置信息,所以如果两者不一致就无法获取信息,加载失败。


InterfaceType项指定与COMM形式读取数据,同时还有File和Poll,COMM较为常用,以下的设置也都是基于COMM的。

CommPort指定连接GPS模块的COM端口,根据自己的COM驱动设置,要带冒号,此处我用的是COM1。下边是一些键值从字面上也能看得出来是COM的波特率等设置,根据GPS模块的实际情况设定,此处不需要详细解释。


GPS Intermediate Driver\Multiplexer项下的DriverInterface是虚拟出的COM端口,此处我用的是COM2,用其它GPS软件测试可以正常使用。



---------------------------
本站内容如未注明“转载”分类则为站内用户原创,未经作者允许商业网站不得转载,普通网站及用户转载时需保留文章原版内容且注明出处!
文章来源: 普嵌嵌入式 | 原文地址: http://www.pro-embedded.com/thread-105-1-1.html