《基于ARM的便携式GPS终端设计毕业论文.doc》由会员分享,可在线阅读,更多相关《基于ARM的便携式GPS终端设计毕业论文.doc(67页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 毕业设计(论文)题目: 基于ARM的便携式GPS终端设计 系 别 信息工程系专业名称 自动化班级学号 088202225学生姓名 指导教师 二O一二 年 六 月 毕业设计(论文)任务书I、毕业设计(论文)题目:基于ARM的便携式GPS终端设计II、毕业设计(论文)使用的原始资料(数据)及设计技术要求:1、翻译英文相关资料一篇。2、嵌入式开发板的启动和正常运行3、实现嵌入式开发板对GPS模块数据的读入和显示4、总结III、毕业设计(论文)工作内容及完成时间:1、第1周第4周 查阅资料、翻译英文资料并撰写开题报告;2、第5周第7周 方案论证,元件选择,硬件电路部分设计3、第8周第12周 软件部分
2、设计4、第13周第16周 软硬件运行并调试5、第17周 总结,撰写论文并准备答辩 、主要参考资料:1、(印度)卡莫尔(Kamal R.),嵌入式系统:体系结构、编程设计国外计算机科学经典教材 ,清华大学出版社2005,(05)。2、孟宪元,钱伟康,FPGA嵌入式系统设计,电子工业出版社,2007,(10)。3、(美)诺尔加德(Noergarrd T.)嵌入式系统硬件与软件架构,人民邮电出版社,2008,(02)。4、杨宗德,嵌入式ARM系统原理与实例开发,北京大学出版社,2007,(09)。5、Linux与嵌入式系统(第2版),清华大学出版社2006,(03)。6、(美)博韦,西斯特,深入理解
3、LINUX内核(第三版),中国电力出版社,2007,(09)。7、(美)科波特(Corbet J.),Linux设备驱动程序(第三版),中国电力出版社2006,(01)。8、何宗键, Windows CE嵌入式系统,北京航天航空大学出版社2006(09)9、Pino N A,1uccio F D。 Source complexity of the 6 April 2009 L Aquila (central Italy) earthquake and its strongesy aftershock revealed by elementary seismological analysis 。
4、Geophys。Res。Lett, 2009, 36 :L23305 。10、周立功,ARM嵌入式系统基础教程,北京航天航空大学出版社,2008,(09)。11、任哲,嵌入式实时操作系统COS-原理及应用,北京航天航空大学出版社,200512、周坤芳,周湘蓉,李德武。 对GPS/INS制导巡航导弹GPS干扰方法的探讨J。 航空电子技术, 2005,(03)。13、邹振宁,杨志强,周芸。对GPS系统实施电子干扰可行性分析J。光电技术应用,2003,(04)。 信息工程 系 自动化 专业类 0882022 班学生(签名): 填写日期: 2012 年 4 月 3 日指导教师(签名): 助理指导教师(
5、并指出所负责的部分): 系主任(签名):附注:任务书应该附在已完成的毕业设计说明书首页。学士学位论文原创性声明本人声明,所呈交的论文是本人在导师的指导下独立完成的研究成果。除了文中特别加以标注引用的内容外,本论文不包含法律意义上已属于他人的任何形式的研究成果,也不包含本人已用于其他学位申请的论文或成果。对本文的研究作出重要贡献的个人和集体,均已在文中以明确方式表明。本人完全意识到本声明的法律后果由本人承担。作者签名: 日期:2012年5月27日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅
6、和借阅。本人授权南昌航空大学科技学院可以将本论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 作者签名: 日期:导师签名: 日期: 南昌航空大学科技学院2012届学士学位论文 基于ARM的便携式GPS终端设计 摘要:(小4号楷体, 两端对齐,每行固定行间距22磅) GPS(全球定位系统)是一种全方位的实时定位技术。随着GPS技术的发展,基于PC机的导航定位系统由于其价格及功耗较高已不能满足社会发展的需要,脱离PC端的嵌入式导航定位技术迅速发展起来。如今以ARM处理器作为主CPU的嵌入式硬件平台,几乎已经成为信息产业的硬件标准。一方面,它具有体
7、积小、性能强、功耗低、可靠性高等特点;另一方面,它为高速、稳定地运行嵌入式操作系统提供了硬件基础。因此由基于ARM处理器的硬件平台和嵌入式操作系统构成的嵌入式系统已经被广泛地应用于军事国防、消费电子、网络通信、工业控制等各种领域。本文就对基于ARM的GPS定位系统的开发进行了研究与实现。本文主要对以下三个方面的技术进行了研究:一是对GPS技术进行了介绍,介绍了GPS技术的发展、原理、特点、系统组成和定位方式;二是搭建基于ARM的硬件平台;三是对Windows CE操作系统的开发进行了详细的描述。本系统由GPS数据采集并显示、地图显示两大部分组成,模拟GPS导航的过程。通过GPS模块、arm9硬
8、件环境、嵌入式LINUX操作系统、TFT触摸屏等模块来完成整个体系的运作,使其实时采集GPS数据,然后将GPS数据对应的地图显示出来,再利用串口将数据送入PC机数据库中实现查询等一系列功能。本设计的特点在于界面友好、用户易操作、功耗低、便于长时间户外导航。 关键词: GPS;ARM;Windows CE操作系;LINUX;嵌入式操作系统 指导老师签字:ARM-basedportable GPSterminaldesignStudent Name: Sheng Xia Class: 0882022 Supervisor: Wu JianAbstract:GPS (Global Positioni
9、ng System) is an Omni directional realtime navigation system. With the development of GPS skills the high price and power consumption of PC. Positioning system can not meet the needs of me social development;hence the embedded positioning technology separated from PC port is developing rapidly. Nowa
10、days, the embedded hardware platform with ARM processor as main CPU has almost become the hardware criterion for the information industry. Therefore, embedded system composed of ARM Processor- Based hardware platform and embedded operation system has been widely used in the fields of national defens
11、e, consuming electronics, internet communication , industrial control and so on. This thesis is to study and realize the development of GPS positioning based on ARM.This thesis is to study the following three technologies:Firstly,the introduction to GPS teleology,which explains the development,princ
12、iples,characteristics,system components and positioning means of GPS technology. Secondly,the building of the hardware platform is based on ARM. Thirdly,detailed description to the development of Windows CE operation system.This system consists of GPS data collection, map display composed of two par
13、ts, simulated GPS navigation process. Through the GPS module, arm9 hardware environment, embedded LINUX operating system, TFT touch screen and other modules to complete the operation of the entire system to collect real-time GPS data, GPS data and then display the corresponding map, re-use the data
14、into the PC serial port machine in the database queries, and so to achieve a series of functions. This design feature is user-friendly, user easy to operate, low power consumption, easy to navigate a long time outdoors.Keywords: GPS; ARM; Windows CE operation system; LINUX; embedded operating system
15、 Signature of Supervisor: 目 录毕业设计(论文)1毕业设计(论文)任务书1学士学位论文原创性声明3摘要:0Abstract:11 引言52本文的研究背景62.1 嵌入式技术62.2.GPS技术73 系统总体设计83.1 系统设计要求83.2部分模块设计方案83.2.1 控制模块设计方案83.2.2 操作系统选择方案93.2.3 GPS模块选择方案93.2.4显示模块设计方案93.2.5地图文件存放方案93.3总体方案确定94系统的硬件设计与实现114.1 主控芯片电路114.2 flash芯片电路134.2.1 nand flash芯片电路134.2.2 nor fl
16、ash芯片电路134.3 串口电路144.4 usb端口电路154.5 系统总线及lcd接口电路164.6 电源电路165 系统的软件设计185.1 软件数据设计185.2软件系统设计185.2.1导航功能模块设计195.2.2浏览功能模块设计195.3软件界面设计195.4嵌入式软件设计195.4.1软件的导航功能由主控线程控制实现.其基本实现流程如下(可见图4)205.4.2 GPS数据提取215.4.3显示与查询236 系统的软件设计246.1 程序整体结构框图246.2 Maintab类256.3 mainwidgt类256.4 config类流程图266.5 map类276.6 GP
17、S_diver类276.7 staSNR类296.8 debugPDF类296.9 Makefile文件306.10 地图文件(mapinfo.txt 文件)307 调试与测试结果展示317.1 操作系统烧写测试317.2 卫星接收测试327.3 地图显示测试347.4 GPS信号检测测试377.5 功耗测试377.6 其他测试377.7 测试结果分析388 总结39参考文献41致谢42附录A43附录B44基于ARM的便携式GPS终端设计1 引言 随着计算机和通信技术的快速发展,嵌入式系统己经广泛渗透到人们的工作、生活中,从家用电器、手持通讯设备、信息终端、仪器仪表到汽车、航天航空、军事装备、
18、制造工业、过程控制等。尤其是随着嵌入式系统与Internet的日益结合,使得嵌入式应用项目越来越多样化,嵌入式电子产品的功能也日益强大。GPS 是英文Global Positioning System(全球定位系统)的简称,而其中文简称为“球位系”。GPS是20世纪70年代由美国陆海空三军联合研制的新一代空间卫星导航定位系统 。其主要目的是为陆、海、空三大领域提供实时、 全天候和全球性的导航服务,并用于情报收集、核爆监测和应急通讯等一些军事目的。随着人民生活水平的法杖,GPS技术被越来越多的应用在个人PDA、个人车载终端、手机等个人设备上。人们通过手持GPS,能准确知道自己所在的位置,从实现到
19、导航、确定旅游路线、获取地理信息等功能。本文介绍的GPS导航系统,以ARM作为主控芯片,配以GPS、TFT触摸屏、嵌入式LINUX操作系统,构建了一个集GPS信息显示、地图显示、语音导航为一体的完整系统。本系统在一定程度上推动了个人手持GPS导航设备研究的发展。2本文的研究背景2.1 嵌入式技术随着计算机和通信技术的快速发展,嵌入式系统己经广泛渗透到人们的工作、生活中,从家用电器、手持通讯设备、信息终端、仪器仪表到汽车、航天航空、军事装备、制造工业、过程控制等。尤其是随着嵌入式系统与Internet的日益结合,使得嵌入式应用项目越来越多样化,嵌入式电子产品的功能也日益强大12。嵌入式微处理器具
20、有体积小、重量轻、成本低、可靠性高的优点,是嵌入式系统的核心。而删处理器具有高性能低功耗、低成本等显著优点,已成为高性能、低功耗嵌入式微处理器的代名词,是目前32位、64位嵌入式处理器中应用最为广泛的一个系列。而英国先进RISC机器公司 (Advanced SC Machines) 作为 fabless、chipless这一生产模式最为成功的典范,既不生产芯片,也不销售芯片,而是设计出高效的P内核,授权给各半导体公司使用;半导体公司在删技术的基础上,根据自己公司的产品定位,添加自己的设计并推出芯片产品;最后由OEM客户采用这些芯片来构建基于ARM技术的最终应用系统产品。经过10多年的发展,AR
21、M公司己是业界领先的碑供应商。3ARM微处理器得到了众多半导体厂家和整机厂商的大力支持,全球已有10多家公司在采用删技术,20家最大的半导体厂商中有19家是ARM的用户,包括TI、Philips和Intel等公司。优良的性能和准确的市场定位极大地丰富了A蹦资源,加速了基于删核的、面向各种应用系统芯片的开发应用,使得删获得了更广泛的应用,确立了ARM技术的市场领先地位。ARM在高性能嵌入式应用领域获得了巨大的成功,己在32位嵌入式应用中稳居世界第一。在2002年,基于ARM核的芯片占据了整个32、64位嵌入式微处理器市场的79,5,全世界已使用了20多亿个ARM核。如今,ARM公司已经成为业界的
22、龙头老大,“每个人口袋中都装着ARM”是毫不夸张的,因为几乎所有的手机、移动设备、PDA都是用基于ARM核的系统芯片开发的。嵌入式操作系统是支持嵌入式系统工作的操作系统软件,一般用于比较复杂的嵌入式系统软件开发中。4嵌入式操作系统一般具有实时特点,是嵌入式系统的灵魂,它的出现大大提高了嵌入式系统开发的效率,减少了系统开发的总工作量,而且提高了嵌入式应用软件的可移植性。目前常见的嵌入式操作系统有Linux、Vxworks、windowsCE、Palm OS等。其中WindowsCE.net是微软推出的一款面向嵌入式应用的操作系统,它继承了windows家族优秀的图形用户界面,是一款多任务、模块化
23、、实时性能好、通信能力强大且支持多种CPU的操作系统。WindowsCE.net是微软专门为信息设备、移动应用、消费类电子产品等领域设计开发的操作系统产品,己开始广泛应用于数码相机、智能手机、PDA、工业控制等嵌入式领域。2.2.GPS技术自从1978年2月22日第一颗GPS试验卫星进入轨道以来,27年间GPS已经显示了它巨大的社会、军事作用与经济、社会效益。5GPS卫星发射的导航、定位信号,作为一种时空信息资源,可在全球范围内向无数用户提供位置、速度和时间信息。GPS是一个全球性、全天候、全天时、高精度的导航定位和时间传递系统,空间部分由24颗卫星组成,主要是用于军用,现在己经渐渐转变为军民
24、两用系统。随着GPS向民用开放,它所蕴藏的巨大商机也被发掘出来。GPS不仅用于导弹、飞船的导航定位,更是广泛用于飞机、汽车、船舶的导航定位,公安、银行、医疗、消防等用它建立监控、报警、救援系统,企业用它建立现代物流管理系统,农业、林业、环保、资源调查、物理勘探、电信等都离不开导航定位,特别是随着卫星导航接收机的集成微型化,出现各种融通信、计算机、GPS于一体的个人信息终端,使卫星导航技术从专业应用走向大众应用,成为继通信、互联网之后的IT第二个新的增长点。随着嵌入式系统的高度发展和GPS应用的逐渐广泛,尤其是我国北斗导航系统的使用,现在车载导航系统和手持导航设备的开发已经成为嵌入式系统发展的一
25、个热门方面。GPS主要功能有定位、测量及授时等,而动态(即瞬间)定位是GPS民用的主要功能,GPS车载导航是民用最广泛的项目之一。GPS车载导航系统包括:GPS接收机、控制系统、软件系统及显示器等几部分。目前,车载导航系统在美国、日本已经商品化,在我国也早已展开了很多的研究和设计。中国是个GPS应用大国,车载导航监控系统的研制具有广泛的实用价值和市场前景,但是从系统的技术水平和产品的质量和成熟程度来说,我们还处在往上发展时期。目前,城市建设发展速度越来越快,道路变得也越来越复杂,在这种情况下,随着汽车的日益普及,找到一种方式,使人们能够从容的面对错综复杂的交通网,己经迫在眉睫。利用GPS进行车
26、辆定位导航是个不错的选择。而传统的基于PC构架的定位系统显然已无法适应市场的需求,因此,研究和开发基于嵌入式系统的GPS定位系统具有现实意义。623 系统总体设计3.1 系统设计要求 个人手持设备要求界面美观、功耗低、易于操作。系统应有彩色触摸屏;低功耗、高速度的处理芯片;带有嵌入式操作系统;GPS信息接收模块;sd卡用以存放地图;模块框图分别如图1所示:Gps模块Sd卡(存放地图)TFT触摸屏S3c2440Nor flash Nand flash电 源串口(调试及下载)3.2部分模块设计方案3.2.1 控制模块设计方案方案一:采用凌阳公司的16位单片机,它是16位控制器,具有体积小、驱动能力
27、高、集成度高、易扩展、可靠性高、功耗低、结构简单、中断处理能力强等特点。用于语音处理和识别等领域。满足系统GPS模块和语音导航功能的需要。由于本系统需要彩色人机交互界面,对处理速度要求较高,故不采用。方案二:采用samsung公司的s3c2440。S3c2440采用ARM920t内核,实现了MMU、ARBA、BUS和Harvard高速缓冲体系结构。是一块高性能、低功耗的嵌入式芯片。可植入操作系统。在个人PDA领域应用及广。植入操作系统后,在用户GUI编程方面具有很大优势。内置AD/DA,便于扩展语音模块。故选用此芯片为主控芯片。3.2.2 操作系统选择方案Linux操作系统广泛应用在嵌入式设备
28、中,其源代码开放、免费;内核性能高效、多任务、可制定;完善的图形管理、文件管理机制;良好的开发环境、强大的工具集。可移植QT开发环境,可实现跨平台的编译,代码重用率高。3.2.3 GPS模块选择方案方案一:采用串口接口GPS模块。优点:便于驱动,价格便宜。缺点:嵌入式linux的调试需要用到串口,若GPS模块占用了串口会造成调试不便。故不采用方案二:采用usb接口GPS模块。优点:便于携带、连接开发板。缺点:驱动相对较难、价格相对较贵。为了便于调试和携带,采用usb接口GPS模块。3.2.4显示模块设计方案方案一:采用LCD显示。液晶显示屏(LCD)具有轻薄短小,低耗电量。但不能实现触摸功能,
29、故部采用。方案二:采用TFT显示。TFT屏幕带有四线式电阻触摸膜,能实现触摸功能、便于用户操作,故采用。3.2.5地图文件存放方案方案一:采用s3c2440核心板内置nand flash 存放。Nand flash 读取速度快。但容量较小,只有128M,不适合存放大量地图数据,故不采用。方案二:采用外置sd卡。Sd卡读取速度相对较慢,且会增加成本。但能存放大量数据(),地图更新升级也很方便。故采用。3.3总体方案确定1) 控制芯片: 采用s3c2440 arm9 处理器2) 液晶显示模块: 采用NEC TFT 3.5 寸屏幕3) GPS模块: 采用三星公司的GPS-USBII模块4) nand
30、 flash: 采用 K9F1208;5) nor flash: 采用 AM29LV160DB5) 音频处理芯片: UDA1341TS;6) SD卡 模块: 采用金士顿公司的 4GB SD卡;7) 电源模块: 采用两个8V可充电锂电池;8) 操作系统: 采用嵌入式linux操作系统4系统的硬件设计与实现系统硬件采用友善之臂的s3c2440 mini2440开发板。Mini2440 体积小,便于携带;接口丰富,易于扩展;功耗低,便于长时间户外导航。Mini2440硬件特性如下图:图2 主控芯片电路Fig.2 Master-chip circuitry4.1 主控芯片电路主控芯片为s3c2440的
31、6层核心板,该核心板性能稳定、工艺精良。图4.1 主控芯片电路Fig.4.1 Circuit of ultrasonic transmitting and receiving4.2 flash芯片电路4.2.1 nand flash芯片电路Nand flash 是操作系统的程序存储区,该芯片掉电不丢失数据、寿命长,可反复擦写。芯片容量128M。适合存放高密度数据结构图4.2.1 主控芯片电路Fig.4.2.1 Circuit of ultrasonic transmitting and receiving4.2.2 nor flash芯片电路Nor flash是系统 BIOS 存储区。该芯片掉
32、电不丢失数据、寿命长,可反复擦写。芯片容量8M。适合高速度、低数据密度的数据结构。 图4.2.2 主控芯片电路 Fig.4.2.2 nor flash chip circuitry4.3 串口电路 采用max3232电平转换芯片与计算机通信图4.3 串口电路Fig.4.3 Serial circuit4.4 usb端口电路采用usb2.0协议,usb接口用以连接GPS模块图4.4 usb端口电路Fig.4.4 Driving circuit4.5 系统总线及lcd接口电路图4.5系统总线及lcd接口电路Fig.4.5 Driving circuit4.6 电源电路系统输入电压为DC5VC,通过
33、LM1117-1.8、LM1117-33、MAX8869EU18芯片转换成系统需要的三种电压:1.8V、3.3V、1.25V图4.6 电源电路Fig.4.6 Power circuit5 系统的软件设计5.1 软件数据设计导航软件中的数据主要是导航地图的空间数据,主要由与导航需求相关的一些信息组成,包括道路网几何形状、道路等级、道路特征、交规限制、地理政治边界、感兴趣的点、路标和服务设施等。这些数据主要分为两大类:道路网数据和非道路网数据。道路网数据包括基本的道路网的地理数据(如道路的地理位置信息)以及道路上与车辆行驶相关的数据(如道路的交规信息、收费信息、和限速的信息)。道路网数据的主要特征
34、是有较强的拓扑关系。非道路网数据主要包括能反映区域的基本地理面貌的地物信息(如河流.湖泊.边界等)以及与出行信息相关的单位信息(如学校、政府机关、医院等)。整个导航数据的获取和录入可以通过转换通用的地图为矢量图,并且以点代替具体的路面实况。5.2软件系统设计导航软件是以导航数据库为数据基础的。针对导航数据库的操作行为.从功能上将导航软件分为具有导航功能的部分和具有浏览功能的部分。导航功能部分是在动态行进过程中进行导航规划服务的,可分为导航定位、地图匹配、路径规划和路径引导等模块。主要通过导航界面与用户实现交互、浏览功能主要是在静态过程中对导航的地理信息提供浏览查询服务的通过浏览界面与用户实现交
35、互。软件系统结构如图2所示。图5.2软件系统框图Fig.5.2 Softwaresystem block diagram5.2.1导航功能模块设计 该方面的设计中主要包括以下4个模块的设计: (1)导航定位模块实时地从通信端口读取数据.然后进行分析处理,得到可以进行地图匹配的经、纬度数据并将其传给地图匹配模块。 (2)地图匹配模块根据导航定位模块输入的经纬度在导航数据库中进行匹配。 (3)路径规划模块主要是根据用户指定的出发地和目的地在导航数据库中的道路网络中规划出一条最佳路径。 (4)导航引导模块将地图匹配的结果和规划好的路径结合导航地图数据库的数据以地图的方式显示出来。这样就可以直观、无误
36、地引导用户行进。5.2.2浏览功能模块设计 该方面的设计中主要包括以下2个模块的设计: (1)地图浏览模块主要是在浏览界面中实现对地图的缩放、平移等基本浏览操作。 (2)地图查询模块主要是根据用户的要求在导航地图数据库中进行查询操作并通过浏览界面显示出来。5.3软件界面设计如前所述,从大的功能上导航软件分为具有浏览功能的部分和具有导航功能的部分。因此在界面方面也设计了两种不同的界面:浏览界面和导航界面。浏览界面主要为用户在查找浏览相关地理信息过程中提供交互服务。导航界面主要将当前的位置在导航地图中显示出来并在实时定位过程中为用户提供关于导航服务方面的一些交互提示。要求浏览界面和导航界面可以实时
37、地进行切换这样可以方便地为用户提供所有的功能。5.4嵌入式软件设计该嵌入式系统采用uC/OSII操作系统,由于MCU的处理功能有限,所以在具体的软件实现过程中采用多线程技术,如图3所示。图5.3 线程图Fig.5.3 Threaddiagram 主控线程主要实现界面功能、导航功能中的地图匹配和导航引导模块、浏览功能中的地图浏览模块以及这些模块间的消息派送、接收和处理,同时协调各个工作线程异步运行。 导航定位线程主要完成导航定位模块中的接收当前位置数据(经、纬度)的功能。在导航过程中运行线程,线程处理函数把接收到的经、纬度数据实时通过消息发到主线程,由主线程调用地图匹配模块作处理。 路径规划线程
38、主要完成在道路网中求解最佳路径的任务。在用户要求提供最佳路径时根据用户的出发地和目的地求出一条最佳路径。在最佳路径求解算法中采用A*算法。地图数据库查询线程主要完成对导航地图数据库的查询功能,根据用户要求生成线程.完成对相关地理信息的查询。5.4.1软件的导航功能由主控线程控制实现.其基本实现流程如下(可见图4)(1)运行导航定位线程从输入口读取GPS人线接收到的当前位置的经纬度坐标值。(2)将经纬度坐标转换到屏幕的像素坐标。(3)根据当前位置结合导航地图进行匹配处理,把当前位置信息匹配到地图上。(4)显示并实时刷新导航地图和当前位置。(5)是否求解最佳路径,若是,则执行下面的第(6)条;否则
39、执行前而的第(4)条。(6)在导航数据库中选择起始和终止位置,运行路径规划线程在道路网数据中解算出最佳路径并显示到地图上。图5.4. 导航功能流程图Figure5.4 Navigation featuresflowcharts5.4.2 GPS数据提取GPS板只要处于工作状态就会源源不断地把接收并计算出的GPS导航定位信息通过串口传送到嵌入式系统中。由于从串口接收的数据帧是一长串ASCII码字节流,在没有经过分类提取之前是无法加以利用的。因此,必须通过程序将各个字段的信息从接收到的字节流中提取出来,将其转化成有实际意义的,可供高层决策使用的定位信息数据。对GPS信息进行提取必须首先明确其帧结构
40、,数据帧主要由帧头、帧尾和帧内数据组成。对于不同的数据帧,其帧头是不同的,主要有“$GPGGA”、 “$GPGSA”、“$GPGSV”以及“$GPRMC等。这些帧头标识了后续帧内数据的组成和结构特点。各帧均以回车符和换行符作为帧尾,标识一帧的结束。对数据帧处理,是先对帧头进行判断,然后只对感兴趣的帧进行数据的提取处理。由于帧内各数据段被逗号分割,因此在处理接收数据时一般是首先通过搜寻ASCII码“$”来判断是否是帧头,接着对帧头的类别进行识别,然后再根据识别出来的帧类型以及逗号,个数来确定当前正在读取的是哪个定位导航参数,并作出相应的提取和存储。流程图如图5所示。图5.4.2 GPS数据接收与
41、提取流程图Fig.5.4.2GPS datareceiverandextractionflow chart5.4.3显示与查询通过GPS和人工输入接收到的数据,经过MCU的处理,在地图上用醒目的颜色显示出来流程图如下:图5.6 显示流程图Fig.5.6showtheflow chart6 系统的软件设计本系统的所有程序均采用C+语言编写,开发工具为QT embed 2.0。程序定义了许多类来分别管理各个模块,通过对各个类的操作,来构建整个程序框架。6.1 程序整体结构框图图6.1 maintab类流程图 Fig.6.1 Diagram of the overall structure of p
42、rogram6.2 Maintab类 Maintab 类负责程序外框基本定义及程序初始化 开始 设置好卫星信号强度数据设置窗口大小、颜色显示窗口图3.2 maintab类流程图 Fig.3.2 maintab Class Flowchart6.3 mainwidgt类Mainwidgt类负责对各个按钮部件、页面部件的初始化开始 定义GPS时钟 绘制主框 绘制上下左右四个按键 绘制三个页面标签 连接点击按钮事件与处理按键程序 结束图6.3 mainwidget 类流程图Fig.6.3 mainwidget class Flowchart6.4 config类流程图Config类用以实现对地图路径、GPS模块波特率的设置 开始 设置地图路径 设置GPS的波特率