




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 基于基于ARM-Linux平台的平台的 GPS定位系统定位系统 课题简介课题简介 GPS系统的硬件设计系统的硬件设计 系统的软件开发系统的软件开发 应用程序移植和系统测试应用程序移植和系统测试 课题总结课题总结一、课题简介一、课题简介一、课题简介一、课题简介 GPS全球定位系统广泛应用于各个领域,而全球定位系统广泛应用于各个领域,而 GPS系统与系统与嵌入式相结合,实现它的便捷性。是目前研究的主流,但嵌入式相结合,实现它的便捷性。是目前研究的主流,但是嵌入式是嵌入式GPS定位导航系统在系统平台、开发环境、应用定位导航系统在系统平台、开发环境、应用软件上几乎都处在一个商业化封闭的环境,造成了开
2、发成软件上几乎都处在一个商业化封闭的环境,造成了开发成本昂贵、安全性低、数据更新交换困难等问题。本昂贵、安全性低、数据更新交换困难等问题。 本文通过嵌入式本文通过嵌入式GPS定位系统的相关理论、方法和技术定位系统的相关理论、方法和技术,提出了一套基于嵌入式,提出了一套基于嵌入式Linux的的GPS定位系统的设定位系统的设 计方案。对设计和开发基于开放系统平台和数据标准的,计方案。对设计和开发基于开放系统平台和数据标准的,安全稳定,低成本的嵌入式安全稳定,低成本的嵌入式GPS定位系统做出有益探索。定位系统做出有益探索。 二、二、GPS系统的硬件设计系统的硬件设计S3C2440电源电源时钟时钟晶振
3、晶振SDRAMNandFlashGPSCS8900A复位电路复位电路J-LinkLCDJTAG串口串口S3C2440电源电源时钟时钟晶振晶振SDRAMNandFlashGPSCS8900A复位电路复位电路J-LinkLCD C1+C2+C2-T1INT2INR1OR2OV+V-GNDT1OT2OR1INR2INVCCC1-U1MAX202EC51uC41u16C31u2C21u61514715C11u89116R6A012116R10A010116R8A011116R7A05116R9A04116R5A0319876116R1A5116R2A04116R3A03116R4A021VDD5VET
4、-TXET-RXRXD1TXD1RXDDCDDTRTXDGNDDSRRTSCTSRIP1RS232-9245678J2CN1D4MBR0540116R1A330RC250.1u+C1100u+C2310uSMD TYPEOUTINU3LM1117-CT3.3VDD5VVDD33V1243GPS系统的软件设计系统的软件设计文件系统文件系统uboot引导程序引导程序Linux内核内核QtopiaGPS应用程序应用程序 1.建立软件开发环境建立软件开发环境安装串口工具安装串口工具minicom创建创建QT开发平台开发平台创建交叉编译环境创建交叉编译环境增加增加g+3.4.6g+4.4.5的的可选项可
5、选项PC版本的版本的qtopia-2.2.02.建立嵌入式建立嵌入式Linux系统平台系统平台编译移植引导程序编译移植引导程序U-Boot 1.3.2编译移植编译移植Linux2.6.32内核内核制作制作YAFFS根文件系统根文件系统 GPS信息显示GPS信息提取GPS用户界面串口设置3.GPS应用程序应用程序 设置一下环境变量设置一下环境变量export QPEDIR=/root/yizhi/qtopia-free-2.2.0/qtopiaexport QTDIR=/root/yizhi/qtopia-free-2.2.0/qt2exportLD_LIBRARY_PATH=$QPEDIR/l
6、ib:$QTDIR/lib:$DQTDIR/lib:$LD_LIBRARY_PATH 在在LinuxLinux下的下的/opt/EmbedSky/Qte/x86_qtopia/pro/opt/EmbedSky/Qte/x86_qtopia/pro的文件的文件中新建一个中新建一个firstfirst的文件夹用来存放以后所要用的程序。的文件夹用来存放以后所要用的程序。在终端中输入在终端中输入#$QTDIR/bin/designer &#$QTDIR/bin/designer &启动启动Qt designerQt designer输入输入lsls可以查看该目录下的文件可见已产生可以查
7、看该目录下的文件可见已产生MakefileMakefile文件文件MakefileMakefile文件:文件:GNU makeGNU make程序在执行时默认读取的配置文程序在执行时默认读取的配置文件。记录了文件之间的关系。件。记录了文件之间的关系。创建创建main.cpp文件文件 cfsetispeed(&opt,B4800); cfsetospeed(&opt,B4800);波特率波特率设置设置tcgetattr(fd,&opt);读串口参读串口参数配置数配置opt.c_cflag &= PARENB;opt.c_iflag &= INPCK;设置设
8、置奇偶校验奇偶校验opt.c_cflag &= CSTOPB;1位停位停止位止位opt.c_ccVTIME =150;opt.c_ccVMIN=0;设置超时设置超时时间时间opt.c_cflag &= CSIZE;opt.c_cflag |=CS8;设置设置数据位数据位fd=open(/dev/ttySAC1, O_RDWR);if(fd0)qWarning( GPS:gps_start(): open_port ttySAC1 error! ); NAME-0183协议协议当前卫星信息当前卫星信息$GPGGA推荐定位信息数据格式推荐定位信息数据格式$GPRMC地面数据信息地面
9、数据信息$GPVTG当前卫星信息当前卫星信息$GPGSA含经纬度的地理位置含经纬度的地理位置$GPGLL信号经过信号经过GPS系统后以系统后以NAME-0183协议输出的,所以要想协议输出的,所以要想获取定位信息就要了解获取定位信息就要了解NAME-0183协议内容,并用程序解协议内容,并用程序解析出来。析出来。NAME-0183协议如下,协议如下,GPGGA适合我所要提取信适合我所要提取信息,所以我选息,所以我选GPGGA进行信息获取。进行信息获取。$GPGGA的帧格式的帧格式$GPGGA,(1),(2),(3),(4),(5),(6),(7),(8),(9),M(10),),M,(,(11
10、),(),(12),),*(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.
11、9)水平精度因子)水平精度因子=1.0 (9)天线高程天线高程天线高程天线高程20.6米米 (10)大地椭球面相对海平面的高度(大地椭球面相对海平面的高度(-999.9-9999.9,单位:米),单位:米) (11)差分差分GPS数据年龄,实时数据年龄,实时GPS时无时无 (12)差分某准站号(差分某准站号(0000-1023),实时),实时GPS时无时无flag_gps=1;qWarning( tmp success! );if(buffer2=G & buffer3=G & buffer4=A)ggainfo.bIsGPGGA = 1;qWarning( this is G
12、GA success! );读取读取GPGGA成功成功 no = 6;for(i = 0;i 4;i+)Houri=0;Hour0=bufferno;Hour1=bufferno+1; no += 2;/no=8 for(i = 0;i 4;i+) Minui=0; Minu0=bufferno; Minu1=bufferno+1;no += 2;for(i = 0;i 4;i+)Secondi=0; Second0=bufferno; Second1=bufferno+1;ggainfo.hour = atoi(Hour);ggainfo.min = atoi(Minu);ggainfo.s
13、ec = atoi(Second);ggainfo.secFrac = 0;ggainfo.bjhour = ggainfo.hour + 8; no = 17; for(i = 0;i 4;i+) Degreei=0; Degree0=bufferno; Degree1=bufferno+1; no+=2; for(i=0;i8;i+) Minutei=0; for(i=0;i7;i+) Minutei=bufferno+i; ggainfo.latitude=(atof(Minute) / 60.0 + atoi(Degree);ggainfo.latNS = buffer27; if(g
14、gainfo.latNS=N)flag_gps=1; elseflag_gps=0;no = 29; for(i=0;i4;i+) Degreei=0; Degree0=bufferno; Degree1=bufferno+1; Degree2=bufferno+2; no+=3; for(i=0;i8;i+) Minutei=0; for(i=0;i7;i+) Minutei=bufferno+i; ggainfo.longitude=(atof(Minute) / 60.0 + atoi(Degree);ggainfo.lgtEW = buffer40;if(ggainfo.lgtEW=E
15、) flag_gps=1; elseflag_gps=0;no=51;for(i = 0;i setText( tr(BJ time is: %1 :%2 :%3 ) .arg(ggainfo.bjhour) .arg(ggainfo.min) .arg(ggainfo.sec) ); T_time2-setText( tr(UTC time is: %1 :%2 :%3 ) .arg(ggainfo.hour) .arg(ggainfo.min) .arg(ggainfo.sec) );显示显示BJ间间UTC间间T_statellite-setText(tr(statellites: %1)
16、.arg(ggainfo.satellites); T_hight-setText(tr(Height: %1M).arg(ggainfo.altitude);显示高度显示高度单位米单位米if (ggainfo.latNS=N)T_latitude-setText(tr(Latitude is: N : %1 ).arg(ggainfo.latitude) );if (ggainfo.latNS=S)T_latitude-setText(tr(Latitude is: S : %1 ).arg(ggainfo.latitude) );if(ggainfo.lgtEW=E)T_longitude
17、-setText(tr(Longitude is: E : %1 ).arg(ggainfo.longitude);if(ggainfo.lgtEW=W)T_longitude-setText(tr(Longitude is: W : %1 ).arg(ggainfo.longitude);显示南北显示南北东西东西 Qtopia的移植的移植 五、应用程序移植和系统测五、应用程序移植和系统测试试 添加程序添加程序最终在开发板显示结果最终在开发板显示结果结论结论1. 以以S3C2440微处理器与微处理器与GPS模块接收板为基础,进行硬件电路设模块接收板为基础,进行硬件电路设计、移植嵌入式计、移植嵌入式Linux操作系统、制作根文件系统并通过操作系统、制作根文件系统并通过Qtopi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 挖土机司机合同协议书
- 婚庆公司股份合同协议书
- 股票合作协议书合同
- 家具代销合作合同协议书
- 奶茶采购合同协议书范本
- 个人自动离职合同协议书
- 住家保姆服务合同协议书
- 农村建筑砌砖合同协议书
- 员工入股协议书合同简单
- 合同下浮点协议书
- 《罗密欧与朱丽叶》剧本
- 企事业单位投诉处理流程图
- 2022年下半年自贡市自流井区事业单位招聘考试《卫生公共基础》题库含专家精析
- 2022年港澳台联考语文真题
- 市政工程投资估算编制办法(建标XXXX164号)
- 水性漆涂装线项目环境影响报告表
- 七年级(下)第一章 活动1 网络与社会生活(第一课时)
- (研究生)商业伦理与会计职业道德ppt教学课件(完整版)
- 机床刀具行业报告:以山特维克为鉴
- 高速铁路路基声屏障桩基试桩方案
- 手术质量与安全分析报告模板
评论
0/150
提交评论