ImageVerifierCode 换一换
格式:DOCX , 页数:29 ,大小:2.50MB ,
资源ID:10468023      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/10468023.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于wince的GPS系统设计.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于wince的GPS系统设计.docx

1、基于wince的GPS系统设计基于wince的GPS系统设计摘要:Windows CE操作系统是大部分手持移动设备的操作系统,其风格类似PC机,本系统是以wince系统为核心的嵌入式设备,在ARM920T开发平台上嵌入wince6.0的系统,与GPS模块相连后构成基本的定位系统,本文描述了GPS的通信协议和数据格式,GPS数据的接收和处理;剖析了整个系统的硬件结构和组成,为wince系统的移植提供了硬件基础;详细的阐述了整个应用程序的开发过程以及系统的测试,系统的主要功能是把经度、纬度、时间、日期以及所有的未解析的GPS数据显示在LCD屏幕上,如此,整个系统便能实现GPS定位.关键字:嵌入式系

2、统,wince,GPS模块,ARM开发平台 Design of GPS system based on WinCEAbstract: the Windows CE operating system is the operating system most handheld mobile devices, its style is similar to the PC machine, this system is embedded equipment based on WinCE system, the embedded wince6.0 development platform in the

3、ARM920T, which constitute the basic positioning system connected with the GPS module, this paper describes the GPS communication protocol and data format, receiving and processing of GPS data; analysis of the hardware structure and composition of the system, which provides a hardware foundation for

4、the transplant of WinCE system; elaborates the development process of application and test of the system, the main function of the system is the longitude, latitude, time, date and GPS data all unresolved displayed on the LCD screen, so, the whole system can realize localization of GPS .Keywords:Emb

5、edded system,windows CE,GPS module,ARM development platform.第1章 引言1.1 课题背景 全球定位系统(Global Positioning System - GPS)是美国从本世纪70年代开始研制,历时20年,耗资200亿美元,于1994年全面建成,具有在海、陆、空进行全方位实时三维导航与定位能力的新一代卫星导航与定位系统。随着全球定位系统的不断改进,硬、软件的不断完善,应用领域正在不断地开拓,目前已遍及国民经济各种部门,并开始逐步深入人们的日常生活。因其在众多领域的应用,使得研究其应用方法是很有必要的,并且随着科学技术的发展,产品

6、的发展趋势也越来越倾向于小巧,便携,节能,功能齐全的方向发展着.就这一发展趋势,本文设计了一个带有操作系统的GPS显示系统的嵌入式设备.下面就相关知识做一个简单的介绍.1.1.1 嵌入式系统定义 国内对嵌入式系统的一般定义是:以应用为中心,一计算机技术为基础,软硬件可剪切,从而能够适应实际应用中对功能,可靠性,成本,体积,功耗等眼科的要求的专业计算机系统.1.1.2 嵌入式系统的组成 嵌入式系统通常是由嵌入式处理器,外围设备,嵌入式操作系统和应用软件等几大部分组成.1. 嵌入式处理器嵌入式处理器是嵌入式系统的核心部件.嵌入式处理器与通用处理器的最大不同点在于嵌入式处理器大多工作在为特定的用户群

7、设计的系统中.它通常把通用计算机中许多部件集成在芯片内部,从而有利于嵌入式系统设计趋于小型化,并具有高效率,高可靠性等特征.2. 外设备 外围设备是指在一个嵌入式系统中,嵌入式处理器以外的完成存储,通信,调试,显示等辅助功能的其他部件.根据外围设备的功能可分为以下3类:1)存储器,2)接口,3)人机交互3. 嵌入式操作系统 在大型嵌入式应用系统中,为了使嵌入式开发更兼方便,快捷,需要具备一种稳定,安全的软件模块集合,用来管理存储器分配,中断处理,任务间通信和定时器响应,以及提供多任务处理等,这样的软件模块集合就是嵌入式操作系统.嵌入式操作系统的引入大大扩展了嵌入式系统的功能,方便了应用软件的设

8、计,但同时也占用了嵌入式系统的宝贵资源.一般在比较大型或多任务的应用场合,才考虑使用嵌入式操作系统.4. 应用软件 嵌入式系统的应用软件是针对特定的实际专业领域的,基于相应的嵌入式硬件平台,并能完成用户预期的任务的计算机软件.用户的任务可能有时间和精度的要求,因此,有些应用软件需要嵌操作系统的支持.1.1.3 嵌入式系统的特点嵌入式系统是应用于特定环境下,面对专业领域的应用系统,它具有以下特点:1) 功耗低2) 体积小3) 集成度高4) 成本低1.2 课题意义 通过以上介绍,在WINDOWS CE操作系统上开发显示从GPS模块上下载的位置信息,这可以为以后开发诸如车载导航系统,防盗定位系统等产

9、品提供有力的参考.从这个设计中,我们不仅能够了解和掌握有关GPS方面的有关信息,还能掌握在WINDOWS CE系统上,如何编写程序,以及深刻理解操作系统的基本原理.在通信领域中,如何通过嵌入式系统在与各种器件通信. 第二章 GPS硬件系统方案设计 根据题目的要求,确定一下方案:采用又由S3C2440做主控芯片的TQ2440开发板做主要载体,再配上GPS模块构成整体的硬件结构,主机搭载wince6.0操作系统,已达到我们所需要的软硬件要求,这种方案能实现系统进行定位,可满足对系统的各项要求.2.1 主板芯片的选择 主机的主控芯片市面上流行的主要有基于arm7的s3c2410和基于arm9的s3c

10、2440以及基于arm11以上的ok6410等,由于我们是基于wince系统,arm7主要用于工业控制更多的时候我们只把它当做“高级的单片机”用,对于有操作系统的消费类电子它已不太合适,而arm11主要是是用于跑android系统这样的智能设备,所以说arm9对我们所要实现的设备是完全可以的,基于以上,我们选择以s3c2440作为主板芯片,选取TQ2440开发板作为我们的主板.2.2 GPS搜星选择 方案一 选用usb蓝牙gps,需要适配蓝牙模块,将蓝牙作为串口. 方案二 选用串口gps,TQ2440提供了一个串口,选择其作为gps的接口.这里我们选择串口gps模块.2.3 系统设计方案 本系

11、统由TQ2440开发板和GPS模块构成.2.3.1 硬件系统设计框图图1 硬件系统框图2.3.2 开发平台构成 TQ2440开发板是由s3c2440a作为主控芯片,外加SDRAM 作为内存芯片,以及3.3V供电电路、复位电路、Jtag电路、Nor/Nand falsh启动选择电路、串口电路等构成,以下简单介绍其中部分相关芯片及其电路.主控芯片是S3C2440A芯片,它由128个管脚组成,内部集成了LCD控制器、UART控制器、Jtag控制器、nand 控制器等,下面介绍系统的基本硬件模块.1.、供电电路如下:图2 3.3v电源电路图3 1.25v电源电路3、复位电路如下: 图4 系统复位电路

12、4、Jtag接口电路如下:图5 Jtag接口电路5、开发板带有一个五线异步接口和一个UART扩展接口,其电路如下:图6 开发平台的串口电路6、lcd液晶屏接口电路:图7 LCD液晶接口电路其中跳线J4可以在3.3v与5v间选择液晶屏的供电电压.7、系统时间电路: 系统时钟源直接采用外部晶振,内部PLL电路可以调整系统时钟,使系统运行速度更快.系统时钟电路如下图图8 系统晶振电路 8、usb接口电路 Usb模块集成在s3c2440A芯片中,所以使用S3C2440A时,可以直接利用其中的usb模块。实验板上有个HOST USB1.1接口和一个Device USB1.1接口,USB接口电路如下:图9

13、 usb接口电路以上为开发板基本的一些模块,当然还有一些其他的电路比如说SD卡接口电路、IIC接口电路、网卡接口电路等由于涉及的电路比较多如果一一叙述的话可能会占用比较大的篇幅,所以在本文中就不在嗷述。2.3.3 GPS协议及其模块GPS信息协议: NMEA是全国海洋电子协会(National Marine Electronics Association);国际海上电子协会(National Marine Electronics Association)或(National Marine Electronics Association)获得国际海事电子协会缩写,同时也是数据传输标准工业协会,在

14、这里,实际上应为NMEA 0183。它是一套定义接收机输出的标准信息,有几种不同的格式,每种都是独立相关的ASCII格式,逗点隔开数据流,数据流长度从30-100字符不等,通常以每秒间隔选择输出,最常用的格式为GGA,它包含了定位时间,纬度,经度,高度,定位所用的卫星数,DOP值,差分状态和校正时段等,其他的有速度,跟踪,日期等。NMEA实际上已成为所有的GPS接收机和最通用的数据输出的格式。NMEA 数据如下:$GPGGA,111342.000,3937.3032,N,11611.6046,E,1,05,2.0,45.9,M,-5.7,M,0000*77 $GPRMC,111342.000,

15、A,3958.3032,N,11629.6046,E,15.15,359.95,070306,A*54$GPVTG,359.95,T,M,15.15,N,28.0,K,A*04$GPGGA,111342.000,3937.3090,N,11611.6057,E,1,06,1.2,44.6,M,-5.7,M,0000*72$GPGSA,A,3,14,15,05,22,18,26,2.1,1.2,1.7*3D$GPGSV,3,1,10,18,84,067,23,09,67,067,27,22,49,312,28,15,47,231,30*70$GPGSV,3,2,10,21,32,199,23,1

16、4,25,272,24,05,21,140,32,26,14,070,20*7E$GPGSV,3,3,10,29,07,074,30,07,163,28*7D说明:NMEA0183 格式以“$”开始,主要语句有GPGGA,GPVTG,GPRMC 等1、GPS DOP and Active Satellites(GSA)当前卫星信息$GPGSA,A,3,14,15,05,22,18,26,2.1,1.2,1.7*3D$GPGSA,模式:M = 手动, A = 自动。定位型式1 = 未定位, 2 = 二维定位, 3 = 三维定位。PRN 数字:01 至32 表天空使用中的卫星编号,最多可接收12

17、颗卫星信息。 PDOP 位置精度因子(0.599.9) HDOP 水平精度因子(0.599.9) VDOP 垂直精度因子(0.599.9) Checksum.(检查位).2、GPS Satellites in View(GSV)可见卫星信息$GPGSV, ,?,$GPGSV,3,3,12,25,00,000,00,20,00,000,28,00,000,00,30,-01,000,00*5A GSV 语句的总数 本句GSV 的编号 可见卫星的总数,00 至12。 卫星编号, 01 至32。卫星仰角, 00 至90 度。卫星方位角, 000 至359 度。实际值。讯号噪声比(C/No), 00

18、至99 dB;无表未接收到讯号。Checksum.(检查位).3、Global Positioning System Fix Data(GGA)GPS 定位信息$GPGGA,M,M,*hh UTC 时间,hhmmss(时分秒)格式 纬度ddmm.mmmm(度分)格式(前面的0 也将被传输) 纬度半球N(北半球)或S(南半球) 经度dddmm.mmmm(度分)格式(前面的0 也将被传输) 经度半球E(东经)或W(西经) GPS 状态:0=未定位,1=非差分定位,2=差分定位,6=正在估算 正在使用解算位置的卫星数量(0012)(前面的0 也将被传输) HDOP 水平精度因子(0.599.9) 海

19、拔高度(-9999.999999.9) 地球椭球面相对大地水准面的高度 差分时间(从最近一次接收到差分信号开始的秒数,如果不是差分定位将为空) 差分站ID 号00001023(前面的0 也将被传输,如果不是差分定位将为空)4、Recommended Minimum Specific GPS/TRANSIT Data(RMC)推荐定位信息$GPRMC,*hh UTC 时间,hhmmss(时分秒)格式 定位状态,A=有效定位,V=无效定位 纬度ddmm.mmmm(度分)格式(前面的0 也将被传输) 纬度半球N(北半球)或S(南半球) 经度dddmm.mmmm(度分)格式(前面的0 也将被传输) 经

20、度半球E(东经)或W(西经) 地面速率(000.0999.9 节,前面的0 也将被传输) 地面航向(000.0359.9 度,以真北为参考基准,前面的0 也将被传输) UTC 日期,ddmmyy(日月年)格式 磁偏角(000.0180.0 度,前面的0 也将被传输) 磁偏角方向,E(东)或W(西) 模式指示(仅NMEA0183 3.00 版本输出,A=自主定位,D=差分,E=估算,N=数据无效)5、Track Made Good and Ground Speed(VTG)地面速度信息$GPVTG,T,M,N,K,*hh 以真北为参考基准的地面航向(000359 度,前面的0 也将被传输) 以磁

21、北为参考基准的地面航向(000359 度,前面的0 也将被传输) 地面速率(000.0999.9 节,前面的0 也将被传输) 地面速率(0000.01851.8 公里/小时,前面的0 也将被传输) 模式指示(仅NMEA0183 3.00 版本输出,A=自主定位,D=差分,E=估算,N=数据无效)GPS模块电路:本设计主要用HX-87 manual-GPS ENGINE BOARD模块作为GPS模块.产品介绍:SIRF HX-87 series GPS模块具有高精度,高性能的SIRF STarIII 芯片组解决方案.该模块在同一时间跟踪20个人造卫星,同时提供快速时钟校准和1赫兹程序导航控制及电

22、源管理系统.全球定位系统所需的硬件连接图:图10 GPS模块与串口连接的电路图图10 我们示意了GPS模块与串口的连接电路,由图我们可以看出,除了电源和地之外,只连了两根线一个是RXD,一个是TXD,需要注意的是串口与GPS模块的发送和接收是交叉相连的.第3章 软件系统设计3.1 wince操作系统的装载开始时用uboot启动开发板,然后通过uboot命令一步一步的实现wince镜像的烧写,在这里我们是首先通过nor flash的方式启动开发板。基本的步骤如下:第一步烧写stepldr镜像:在命令列表里选择: 【1】Download u_boot or STEPLDR.nb1 or other

23、 bootloader to Nand Flash.第二步烧写eboot镜像:在命令列表中选择: 【2】Download Eboot(eboot.nb0)to Nand Flash第三步烧写logo镜像:在命令列表中选择: 【b】Download LOGO Picture.bin to Nand Flash第四步 烧写NK镜像: 关闭TQ2440开发板电源选择由nand flash重新启动分别通过:命令b-命令9-命令u完成NK镜像的烧写当然除了上述主要步骤外还需要其他的地方配合比如USB下载软件DNW的配合,在此我们不再敖述,下面我们主要介绍一下应用程序的开发。3.2 应用程序流程图 在本系

24、统设计中,软件系统是我们非常重要的一环,本系统主要由三个部分组成分别是:GPS主窗口处理、串口设置、GPS数据读线程,下面介绍软件系统主要流程思想.3.2.1 GPS主窗口流程 图11是GPS主窗口的消息处理流程,在这个流程里主要是创建了主窗口,需要主窗口处理的消息有三个分别是:打开串口、关闭串口、关闭窗口,其中打开串口和关闭串口这两个按钮时互斥的。3.2.2 串口设置流程 图12 是串口设置的流程,由于我们已经知道了GPS模块的波特率,所以在本系统中我们就是直接给出了串口号、波特率、数据位、停止位、奇偶校验位等参数,也就是不需要我们自己去选择这些参数了,我们在程序中直接就设置了这些参数,当然

25、假如串口打不开程序也会出现错误提示,所以这样设置尽管显得简单直接,但基本的步骤都在,不会出现基本的错误。图11 GPS主窗口消息流程图12 串口设置流程 在我们的串口设置中,我们做了些出错处理,在此我们没有列出来.3.2.3 GPS读线程流程 图13 是GPS读线程的流程图, GPS读线程是串口设置好后才开始启动的,在这个线程中线程函数会一直等待串口字符事件,一有事件发生,线程就会去读取串口数据.图13 GPS读线程流程3.3开发环境及应用程序各个部分源代码3.3.1软件开发环境介绍 Visual Studio 2005是基于.NET2.0框架的。它同时也能开发跨平台应用程序,如开发使用win

26、ce的程序等。总体来说是一个非常庞大的软件,甚至包含代码测试功能。这个版本的Visual Studio 包含有众多版本,分别面向不同的开发角色。同时还永久提供免费的Visual Studio Express 版本。.Microsoft Windows CE .NET 是Windows CE 3.0 的后续产品,它不仅是一个功能强劲的实时嵌入式操作系统,而且提供了众多强大工具,允许用户利用它快速开发出下一代的智能化小体积连接设备。借助于完善的操作系统功能和开发工具,Windows CE .NET 为开发人员提供了构建、调试和部署基于Windows CE.NET 的定制设备所需的一切特性。平台开发

27、工具Platform Builder 是一个完全集成的开发环境(IDE),并且包括一个软件开发工具包(SDK)导出工具。Windows CE .NET 支持Microsoft eMbedded Visual C+和Microsoft Visual Studio .NET,为面向Microsoft .NET Compact Framework(Microsoft .NET Framework 的一个子集)的Web 服务和应用程序开发提供了一个完整的开发环境。利用这些工具,开发人员可以迅速开发出能够在最新硬件上运行各种应用程序的智能化设计。3.3.2源代码开发过程介绍1. 在PC机的Windows

28、中打开vs2005集成开发环境。2. 打开环境后,选择文件,然后选择新建,在项目选项中选择智能设备项目在勾上空项目,在Project Name框中填写本工程的名称:myGPS;再选择当前Win32(WCE ARMV4I),建立工程名为myGPS的工程.图14 新建项目界面建立好工程后,在资源中添加一个设置串口的对话框:图15 串口设置对话框3. 在myGPS工程项目中创建gps.h头文件,主要内容如下:LRESULT CALLBACK MainWndProc (HWND, UINT, WPARAM, LPARAM);/主窗口处理函数BOOL CALLBACK DialogProc( HWND

29、hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam );/串口处理函数DWORD ReadThread(LPVOID lpParameter);/读线程函数LRESULT DoPaintMain (HWND, UINT, WPARAM, LPARAM);/主窗口刷新处理函数LRESULT DoDestroyMain (HWND, UINT, WPARAM, LPARAM);/主窗口销毁处理函数LRESULT DoCreate(HWND, UINT, WPARAM, LPARAM);/主窗口创建处理函数LRESULT DoCommand(HWND,U

30、INT,WPARAM,LPARAM);/主窗口命令处理函数void SetCom(HWND hh);/串口设置函数int findchar(char *s,int len,int i);/在GPS解析函数内用来寻找,的函数int findstr(TCHAR *s,TCHAR *s1);/在GPS数据中寻找字串的函数BOOL GPS_jiexi(TCHAR *buf);/GPS解析函数4. 在工程中新建gps.c文件,在该文件中主要实现头文件声明的各个函数,下面对主要函数进行介绍:int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpCmdLine, int nCmdShow) MSG msg; int rc = 0; / HWND hwndMain; hwndMain = InitInstance (hInstance, lpCmdLine, nCmdShow);

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1