CE中实现PDA与
文件类型:PDF/Adobe Acrobat 文件大小:字节
更多搜索:CE 实现 PDA
Windows CE中实现PDA与
GPS OEM板的通信X
何四华,李天伟,韩云东
(海军大连舰艇学院航海系,辽宁大连116018)
摘 要:介绍了Windows CE的特点,阐述了如何利用面向对象的思想,多线程的程
序设计方法实现PDA和GPS O EM板的通信.该通讯方法适用于PDA与其它设备
进行串口通信.
关键词:Windows CE ;串口通信; Windows API ;多线程
1 引 言
GPS O EM板可直接获取导航卫星的原始数
据,且体积小,性能优良而价格较低,十分便于二次
开发.利用计算机(如便携式笔记本电脑)与GPS
O EM板的串行通信来读取GPS定位信息,可以方
便地开发出各种GPS应用软件,从而广泛应用于
导航定位和大地测量等众多领域中.但是计算机,
即使是便携机,也存在一个缺点就是体积比较大,
携带和现场操作起来较不方便,因此利用基于
Windows CE操作系统的PDA来完成与GPS
O EM板的通信和信息处理就显出了其优势.
Windows CE是一种新型的Microsoft Win2
dows 32位操作系统,是一个轻量级,多线程的操
作系统,相对于Windows98来说,其优势在于其载
体PDA具有小的尺寸(笔者使用的PDA外尺寸
为:103×86×20mm ,重量只有250g),和对Win32
API子集及多平台的支持能力.正因为如此,
Windows CE已经应用于地理勘测,便携导航和为
特殊任务而设计的嵌入式平台,有着十分广阔的应
用前景,因此在Windows CE下作此项开发是很有
意义的.
Windows CE在应用方面也有其局限性.与
Windows98相比,Windows CE只支持API函数的
子集,对M FC的支持也比较有限,并且PDA的
CPU处理速度相对较慢,内存容量较小.Windows
CE给串口编程带来的最大不便有两点,第一是目
前PDA上的Windows CE版本不支持ActiveX控
件,因此在串口通信方面具有强大功能的
MSComm控件在此也无能为力,第二是Windows
CE不支持重叠的I/ O操作,这就为Windows CE
与GPS O EM板通信的开发提出了挑战.本文即
是考虑到这两种困难,针对Windows CE下PDA
的串口通信做了一些研究开发工作.
2 数据获取与解析方法
利用串口通信获取GPS信息,希望能够5秒
钟更新一次经纬度和时间数据,更频繁的数据更新
则会白白浪费掌上设备有限的电池.GPS每秒钟
发送10条数据,则每5秒钟就是50条,我们从中
挑选需要的数据,其余信息可忽略掉.
软件接口GPS O EM板的通讯协议采用
NM EA0183 ASCⅡ码协议,此协议是GPS导航设
备的统一标准.我们不需要了解通信协议的全部
信息,只需要从中挑选我们用得上的线路数据位信
息.
如果卫星通信正常的话,你能接收到的数据格
式如下:$GPRMC , 204700 , A , 3403. 868 , N ,
11709. 432 , W , 001. 9 , 170698 ,……
信号解析:
24 GNSS World of China/ 2004. 6
X收稿日期:2004209222
1994-2006 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net
表1 GPS信号格式说明
数据NM EA0183ASCⅡ码协议说明
$GPRMCGPS推荐的最短数据
204700
U TC- TIM E 24小时制的标准时间,按照
小时/分钟/秒的格式
A状态A =定位V =导航
3403. 868
LA T纬度值,精确到小数点前四位,后三
位
NLA T- D IR N表示北纬S表示南纬
11709. 432
LON经度值,精确到小数点前5位,后三
位
WLON- D IR W表示西经E表示东经
001. 9二维方向指向,相当于二维罗盘
170698当前U TC日期ddmmyy格式
…………
首先,将信号解析得到的地理坐标(经度,纬
度)进行地图投影变换(墨卡托投影或高斯投影),
得到平面直角坐标(X , Y).然后,将平面直角坐标
归算到设备坐标,完成绘图及地理位置动态显示.
3 程序实现
微软提供了Microsoft Visual Basic for Win2
dows CE和Microsoft Visual C + + for Windows
CE两种工具来进行Windows CE平台上的二次开
发.下面介绍在Microsoft Visual C + + for Win2
dows CE(Windows CE 3. 0)环境下,利用面向对象
的思想,多线程的程序设计方法实现Windows CE
和GPS O EM板通信的一系列函数.
class CSerial Port
{
public :
CSerial Port();
~CSerial Port();
/ /方法的定义
BOOL Init Port(CWnd3p PortOwner , int
nPort , int nBaud , U IN T writebuffersize); / /串口
的初始化
BOOL Start Monitoring(); / /启动线程
BOOL Restart Monitoring(); / /重新启动线程
BOOL SuspendMonitoring(); / /挂起线程
BOOL StopMonitoring(); / /停止线程
DWORD Get WriteBufferSize( ); / /得到缓冲
区大小
protected :
void ProcessErrorMessage(WCHAR3Error2
Text); / /错误处理
static U IN T Comm Thread(L PVO IDp Param);
/ /线程函数
static void ReceiveChar(CSerial Port3port ,
COMSTA T comstat); / /接收串口信号
CWin Thread3m- Thread ; / /线程对象
BOOL m- b ThreadAlive ; / /线程状态记录
/ /临界区域对象,用于线程同步.
CR ITICAL- SECTION m-csCommunica2
tionSync ;
HANDL E m- hShut down Event ;
HANDL E m- hComm ;
HANDL E m- h EventArray[ 1 ] ;
COMM TIM EOU TS m- Comm Timeout s ;
DCB m- dcb ;
CWnd3m-pOwner ; / /父窗口
U IN T m- nPortNr ;
WCHAR3m- szWriteBuffer ;
DWORD m- nWriteBufferSize ;
} ;
4 结束语
通过使用上述函数,即可顺利地读取GPS
O EM板中的数据并进行各种解算.在各种野外条
件下的实际应用中,小巧玲珑的PDA也体现出了
它的优势.当然上述方法不只限于读取GPS
O EM板,它也可以适用于PDA与其它设备进行串
口通信.
参考文献
[ 1 ] 徐衡平,戎蒙恬. VC + +下通用串口通信类的多线
程实现[J ] .计算机应用,2001(6).
[ 2 ] [美] Microsoft公司. Microsoft Windows CE程序员
指南[ M ] .北京:北京大学出版社, 2000.
[ 3 ] Microsoft . Microsoft Windows CE Communication
Guide通信指南[ M ] .北京希望电子出版社,1999.
作者简介:何四华 (1979 -),男,海军大连舰
艇学院硕士研究生,主要研究航海仪器的自动化和
虚拟现实技术;
李天伟 (1963 -),男,副教授,海军大连舰艇
34 2004.6/全球定位系统
1994-2006 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net
学院航海系,主要从事现代导航技术和航海自动化
的研究,航海模拟器研制与开发.
韩云东 (1977 -),男,海军大连舰艇学院硕
士研究生,主要从事航海虚拟仪器的研制与开发.
定位数据采集装置
美国亚利桑那州的U S定位集团公司推出一
种可收集定位数据的装置,该装置称为Rhino
Rover ,它通过使用Garmin GPS 17N型接收机,可
在野外作业中采集到载波相位和伪距定位的数据,
并可自动记录下与格式无关的数据变化,通过采用
Rhino后处理器,这些数据可得到差分改正,最后
为静态和动态测量数据提供厘米级的定位精度.
如果用户采用二级Rhion Rover装置,可建立自己
的参考站,这样便可改进短基线的测量精度.
车辆跟踪系统
美国加州Argo导航定位公司开发出一款GPS
车辆跟踪系统,该系统具有可供GMS和CDMA数
字网络使用的双向电文信息显示及自动语音通信
的功能,该系统采用Leadtek 9543L P12通信GPS
芯片,它可提供地球对空搜索能力,5000点数据记
录,车速及仃车报警,定时轮询应答和应急开关.
其体积为2×2×3英寸.
隐藏式GPS跟踪装置
台湾台北市的San Jose导航定位公司推出一
种G219型袖珍式跟踪装置,这是一种小型隐藏式
GPS跟踪装置,可供车辆,人员或宠物跟踪使用.
该装置装有一台16信道GPS接收收,该接收机具
有一台无需外部天线的GSM网络系统发射机, G2
19型装置在2至120分钟时间间隔内有规律地播
发SMS信息来显示用户的ID及位置数据.其体
积尺寸为45×66×25mm ,重量为87g ,据称其定位
精度小于15m.
GPS在不间断供电
系统中的应用
在面对重建在911中被摧毁的曼哈顿区两大
发变电站这一问题时,针对在纽约这种大都市复杂
的地下结构中铺设两电站之间的铜缆线,从经济角
度讲,是不合理的.这就迫使Con Edison公司寻
求其它解决方案,而GPS系统就成为唯一可行的
方案.
Con Edison公司向Sarnoff公司提出了采用
GPS解决该问题的要求.Sarnoff公司的技术人员
认为GPS定时可以作为相位测量中的一个独立的
参考源.
通常情况下, GPS时钟每秒至少提供一个脉
冲,精度达到毫秒.但这仍不足以满足成功传输的
精度要求.为解决这一问题, Sarnoff小组的技术
人员在GPS内部处理器设计了更高精度时钟,即
GPS控制时钟可以与一个DSP相连,这样就可以
实现精确到1微秒的时间标度.而在一微秒的时
间内,60 Hz的相位波形只会改变大约十五分之一
度.这样DSP就可以对交流波形进行采样,而所
测得的波形误差小于0. 3度,于是,便可以满足不
间断供电系统所需的精度要求.
GPS相位监控系统每秒提供更新的数据,这
就保证Con Edison公司在传输过程中完成对发电
站和传输线路的电路调整.由于GPS解决方案的
精确度高, Con Edison公司实现了准确无误的传
输.并且在传输过程中,曼哈顿商业区的居民并没
有断电.而这一在过去铜缆线需要72小时完成的
工作,在GPS的帮助下仅用了4小时.
除了这次应用之外,这一技术还能应用于检查
中心相位和检查不同电压源的50 Hz或60 Hz的相
位翻转.而这一技术改进后还能应用于高压电缆
的高精度相位测量.
摘译自《GPS World》2004 , August.
44 GNSS World of China/ 2004. 6
1994-2006 China Academic Journal Electronic Publishing House. All rights reserved. http://www.cnki.net
·上一篇:我的QQ:448595152
·下一篇:QQ:243408630(留言)
