基于Windows CE平台的GPS移动设备设计

发布者:TranquilBreeze最新更新时间:2010-11-18 来源: 电子技术 关键字:WindowsCE  GPS  移动设备 手机看文章 扫描二维码
随时随地手机看文章

  0 引言

  GPS即全球定位系统,由美国从上世纪70年代开始研制,历时20年,耗资200亿美元,于1994年全面建成,具有在海、陆、空进行全方位实时三维导航与定位的能力。近年来随着GPS的不断改进,硬、软件的不断完善,应用领域正在不断展开,目前已遍及国民经济各种部门,并开始逐步深入人们的日常生活。如何设计一个带有GPS功能的移动设备,实现对GPS卫星数据的接收和解码,已经是现在CPS应用的热点。

  1 开发平台

  1.1 软件平台

  为适应大多数Windows用户的使用习惯,我们设定移动设备运行环境为嵌入式操作系统Windows CE 5.0(简称WinCE 5.0),开发过程在Windows XP操作系统下进行。开发软件为Visual Studio 2005(简称VS2005),编程语言为C++。VS2005是Windows操作系统下的一套完整的开发工具,用于生成ASP Web应用程序、XML Web services、桌面应用程序和移动应用程序。通过使用这些工具和.NETFramework精简版(.NET Framework的子集),可以在个人数字助理(PDA)、移动电话和其他资源受约束的设备中,创建、生成、调试和部署在.NET Framework精简版上运行的应用程序。

  1.2 硬件平台

  1.2.1 嵌入式开发板

  由于设定移动设备使用的运行环境为WINCE 5.0,过程中需要处理大量的数据,所以对开发板要求较高。目前WinCE 5.0支持的处理器主要有ARM、X86、PowerPC、MIPS等,其中ARM是近年来在嵌入式系统中很有影响力的微处理器架构,在同等处理器主频下,ARM内核的芯片面积最小,功耗最低,价格也最低廉,在性能、技术指标、软件支持工具、内置调试工具和开发资料等方面都有优势。考虑到本系统移动终端的体积、功耗、成本等因素,最后决定选用ARM内核的处理器,开发板为光嵌公司的GEC2440,主要参数如表l所示。

  1.2.2 GPS接收模块

  GPS接收模块负责接收GPS射频信号,将信号下变频和解调,输出标准的串口信号供处理器进行下一步处理。本设计中用到的GPS接收模块为Levave公司的GPS-R36-AT模块,性能参数如表2所示。该接收模块主要包含基带芯片和射频芯片,采用了SIRF III模块,整合片状陶瓷芯片,无需外加天线,接收C/A码卫星信号,输出的信号为NMEA0183协议数据,通过串口与主设备进行通信。

  2 整体设计

  设计主要依照GPS数据信号的流向来进行。GPS数据信号通过串口读入到开发板主程序,然后经过对数据信号进行解码获得当前位置的经纬度信息,再在经纬度数据库中查询获得当前位置的地名,整个过程由触摸屏进行显示,并通过触摸屏完成人机交互。

  2.1 串口驱动

  Microsoft eMbedded Tools封装了Windows API函数,便于Windows CE应用程序的开发。在Windows CE中,所有的设备都被看成是文件。串口通信可以像访问普通文件那样通过API通信函数来实现,系统的虚拟驱动程序负责执行特定的工作。在Windows CE下串行端口被视为用于打开、关闭、读写串行端口的常规可安装的流设备,是串行设备接口的常规I/O驱动程序调用和与通信相关的具体函数的结合。Windows CE的通信函数和其它大多数Windows的通信函数相似,值得注意的是,Windows CE不支持直接对串行端口的寄存器进行编程。

  2.1.1 打开和关闭串口

  CreateFile函数用于打开串行口。m_hDSComm=CreateFile(_T("COM2:")),GENER2IC_READ|GENER IC_WR ITE,0,NULL,OPEN_EXISTIN-G,0,NULL)。注意COM2后面要有一个冒号。第三个参数dwShareMode也必须为O,通信端口不能像文件一样被共享。最后一个参数dwFlagsAnd-Attributes必须为0,因为Windows CE只支持非重叠I/O。这个函数的返回值是已打开的串行端口的句柄或者是INVALLD_HANDLE_VALUE。关闭串口可以调用CloseHandle(m_hDSComm)。

  2.1.2 串口参数设置

  串口设置主要是用DCB构配置端口设置,包括波特率、停止位、数据位长度、校验位、流量控制和超时值等等。首先打开串行端口,用GetCommState函数获得当前打开的串口配置,然后根据需要修改DCB成员,最后用SetCommState函数设置新的串口配置。

  2.1.3 设置缓冲区大小和超时

  对串口来说,必须设置超时值,否则程序可能陷入到一个循环来等待来自串口的字符。这对采用WindowsCE的设备来说,将大大减少设备电池的使用时间,所以超时值是必须配置的。另外一种解决办法就是采用多线程。通常,配置超时值和配置串口类似。首先用GetCommTi-meouts函数获得当前串口的超时值,然后修改COM2MTIMEOUTS成员,最后用SetCommTimeouts函数设定超时值。

  2.1.4 读写串口

  利用ReadFile和WriteFile函数读写串口。需要注意的是Windows CE不支持重叠I/O,所以如果在主线程进行大量读写串口操作时,有可能使整个程序陷入缓慢的串口等待中去,因此一般都采用多线程来进行读写串口操作。

  2.2 GPS数据处理

  GPS数据处理模块的设计方案如图1所示。GPS接收模块通过串口2将定位数据(NMEA0183 Ver2.0)传给开发板,然后应用程序对数据进行处理。在VS2005中,直接利用串口通信方法将定位数据读入,接着进行定位数据的分类,并提取出所需要的信息,同时将这些有用的信息传给主应用程序,主应用程序再将GPS接收模块的控制信息整理成NEMA0183 VER2.0语句。

  2.3 信号接收与处理

  GPS接收到位置信号后,系统将对GPS的定位信息进行分解并提取出有用数据。GPS信号接收和处理的过程是:通过串口2将GPS输出的数据传递给开发板,开发板主程序获得目标当前的位置(经纬度坐标),将接收机获得的GPS数据进行分解,从中得到目标当前的位置和格林威治时间(该时间加上8小时即为我国标准时间),再将当前位置在经纬度数据库查询,获得当前的具体地点名。

  经纬度随着开发板的移动是不断变化的,在控件显示时要设定一个TIMER来更新值,本程序设置的是1s,如果在实际应用中移动速度非常快的话可以把TIMER更新值设得更小。

  2.4 人机界面设计

  系统采用三星TFT显示屏,分辨率为420×272。人机界面基本功能包括串口选择控件、波特率选择控件、经纬度显示框、地点显示框、“搜星”按钮、“地点查询”按钮、文本框等,具体交互界面设计如图2所示。串口和波特率两个控件为串口选择和波特率的选择,其中串口选择控件提供串口l和串口2进行选择;波特率控件提供有三种设置,分别为4800、9600、19200。“搜星”按钮为打开对应串口,开始从GPS接收模块接收数据。“地点查询”按钮用来显示当地的实际地点名,当搜到星后,按这个按钮,通过查询经纬度数据库,就可以查到对应地名。最下面的文本框显示原始的数据流。

  3 操作系统移植

  WinCE 5.0操作系统的移植主要是基于硬件平台进行BSP开发。BSP是基于WinCE 5.0平台系统的主要部分,它主要由一些源文件和二进制文件组成,又称主板支持软件包,它是一个主要由包含启动程序(bootloader)、OEM适配层程序(OAL)相关硬件设备的驱动程序的软件包,另外还可以把上层的应用也放到BSP中。在BSP内部,通过OAL链接到系统核心,而驱动程序和系统配置文件是与OAL层相互关联来完成驱动设备和配置系统的功能。在BSP外部,我们可以看到一个建立在硬件平台上的主板支持包。在开发过程中可以利用开发板运营商提供的BSP包进行操作系统的定制,定制完成后固化到Nandflash中。

  4 测试

  因为开发板的串口2直接与GPS接收模块的串口相连,所以串口设置选择串口2。波特率应与GPS接收模块匹配,设置为4800。GPS模块为上电即启动,并且不能关闭,所以点击“搜星”按钮即可接收数据。启动“搜星”按钮后1min左右,就能显示正确的经纬度。点击“地点查询”按钮,能正确显示地点信息。最下面的文本框可以显示原始的数据流。测试时实拍的照片如图2所示。

  5 总结

  文章以VS2005为软件平台,利用基于ARM处理器的WinCE 5.0嵌入式开发平台和GPS接收模块,通过合理使用串口通信,实现了GPS数据信号的接收与解码,并利用触摸屏进行显示,已基本具备GPS移动设备的雏形。

关键字:WindowsCE  GPS  移动设备 引用地址:基于Windows CE平台的GPS移动设备设计

上一篇:MeeGo进度报告:A+ 还是 D-
下一篇:一种基于Java平台的可编程嵌入式系统设计

推荐阅读最新更新时间:2024-05-02 21:12

Altair获MIPS多线程IP授权 开发LTE和移动设备
为数字消费、家庭网络、无线、通讯和商业应用提供业界标准处理器架构与内核的领导厂商美普思科技公司(MIPS Technologies, Inc)宣布,全球领先的超低功耗、小尺寸和高性能 4G LTE 芯片组供应商 Altair Semiconductor 公司已获得 MIPS 科技的多线程可合成处理器 IP 授权,用来开发移动宽带基带和调制解调器应用的下一代移动设备芯片组。Altair 是 MIPS 的长期授权客户,在其整个 LTE 芯片组产品线中均采用 MIPSTM 架构。 Altair Semiconductor 的联合创始人暨营销和业务开发副总裁 Eran Eshed 表示:“我们非常高兴能与 MIPS 科技紧密合作
[网络通信]
网络信号升级 美国GPS导航系统信号将减弱
GPS导航系统的信号本身很容易受到大型物体的遮蔽,比如在峡谷中行车,GPS信号就会出现不佳的情况,但是最近美国空军指出,LTE信号塔所发布的信号会使得附近的GPS信号更弱,而GPS信号很明显受到了LTE信号塔的干扰。 LTE是3G与4G技术之间的一个过渡,是3.9G的全球标准,它改进并增强了3G的空中接入技术,常常被人误读为4G信号。为了防止以后网络信号升级所对GPS信号带来的影响,目前他们正在想办法对信号进行过滤,希望两者可以互不影响。
[网络通信]
SwRI开发合法系统 测试自动驾驶汽车GPS欺骗漏洞
据外媒报道,美国西南研究院(SwRI)开发了一套网络安全系统,用于测试自动驾驶汽车和其他使用GPS接收器进行定位、导航和计时等技术的漏洞。 GPS欺骗是一种恶意攻击,它通过发送错误的信号来欺骗GPS接收器,而GPS操纵会修改真实的GPS信号。环绕地球运行的GPS卫星能够精确定位嵌入在智能手机、地面车辆和飞机等各种设备中的GPS接收器的物理位置。SwRI设计的新工具符合美国联邦法规。过去在移动环境中测试GPS漏洞非常困难,因为联邦法律禁止未经事先授权就在空中重新传输GPS信号。 SwRI开发的基于嵌入式系统和物联网(IoT)技术的汽车网络安全解决方案,其特色是利用了网络和传感器。由于传播并接收导航和定位信号,联网和自动驾驶汽车很容易
[机器人]
北斗三号首发成功,拟2020年完成35颗卫星组网
  11月6日报道,昨晚19时45分,在西昌卫星发射中心,长征三号乙运载火箭以“一箭双星”方式发射 北斗 三号第一和第二颗组网卫星。这两颗卫星开启了 北斗 卫星导航系统全球组网的征程。未来三年,还将迎来新一轮 北斗 组网卫星高密度发射。根据计划,到2020年,中国将全面完成35颗北斗三号卫星的组网,构建媲美并在某些指标上超越 GPS 的北斗全球系统,为全世界提供服务。下面就随安防电子小编一起来了解一下相关内容吧。   自从2000年发射第一颗北斗一号试验卫星以来,昨晚发射的卫星已经是第24和25颗北斗导航卫星。与北斗二号系列卫星相比,北斗三号在载荷、星间链路、激光通信等多项技术上实现了提升。例如,北斗三号卫星配置了新一代原子
[安防电子]
SiGe推出世界最小的双天线输入GPS接收IC
SiGe 半导体公司 现已推出具有双天线输入功能的 GPS 无线电接收器,型号为 SE4150L ,是专为下一代 GPS 系统而开发的。 SE4150L 经过特别设计,不但能解决与嵌入式 GPS 应用相关的三大主要难题:小尺寸,低功耗和低价格,而且还提高了性能水平。 SE4150L 采用低侧高 4x4 mm 封装,具有多位输出,可以提高 GPS 解决方案的灵敏度和抗干扰能力。这款全新的 GPS 接收器提供了业界领先的性能,包括 1.0 dB 的系统噪音系数,以及优于 0 dBm 的第三阶输入截取点性能 (input
[手机便携]
SiGe推出世界最小的双天线输入<font color='red'>GPS</font>接收IC
配合移动设备不同充电应用的全面保护方案
采用电池供电的移动设备如手机、数码相机、手持全球卫星定位(GPS)系统等,在日常的充电/供电应用中,它们的电池都面临着正向/负向过压、过流等众多风险,故需要安全且小巧的电池充电管理,以尽可能的使电池的可用时间较长、可用电压较高、充电时间较短及电池生命周期时间较长等。 我们把普通墙式适配器或USB充电适配器到移动设备电池的通道称为直接充电通道,而把移动设备电池到外部附件(如调频收发器、负载扬声器和闪光模块)的通道称为反向供电/充电通道(参见图1移动设备的直接充电通道和反向供电/充电通道示意图)。 安森美半导体身为全球领先的高能效、高性能半导体方案供应商,针对移动设备不同的充电应用提供结合不同特性的过压保护方案, 包括符合YD/T
[嵌入式]
2G至3.5G蜂窝移动设备的高效RF功率管理
大家是否注意到人们对移动设备,尤其是对智能手机的着迷程度到了何种地步?人们在用智能手机进行网络冲浪、查收和编写电子邮件、玩网络游戏或者更新社交网络等活动。所有这些活动,外加拨打语音电话,都要消耗电池的能量,从功率放大器(PA)到显示器和内核芯片组,它们要消耗大量的能量。最终,锂离子电池的体积也只能适当增加,以保证智能手机不至于过于笨重。 但是却有几种方式可以让用户感到满意,避免经常为智能手机充电,或者在不适当时间电池电能耗尽的现象出现。智能手机中功率放大器消耗的功率大约占总体30%,在网络覆盖情况较差的区域,这个比率会高达70%。一般要求智能手机和手机具有兼容前几代蜂窝网络协议的能力,现今大多数手机均具有所谓的HEDGE
[手机便携]
2G至3.5G蜂窝<font color='red'>移动设备</font>的高效RF功率管理
愈行愈近的IC产品 ——IIC China 2007
电子工程世界网报道 2007年3月8日,为期两天的第十二届国际集成电路展览会(IIC China2007)在京拉开帷幕,这是一次高品质的专业盛会,多家技术领先公司在此集中展示了最新产品和最新应用方案,IC产品离我们的生活愈行愈近。   在本次展会上,近二百家国内外优秀电子元器件厂家、分销商云集国贸中心,展出了多品种、应用于不同领域的IC技术、电子产品和系统解决方案。来自全国各地的电子从业人员与参展厂商进行了充分交流,迅速找到了合作伙伴,达成合作。   通过这个高科技产品展示平台,使国内的电子企业全面了解到了目前国际高新技术发展的趋势、方向和特点,并且融会贯通,更加脚踏实地的发展本土电子产品,打造自
[焦点新闻]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
更多每日新闻
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved