1、沈阳航空航天大学电子信息工程学院毕业设计(论文)摘 要随着汽车拥有量的逐年增加,道路拥挤和交通事故频频发生,这不仅给人们出行带来极大不便,而且还涉及到能源浪费、环境污染、人民生命安全等多方面问题。如何加强对车辆的管理,规范驾驶员的驾驶行为,减少交通事故的发生,营造一个和谐、通畅的行车环境己成为交通运输和安全管理部门面临的一个重要问题。 本课题的主要内容是:利用GPS接收机、微控制器、存储设备等设计了一个具有定位功能的车辆行驶信息记录系统。车辆行驶信息记录系统主要由1片MSP430F149型号的单片机组成的控制电路、GPS接收模块组成的信息接收电路、SD卡读写模块电路组成。GPS接收模块接收GP
2、S实时数据,经过MSP430单片机解析,提取出所需要的时间以及经纬度信息通过串口发送到SD卡存储起来。SD卡在写入数据时会创建可命名的txt文件,将收到的数据存储在所命名的文件中。经过多次的系统调试和实验,所设计的系统可正常工作,可实现对车辆实时位置信息的记录,从而监控车辆的行驶信息。关键词:GPS全球定位系统;微控制器;SD卡;信息存储AbstractWith yearly increase in car ownership, road congestion and traffic accidents occur frequently, which not only caused great
3、 inconvenience to the people to travel, but also to the energy waste, environmental pollution, and other aspects of peoples lives and safety issues. How to strengthen the management of the vehicle, the drivers driving behavior norms, reduce traffic accidents, to create a harmonious, smooth traffic e
4、nvironment has become an important issue for transportation and security administration faces.The main contents of this paper are: the use of GPS receivers, microcontrollers, memory devices, such as a vehicle designed to travel with positioning information recording system. Vehicle information recor
5、ding system consists of a microcontroller MSP430F149 model consists of a control circuit, the information receiving circuit consists of a GPS receiver module, SD card reader module circuit. GPS receiver module receives GPS real-time data, parse through the MSP430 microcontroller, and latitude and lo
6、ngitude information extracted from the time needed to send through the serial port to the SD card for storage. SD card data will be created when writing txt file can be named, will receive the data stored in the named file.After several system debugging and experiments, the system can work properly
7、designed, can achieve real-time vehicle location information records, thereby monitoring a vehicle traveling information.Keywords:GPS global positioning system; MCU; SD card; information storage目录第1章 绪论11.1 课题研究的目的和意义11.2 课题的主要研究内容21.3 论文的组织结构2第2章 系统分析与设计方案32.1 GPS系统及其工作原理32.1.1 GPS基础32.1.2 GPS定位原理3
8、2.1.3 GPS数据42.2 系统总体设计7第3章 系统硬件设计93.1 系统硬件总体设计概述93.2 系统电路模块设计93.2.1 MSP430F149单片机简介103.2.2 MSP430F149单片机最小系统143.2.3 GPS定位信息接收电路163.2.4 SD卡读写电路203.2.5 电源模块电路213.3 整体硬件电路22第4章 系统软件设计244.1 系统软件总体设计概述244.2 系统各部分程序244.2.1 主程序244.2.2 SD卡读写模块程序254.2.3 GPS数据处理模块程序30第5章 系统调试与结果分析335.1 概述335.2 IAR软件简介335.3 软件
9、调试方法及步骤345.3.1 系统在IAR软件的调试345.3.2 程序下载电路的调试355.4 整体调试365.5 调试结果与分析37第6章 经济与社会效益分析406.1经济效益分析406.2社会效益分析40结论41致谢42参考文献43附录 电路原理图45附录 部分程序清单46- IV -第1章 绪论1.1 课题研究的目的和意义随着汽车拥有量的逐年增加,道路拥挤和交通事故频频发生,这不仅给人们出行带来极大不便,而且还涉及到能源浪费、环境污染、人民生命安全等多方面问题。如何加强对车辆的管理,规范驾驶员的驾驶行为,减少交通事故的发生,营造一个和谐、通畅的行车环境己成为交通运输和安全管理部门面临的
10、一个重要问题。而GPS卫星导航全球定位系统自问世以来,在导航、定位领域发展势头迅猛,引起世界各界人士的关注。具备高精度、全天候、全球覆盖、高效率、多功能、操作简便等特点。广泛应用于地面车辆跟踪和城市智能交通管理方面。随着人们对运输载体的监控、跟踪以及智能化管理要求的提高,GPS在中国已经进入爆发性发展阶段,蕴藏着巨大的发展空间。GPS系统包括三大部分:空间部分GPS卫星星座;地面控制部分地面监控系统;用户设备部分GPS信号接收机。GPS系统通过使用来自多个卫星的信号来确定地面或近地面任何位置的移动接收机的位置。我国的卫星定位技术综合了GPS卫星导航全球定位,GSM全球数字蜂窝移动通信,GIS地
11、理信息,计算机网络技术全方位的技术应用。利用GPS卫星信号接收机,跟踪这些卫星的运行,对所接收到的GPS信号进行变换、放大和处理,测量传播时间,解译导航电文。接收机24h不间断地接收卫星发送的数据参数,算出接收的三维位置、三维方向以及运动速度和时间信息。本课题就是这种背景下提出的利用GPS的定位导航功能,实现对车辆位置信息的记录,并将车辆的位置信息存储下来,以供后续调查。通过对车辆的位置信息的记录,可以加强车辆的管理,优化车辆的行驶路径,减少交通事故的发生。本课题是一个非常有创新的课题,同时具有非常高的实用价值。对本课题的设计很好的煅炼了自己的能力。让我对GPS的工作原理有了更深的认识。同时,
12、在实现这个设计的过程也很好地煅炼了自己的动手能力和独立思考能力。完成一个这样有实用价值的作品,对我以后步入社会后的工作也很有帮助。1.2 课题的主要研究内容本次毕业设计的任务是基于GPS的车辆行驶信息记录系统的设计,主要是通过GPS接收模块接受的信息通过串口传输到MSP430单片机,由单片机进行数据信息的解析与提取,将提取的有效信息储存到SD卡中。主要研究内容:1、硬件电路的设计制作,将GPS接收模块、SD存储卡、单片机、电源模块集成到一个系统板中;2、用单片机解析GPS定位数据(因为GPS数据是十分丰富的,要提取里边有用的);3、将单片机处理以后的定位数据存储到SD存储卡。本课题重点是实现单
13、片机对SD卡的读写,存储车辆位置信息。1.3 论文的组织结构本文共分为6个章节,以设计顺序为主线对系统进行了详细介绍。第1章主要介绍了该课题研究的目的、意义、题目要求以及论文的组织结构,本章为设计工作的准备阶段。第2章对系统进行了分析,提供了系统的设计方案。第3章介绍了该系统的硬件电路设计原理,详细介绍了系统各个组成电路模块。第4章主要是对软件设计的研究,首先说明了程序设计思路,然后画出了程序流程图,并对各程序流程图作了简要说明。第5章主要是系统实验结果与分析。第6章对该课题的经济和社会效益进行了简要分析。本文还包括结论、致谢、参考文献、附录部分。第2章 系统分析与设计方案方案设计是系统完成的
14、关键,其设计的合理性直接决定了整个系统的结构和功能。本系统完成了对GPS接收信息的提取,并将其存储到SD卡中。下面对GPS系统及其工作原理和本系统的设计做一下具体说明。2.1 GPS系统及其工作原理2.1.1 GPS基础GPS主系统是由美国发射的卫星系统,由27颗卫星组成,其中24个正常使用,3个备用,27颗卫星不间断的发送地理位置海拔高度和时间信号,由地面的接收机接受再做处理,一般的接收机可以接收5至12个卫星信号。全球定位系统分为三部分:太空卫星部分:24颗绕极转动的卫星分成六个轨道,在20200公里的高空运动,转动一周约12小时,每个卫星都不停的发射载有卫星轨道数据及时间的无线电波以供地
15、球上的各种接收机接收。地面管制部分:在地面设置的地面管制站主要任务是追踪控制卫星运转,修正维护每个卫星能保持运转的个性参数,确保接收信息的可靠性。终端设备:追踪GPS卫星并随时计算出接收机所在位置的坐标,移动速度及时间。GPS接收机及一般分为:无线蓝牙GPS,USB接口GPS。2.1.2 GPS定位原理GPS系统的基本定位原理是:每颗GPS卫星时刻发布其位置和时间数据信号,用户接收机可以测量每颗卫星信号到接收机的时间延迟,根据信号输出的速度可以计算出接收机到不同卫星的距离。同时收集至少4颗卫星的数据时,就可以算出三维坐标、速度和时间,经由I/O口输出串行数据。2.1.3 GPS数据GPS模块协
16、议支持NMEA-0183协议,NMEA-0183协议是National Marinc Elcctronics Association所指定的标准规格,这一标准还包含传输资料的格式以及传输资料的通信协议。一组正常的GPS协议语句包含GPS固定数据输出语句($GPGGA),建议使用推荐定位信息($GPRMC),地面速度信息($GPVTG)语句。1.当前卫星信息$GPGGA $GPGGA,101443.00,4155.48410,N,12323.86670,E,1,05,11.28,89.7,M,7.8,M,*6B;其标准格式为$GPGGA,(1),(2),(3),(4),(5),(6),(7),(
17、8),(9),M(10),M,(11),(12),*hh(CR)(LF)各部分对应的含义为:(1):标准定位时间:#时#分#秒;(2):纬度(格式ddmm.mmmm即#度#.#分);(3):N/S南或北表示纬度即北纬37度54.9756分;(4);经度(格式ddmm.mmmm即#度#.#分);(5):E/W 东或西表示经度即东经109度28.4278分;(6):质量因子(0=没有定位,1=实时GPS,2=差分GPS);(7):可以应用卫星个数(0-8);(8):水平精度因子(1.0-99.9)水平精度因子=1.0;(9):天线高程天线高程20.6米;(10):大地椭球面相对海平面的高度(-99
18、9.9-9999.9,单位:米);(11):差分GPS数据年龄,实时GPS时无;(12):差分某准站号(0000-1023),实时GPS时无; *:语句结束标识符;Hh:为从$开始到*之间的所有ASCII码的异或校验和;(CR):回车;(LF):换行。2.推荐定位信息数据格式$GPRMC$GPRMC,101443.00,A,4155.48410,N,12323.86670,E,0.049,255.81,160411,A*6A,其标准格式为:$GPRMC(1),(2),(3),(4),(5),(6),(7),(8),(9),(10),(11) *hh (1):标准定为时间格式hhmmss.sss
19、;(2):定位状态:A=数据可用,V=数据不能被用;(3):纬度:格式ddmm.mmmm;(4):纬度区分:北半球=N,南半球=S;(5):经度:格式ddmm.mmmm;(6):经度区分:东半球=E,西半球=W;(7):相对位移的速度0.0至1851.8knots;(8):相对位移的方向:000.0至359.9度,实际值;(9):日期:格式ddmmyy;(10):磁极变量:0度到180度;(11):磁偏角方向,E(东)或W(西);(12):模式指示(A=自主定位,D=差分,E=估算,N=数据无效)。3.地面速度信息$GPVTG$GPVTG,255.81,T,M,0.049,N,0.090,K,
20、A*32,其标准格式为:$GPVTG,(1),(2),(3),(4),(5),(6),(7),(8),(9)*hh(1):运动角度,000-359前导位数不足补0;(2):T=真北参照系;(3):运动角度,000-359前导位不足补0;(4):M=磁北参照系;(5):水平运动速度0.00前导位不足补0;(6):N=节,Knots;(7):水平运动速度0.00前导位不足补0;(8):K=公里/时;(9):模式指示(A=自主定位,D=差分,E=估算,N=数据无效)。4.含经纬度的地理位置$GPGLL$GPGLL,3723.2475,N,12158.3416,W,161229.487,A*2C,其标
21、准格式为:$GPGLL,(1),(2),(3),(4),(5),(6)*hh(1):纬度37度23.2475分;(2):N/S,北半球或南半球;(3):经度121度58.3416分;(4):E/W,东半球或西半球;(5):标准定为时间:格式,时时分分秒秒;(6):状态,A=数据可用,V=数据不可用。5.当前卫星信息$GPGSA$GPGSA A,3,07,02,26,27,09,04,15,1.8,1.0,1.5*33,其标准格式为:$GPGSA,(1),(2),(3),(3),(3),(3),(3),(4),(5),(6),(7)(1):模式:M = 手动, A = 自动;(2):定位型式1
22、= 未定位, 2 = 二维定位, 3 = 三维定位;(3):PRN 数字:01 至32 表天空使用中的卫星编号,最多可接收12颗卫星信息;(4):PDOP位置精度因子(0.599.9); (5):HDOP水平精度因子(0.599.9);(6):VDOP垂直精度因子(0.599.9); (7):Checksum.(检查位)。2.2 系统总体设计首先是GPS数据接收模块进行数据的接收,然后将接收数据传给单片机进行数据的加工处理从中选取有用数据,存储到SD卡中。系统整体设计框架图如图2.1所示:图2.1 系统整体设计框架图此次设计的系统主要包括GPS接收模块、MSP430单片机、SD卡读写模块、串行
23、通信接口等几部分,各部分设计及主要功能介绍如下:GPS接收模块:GPS接收机的功能是能够捕获到按一定卫星高度截止角所选择的待测卫星的信号,并跟踪这些卫星的运行,对接收到的GPS信号进行变换、放大和处理,可以实现对天线视界内卫星的跟踪、锁定和测量。在获取了卫星的位置信息和测算出卫星信号传输时间之后,就可算出输出定位、导航和其他数据。GPS接收机由核心处理器、GPS接收装置和液晶显示设备组成。本研究采用的GPS接收机是RCB-4H,具有接收GPS信号、处理信号、输出定位信息等功能。单片机:单片机是此系统的核心部分,通过对外围各个接口的数据信号的提取及处理,来控制整个系统的工作。本课题采用MSP43
24、0F149单片机提取GPS接收的数据信息,并对数据信息进行处理。SD卡读写模块:SD卡读写模块内置文件系统、可直接进行文件读写的SD卡模块,适用于单片机系统实现大容量存储方案。单片机使用模块,可直接进行目录遍历、目录创建、目录删除、文件创建、文件删除、文件修改、卡格式化等标准文件系统操作,无需了解SD卡内部存储结构及文件系统实现细节。SD卡通过SD卡读写模块存储经过单片机处理过的有效信息。第3章 系统硬件设计3.1 系统硬件总体设计概述系统的硬件电路部分设计是本课题的非常重要和关键的一部分,这部分的设计情况将影响到系统功能的实现。本章着重介绍硬件部分电路的设计原理,各部分电路的组成以及外围电路
25、器件的功能等等。系统硬件框图如图3.1所示:图3.1 系统硬件框图3.2 系统电路模块设计对应于系统所要实现的功能,本系统的硬件设计主要由四部分组成。这四部分分别为GPS定位信息接收电路,SD卡读写电路,电源电路与STC89C52RC接口电路和程序下载电路。3.2.1 MSP430F149单片机简介单片机是系统的核心部分,通过对外围各个接口的数据信号的提取及处理,来控制整个系统的工作。本课题采用的是MSP430F149单片机。单片机芯片配以必要的外部器件,一般包括电源供入及电源开关、复位电路、晶振、输入输出电路等就能构成最小系统。MSP430功能框图如图3.2所示:图3.2 MSP430功能框
26、图MSP430F149芯片是美国TI公司推出的超低功耗微处理器,有60KB+256字节FLASH,2KBRAM,包括基本时钟模块、看门狗定时器、带3个捕获比较寄存器和PWM输出的16位定时器、带7个捕获比较寄存器和PWM输出的16位定时器、2个具有中断功能的8位并行端口、4个8位并行端口、模拟比较器、12位AD转换器、2个串行通信接口等模块。MSP430F149芯片具有如下特点:(1)功耗低:电压22V、时钟频率1MHz时,活动模式为200A;关闭模式时仅为01A,且具有5种节能工作方式;(2)高效16位RISC-CPU,27条指令,8MHz时钟频率时,指令周期时间为125ns,绝大多数指令在
27、一个时钟周期完成;32kHz时钟频率时,16位MSP430单片机的执行速度高于典型的8位单片机20MHz时钟频率时的执行速度;(3)低电压供电、宽工作电压范围:1836V;(4)灵活的时钟系统:两个外部时钟和一个内部时钟;(5)低时钟频率可实现高速通信;(6)具有串行在线编程能力;(7)强大的中断功能;(8)唤醒时间短,从低功耗模式下唤醒仅需6s;(9)ESD保护,抗干扰力强;(10)运行环境温度范围为-40+85,适合于工业环境。MSP430系列单片机的所有外围模块的控制都是通过特殊寄存器来实现的,故其程序的编写相对简单。编程开发时通过专用的编程器,可以选择汇编或C语言编程,IAR公司为MS
28、P430系列的单片机开发了专用的C430语言,可以通过WORKBENCH和C-SPY直接编译调试,使用灵活简单。单片机引脚图如图3.3所示:图3.3 MSP430引脚图58脚RST/NMI 为430单片机的复位引脚(低电平有效)。1脚DVCC、63脚DVSS 为数字电源接口。64脚AVCC、62脚AVSS 为模拟电源接口。注意:MSP430系列单片机的供电电压为1.8V3.6V。32脚UTXD0、33脚URXD0 的第二功能为MSP430F149单片机两路串口通讯接口中的第一路。 34脚UTXD1、35脚URXD1 的第二功能为MSP430F149单片机两路串口通讯接口中的第二路。29脚SIM
29、O0,30脚SOMI0,31脚UCLK0 的第二功能为MSP430F149单片机两路SPI通讯接口中的第一路。45脚SIMO1,46脚SOMI1,47脚UCLK1 的第二功能为MSP430F149单片机两路SPI通讯接口中的第二路。48脚的第二功能为MSP430F149单片机MCLK(主系统时钟)的输出端。49脚的第二功能为MSP430F149单片机 SCLK(子系统时钟)的输出端50脚的第二功能为MSP430F149单片机 ACLK(辅系统时钟)的输出端。52脚、53脚为外部高频时钟晶振输入端(程序中说明一般用XT2CLK或HF XTAL表示)。8脚、9脚为外部低频时钟晶振输入端(程序中说明
30、一般用LFXTICLK表示)。59脚TA0,60脚TA1,61脚TA2,2脚A3,3脚A4,4脚A5,5脚A6,6脚A7 的第二功能为8路的内部12位ADC模拟电压输入端口。54脚TDO/TDI,55脚TDI/TCLK,56脚TMS,57脚TCK 为JTAG接口(同时拥有仿真器和编程器的功能),用于下载程序并实现硬件在线仿真。I/O口的操作:P1P6的公有寄存器位为PXSEL,PXDIR,PXOUT,PXIN。其中P1,P2相对于P3,P4 ,P5,P6还多出了3个寄存器PXIE,PXIES,PXIFG,这三个寄存器是用于设置开启P1,P2的外部触发中断使用的(其中X可以为1,2,3,4,5,
31、6)。以下各寄存器功能介绍(以P3.4为例):P3SEL用于功能选择,当其置0选择的是普通I/O口功能,置1选择的是第二功能;比如32脚UTXD0对应P3.4,33脚URXD0对应P3.4。P3SEL &= BIT4;/ 该程序是将P3.4置0,此时该引脚只具有普通I/O口功能;P3SEL |= BIT4;/ 该程序是将P3.4置1,此时该引脚将具有异步串口通信功能。P3DIR是用于设置I/O口输出方向的。P3DIR &= BIT4; /该程序是将I/O口的方向设置为输入(一般用于读取数据时);P3DIR |= BIT4; /该程序是将I/O口的方向设置为输出。P3OUT是用于设置I/O口输出
32、高低电平的。P3OUT &= BIT4; /该程序是使该I/O口输出高电平;P3OUT |= BIT4; /该程序是使该I/O口输出低电平。P3IN是用于读取外部输入到该引脚,使用该寄存器前必须将P3DIR置0。3.2.2 MSP430F149单片机最小系统最小系统是由保证处理器可靠工作所必须的基本电路组成的,主要包括电源电路、时钟电路和复位电路。1.时钟电路时钟电路用于产生单片机工作时所需要的时钟信号。单片机各功能部件的操作都是以时钟频率为基准,有条不紊地周期性地工作。因此,时钟频率直接影响单片机的运行速度,时钟电路的质量也直接影响单片机系统的稳定性。MSP430系列单片机时钟模块包括数控振
33、荡器(DCO)、高速晶体振荡器和低速晶体振荡器等3个时钟源。这是为了解决系统的快速处理数据要求和低功耗要求的矛盾,通过设计多个时钟源或为时钟设计各种不同工作模式,才能解决某些外围部件实时应用的时钟要求,如低频通信、LCD显示、定时器、计数器等。数字控制振荡器DCO已经集成在MSP430内部,在系统中只需设计高速晶体振荡器和低速晶体振荡器两部分电路。低速晶体振荡器(LFXTl)满足了低功耗及使用32768kHz晶振的要求。LFXTl振荡器默认工作在低频模式,即32768kHz,也可以通过外接450kHz8MHz的高速晶体振荡器或陶瓷谐振器工作在高频模式,在本电路中我们使用低频模式。高速晶体振荡器
34、(HFXT2)也称为第二振荡器XT2,它为MSP430F149工作在高频模式时提供时钟,XT2最高可达8MHz。在系统中XT2采用8MHz的晶体,XT2外接2个30pF的电容经过XT2IN和XT2OUT连接到MCU。晶振电路如图3.4所示: 图3.4 晶振电路2.复位电路在单片机每次初始加电时,首先投入工作的功能部件是复位电路。复位电路把单片机锁定在复位状态上并且维持一个延时,以便给予电源电压从上升到稳定的一个等待时间。在电源电压稳定之后,再插入一个延时,给予时钟振荡器从起振到稳定的一个等待时间。从上MSP430系统复位电路功能模块图中可以看到了两个复位信号,一个是上电复位信号POR(Powe
35、r On Reset)和上电清除信号PUC(Power Up Clear)。POR信号是器件的复位信号,此信号只有在以下的事件发生时才会产生: 器件上电时:RST/NMI引脚配置为复位模式,当RST/NMI引脚产生低电平时。 当POR信号产生时,必然会产生PUC信号;而PUC信号的产生时不会产生POR信号。会引起产生PUC信号的事件: POR信号发生时;启动看门狗时,看门狗定时器计满时;向看门狗写入错误的安全参数值时;向片内FLASH写入错误的安全参数值时。当POR信号或PUC信号发生时引起器件复位后,器件的初始化状态为: RST/NMI引脚配置为复位模式、I/O引脚为输入模式、状态寄存器SR
36、复位、看门狗激活进入工作模式、程序计数器(PC)装入复位向量地址0xFFFE,微处理器从此地址开发始执行。由于MSP430F149单片机是低电平复位,在复位键未按下时,由于电容对直流电的阻隔作用,复位端口REST为高电平,因此单片机不执行复位功能;当按下复位键S2时,电容C3通过S2放电,此时REST为低电平,单片机进入复位状态,当释放S2时,电源通过电阻R8给电容再次充电,复位端口的点位由低电平缓慢的上升的高电平,在未达到单片机规定的阈值之前,单片机均认为是低电平,保持复位状态当充电完成后,复位端口为高电平,复位结束。其中二极管D3的加入是保证REST端的电压限定在一定范围内不会太高。复位电
37、路如图3.5所示:图3.5 复位电路最小系统可以直接作为核心部件应用与工程和科研中,具有良好的通用性和可扩展性。在最小系统的基础上,可以很方便地进行二次开发和功能扩展,能够缩短开发周期,降低开发成本。本文实现了最小系统的基本功能,介绍了各模块的硬件电路。该最小系统可以经过适当修改可应用于电子设计、计算机教学与科研、工业控制等领域。3.2.3 GPS定位信息接收电路在进行硬件设计时,应根据系统的需要来选择适合的硬件。在本系统的设计中,GPS接收机是最基本的组成部分,由它来接收卫星信号,并且产生定位信息。下面分别介绍GPS接收机的分类、选择与各种特性。 1.GPS接收机的分类 GPS接收机可以根据
38、用途、工作原理、接收频率等进行不同的分类。按接收机的用途进行分类可分为导航型接收机,测地型接收机,授时型接收机等;按接收机的载波频率进行分类可分为单频接收机,双频接收机;由于GPS接收机的定位原理多样,应用范围广泛,所以分类方法也多种多样,需要根据实际应用来选择适当的接收机。 2.GPS定位模块的选择 由于本项目开发的是基于GPS OEM接收机自主完好性监测系统的研究,所以应选择导航型的GPS模块。目前,有很多厂商都能提供GPS OEM板产品,如SiRF、Conexant、Sychip、GARMIN等公司。其中北京三信通导技术有限公司是最著名、深受用户信赖的专业GPS厂家,在GPS的定位、导航
39、领域一直走在最前列,在提供各种类型的GPS成品的同时,还提供一系列最经典的GPS OEM板产品。此公司生产的GPS OEM产品的优良的性能既能够满足灵敏度需求,也能够满足动态需求,所以本项目选择RCB-4H作为GPS定位模块。它为12 通道的GPS 接收机,也就是同时可以跟踪多达12颗GPS 卫星,从而能够快速的定位。GPS 接收机功耗非常小,数据更新率为4HZ,即为每秒4次。 3.RCB-4H简介GPS-OEM板采用单一5V供电,内置保护电池,RS232、TTL两种电平自动输出NMEA0183格式(ASCII字符型)语句。GPS接收板主要由变频器、信号通道、存储器、中央处理器和输入输出接口构
40、成。它接收天线获取的卫星信号,经过变频、放大、滤波、相关、混频等一系列处理,可以实现对天线视界内卫星的跟踪、锁定和测量。在获取了卫星的位置信息和测算出卫星信号传输时间之后,就可算出输出定位、导航和其他数据。4.RCB-4H的输出格式RCB-4H是一种超低功耗的GPS接收板.接收机输出数据通常使用的格式是美国国家海洋电子协会指定的NMEA0183通信标准格式,其输出数据代码为ASCII码字符,内容包含了纬度、精度、高度、速度、日期、时间、航向以及卫星状况等信息。输出数据为多种格式,如GPGRS、GPGGA、GPGSA等。GPS通信波特率为480019200,1个起始位,8个数据位,1个停止位,无
41、奇偶校验位。GPS接收机的实物图如图3.6所示:图3.6 GPS接收机实物图GPS接收机引脚图如图3.7所示:图3.7 GPS接收机管脚配置图 各引脚功能如表3.1所示。表3.1 GPS引脚功能介绍1V-ANT输入天线偏置电压11 TXD1输出串口1 2Vcc输入供应电压12RXD1输入串口1 3V-BAT输入备用电源电压13GND地4Vcc输入供应电压14TXD2输出串口25RESET-N输入复位15RXD2输入串口26Reserved16GND地7Reserved17GND地8Reserved18GND地9Reserved19TIMEPULSE输出时间脉冲10GND地20GND地5.GPS
42、信息接收电路由于我们所采用的RCB-4H信号接收模块输出信号为RS232电平,而MSP430单片机串口所使用的电平为TTL电平,所以为了能使单片机正常的与RCB-4H信号接收模块进行通讯,故需要对电平进行相互转换,所以我使用了MAX-232转换芯片。其电路设计图如图3.8所示。图3.8 GPS信息接收电路3.2.4 SD卡读写电路SD卡读写模块SDV600是一款整合了SD卡规范和FAT文件格式规范的模块,只要通过本模块规定的通讯协议就可以把数据存储在SD卡中的文件中。由于SD卡规范和FAT规范是非常复杂,如果在项目中要单独来写这两个规范的非常费时和费力,而且非常占用系统资源;现在的便携仪采集的
43、数据种类越来越多,数据量越来越大,而其大部分要求在计算机上备份数据或者后期用计算机处理数据;而SD 卡以其容量大,速度快,接口简单,加之配套的读卡器便宜而发展迅速;这些主观和客观的因素促使项目中迫切要求使用SD 卡加FAT文件系统来存储数据,也促使本模块的诞生。本模块支持FAT32文件格式,理论支持8G以下SD卡。通过命令提供给主机有如下功能:(1)文件的创建(注:文件名只支持8.3 文件格式:8.3文件格式文件名不支持中文,文件名长度为最大8个字符);(2)文件的打开(8.3 文件名格式);(3)文件的连续写入和文件的给定起始地址写入;(4)文件的连续读取和文件的给定起始地址读取;(5)当前
44、打开文件的保存;(6)当前文件的关闭;(7)文件指针的设置;(8)当前打开文件信息的读取,包括文件的大小和当前文件指针值;(9)获取系统的状态(有无SD卡,是否为FAT32文件格式,系统是否繁忙);(10)通过模块上的拨码开关设置串口波特率(2400,9600,19200,57600,115200)。SD卡读写模块连接电路如图3.9所示:图3.9 SD卡读写模块电路本模块工作稳定,不挑卡,不死机,串口 UART操作(直接接任何带串口单片机),指令少,还可以顺序存。3.2.5 电源模块电路由于整个系统采用5V和3.3V供电,又考虑到硬件系统要求电源具有稳压功能和波纹小等特点,另外也考虑到硬件系统
45、的低功耗等特点,因此该硬件系统的电源先用LM7805稳压为5V给外围模块电路供电,再用SPX1117芯片稳压得到3.3V电压,给CPU和3.3V设备供电。电源电路如图3.10所示:图3.10 电源电路3.3 整体硬件电路本系统的硬件电路主要包括GPS接收模块、MSP430F149单片机和SD卡读写模块组成。整体硬件电路实物图如图3.11所示:图3.11 整体硬件电路实物图第4章 系统软件设计4.1 系统软件总体设计概述本次课题是基于GPS的车辆行驶信息记录系统的设计,主要实现GPS数据接收、GPS数据信息处理以及GPS有效数据信息存储等功能,而这些功能通过使用IAR Embedded Work
46、bench集成调试软件编写程序来实现。由于硬件电路设计包含主控电路、GPS信息接收电路、SD卡存储电路组成,因此本次程序设计主要包含3个部分:主程序、SD卡读写模块程序和GPS数据处理模块电路程序。4.2 系统各部分程序4.2.1 主程序设计系统时,一般会设计系统的主程序。主程序主要用于调用各个子程序,不仅如此,还标明调用子程序所要满足的条件。本系统的主程序流程图如图4.1 所示。图4.1 系统主程序流程图4.2.2 SD卡读写模块程序SDV600 是内含处理器,整合FAT 协议,操作起来和芯片一样,它工作状态也是有忙有闲,所以在执行操作时需要检查模块的busy 标志引脚,客户处理器完全可以去做别的事,必要时判断busy 进行下一步操作。对于FAT协议来讲,文件数越多造成得寻址和判断(判断文件重命名)时间越来越长,使建立文件命令执行时间增长,所以在使用命令时一定要判断模块的BUSY脚,如果处于BUSY状态发送的后续命令就会被模块丢弃,直到不为BUSY状态时,后续命令才可被