资源描述
洛阳理工学院毕业设计(论文)
基于单片机的GPS定位系统设计
摘 要
GPS是全球定位系统英文名词Global Positioning System的缩写。该系统是美国布设的第二代卫星无线电导航系统。它能为用户提供全球性、全天候、连续、实时、高精度的三维坐标、三向速度和时间信息。其目的是在全球范围内对地面和空中目标进行准确定位和监测。现在,GPS接收机作为一种先进的导航和定位仪器,已在军事及民用领域得到广泛的应用。
本设计是基于AT89C51单片机来实现的简易GPS定位信息显示系统。本控制系统主要完成接受数据、时间显示、经度显示、纬度显示等常规功能。此方案基于单片机、GPS模块和12864液晶显示屏等硬件, 并应用C语言实现了GPS信号的提取、显示及基本的键盘控制操作等。经过实践测试 ,这种接收机可以达到基本GPS信息的接收以及显示,可以做到体积小、精度高、连续导航,并可广泛应用于个人野外旅游探险、出租汽车定位及海上作业等领域。
关键词:GPS定位系统,单片机,液晶显示屏
DESIGN OF GPS RECEIVER BASED ON 51 SINGLE CHIP COMPUTER
ABSTRACT
GPS is the abbreviation of the English term Global Positioning System global positioning system。 The system is the United States laid the second generation satellite radio navigation system. It can provide users with continuous, real-time, global, round—the—clock, high precision three dimensional coordinates, three velocity and time information。 Aimed at targets on the ground and in the air around the world an accurate positioning and monitoring. Now, as an advanced GPS receiver navigation and positioning equipment, has a wide range of applications in military and civilian areas.
This design based on the AT89C51 microcontroller is used to implement a simple GPS positioning information display system。 This control system is mainly done to accept the data, time display, latitude, longitude, and other routine functions。 This program is based on single-chip, GPS module and 12864 LCD display, hardware, c language implementation and application of the GPS signal extraction, display and keyboard control of basic operations。 Practice tests, this receiver can receive and display the basic GPS information。 small size, high accuracy, continuous navigation can be done, and can be widely applied to individuals in the wild tour adventure, hire car positioning and operations at sea, and other areas。
KEY WORDS:GPS positioning system, microcontroller, LCD display
4
目 录
前 言1
第1章 GPS系统简介3
1。1 GPS的由来及发展3
1。2 GPS定位系统的基本原理3
1.3 GPS模块定位流程4
1。4 本设计的主要工作4
第2章系统硬件设计5
2。1 单片机5
2。1。1 AT89C51单片机的结构原理6
2。1.2 AT89C51单片机的主要特性7
2。2 GPS模块7
2。2。1 概述7
2.2。2 主要技术参数及产品特点8
2.2.3 管脚介绍及与单片机的接口电路8
2.3 显示部分10
2。3.1 LCD12864概述11
2.3。2 基本特性12
2.3.3 模块接口说明12
第3章系统软件设计14
3.1 系统软件概述14
3.2 软件程序的编写14
3。2.1 初始化模块15
3.2。2 数据接收处理模块15
第4章系统调试17
4.1 硬件调试17
4.2 软件调试17
4.3 系统测试结果18
结 论20
谢辞21
参考文献22
附 录24
外文资料翻译44
前 言
GPS卫星导航全球定位系统问世以来,在导航、定位领域发展势头迅猛,引起世界各界人士的关注.具备高精度、全天候、全球覆盖、高效率、多功能、操作简便等特点。广泛应用于地面车辆跟踪和城市智能交通管理方面。车载GPS系统配合电子地图,适时掌握自己的方位与目的地,对锁定目标进行跟踪、监控,从而达到防御、求援之目的。满足对机动车辆的指挥、调度、管理、监控、导航、通讯等需求.改变了人们的工作方式,提高了工作效率,带来了巨大的社会效益和经济效益。随着人们对运输载体的监控、跟踪以及智能化管理要求的提高,GPS在中国即将进入爆发性发展阶段,蕴藏着巨大的发展空间.
GPS系统包括三大部分:空间部分-—GPS卫星星座;地面控制部分——地面监控系统;用户设备部分——GPS信号接收机.GPS系统通过使用来自多个卫星的信号来确定地面或近地面任何位置的移动接收机的位置.我国的卫星定位技术综合了GPS卫星导航全球定位,GSM全球数字蜂窝移动通信,GIS地理信息,计算机网络技术全方位的技术应用.利用GPS卫星信号接收机,跟踪这些卫星的运行,对所接收到的GPS信号进行变换、放大和处理,测量传播时间,解译导航电文.接收机24h不间断地接收卫星发送的数据参数,算出接收的三维位置、三维方向以及运动速度和时间信息。
全球定位系统GPS是近年来开发的最具有开创意义的高新技术之一,其全球性、全能性、全天候性的导航定位、定时、测速优势必然会在诸多领域中得到越来越广泛的应用.在发达国家,GPS技术已经开始应用于交通运输和道路工程之中。目前,GPS技术在我国道路工程和交通管理中的应用还刚刚起步,相信随着我国经济的发展,高等级公路的快速修建和GPS技术应用研究的逐步深入,其在道路工程中的应用也会更加广泛和深入,并发挥更大的作用。
自20世纪90年代GPS系统向全世界免费开放以来, GPS系统已广泛应用在导航、大地测量、精确授时、线路巡检及车辆防盗等领域.接收机是获得 GPS系统服务的关键设备,目前已有从手持式到台式数百种型号的接收机可供用户选择。通用接收机功能齐全,除了信号接收单元外,往往还配置有显示单元和人机对话设备.这一方面为用户提供了极大的方便,但 GPS定位接收机价格比较昂贵而且使用灵活性低,难以满足特定条件下的应用需求,造成了资金浪费。因此,众多用户期望按照自己的使用环境和性能要求设计和使用个性化的GPS定位接收机.
本文首先介绍了GPS系统由来及其发展、基本概念、GPS接收机的工作原理及接收机定位流程。然后对单片机及其串口通信、M—87及其NMEA-0183语句的数据格、液晶显示器进行了详细论述,并且设置了所需的外围电路。接着详细地介绍了该GPS接收机的软件设计过程。通过C语言实现了GPS信号的提取、显示等。经过实践测试,这种接收机可以达到基本GPS信息接收以及显示,可以做到方便灵活、优质价廉、精度高、连续导航、抗干扰能力强,并可广泛应用于个人野外旅游探险、出租汽车定位及海上作业等领域.
第1章 GPS系统简介
1.1 GPS的由来及发展
导航卫星定时测距全球定位系统(Navigation Satellite Timing and Ranging Global Position System GPS)是美国第二代卫星导航系统。它在1973年底由美国陆海空三军等单位协调分工提出的能取代旧式的导航设备,为军用舰船、飞机车辆等用户提供全球全天候、连续实时服务的高精度三维导航系统。系统由空间部分、地面监控部分和地面接收机部分组成。定位服务包括精密定位服务(PPS)和标准定位服务(SPS)。PPS授权的精密定位系统用户需要密码设备和特殊的接收机。SPS对于普通民用用户,供全世界用户免费、无限制地使用.
由于GPS具有全球覆盖以及精度高、定位速度快、实时性好、抗干扰能力强等特点,近年来在国内外得到广泛的应用,在各个领域发挥了极大的作用,已成为信息时代不可缺少的一部分。各种GPS民用产品的开发,已是经济和社会发展的必然要求,其前景将会非常广阔和光明,尤其是在我国,通过这些年来对它认识不断加深,我国的GPS开发应用也一定会以科技力量推动经济和社会发展的一颗巨星,对我国的经济和社会的发展产生重大的影响。
1。2 GPS定位系统的基本原理
每颗GPS卫星时刻发布其位置和时间数据信号,用户接收机可以测量每颗卫星信号到接收机的时间延迟,根据信号传输的速度可以计算出接收机到不同卫星的距离.同时收集至少4颗卫星的数据时,通过变频、放大、 滤波等一系列处理过程,实现对GPS卫星信号的跟踪、锁定和测量,从而产生计算位置的数据信息(包括:纬度、经度、高度、速度、日期、时间、航向、卫星状况等),经由I/O口输出串行数据.
1。3 GPS模块定位流程
(1)搜索可用卫星,接收卫星信号,与卫星信号同步,提取导航电文信息。
(2)从导航电文中获取计算位置所需的信息,这些信息应该包括时钟信息和星历等数据。
(3)计算卫星的准确位置,这包括计算卫星的高度和方位角,从而进行必要的对流层校正.
(4)计算伪距,并进行电离层校正等.
(5)重复上述过程,对所有可用卫星进行相应的计算.
(6)进行其他必要的校正,例如根据卫星信号到达GPS接收机的时间,校正地球旋转所造成的卫星位置的偏差。
(7)根据定位原理,计算出GPS接收机的初始位置,并将其转换成所需的坐标格式进行显示或输出。
(8)加入闰秒和UTC(标准世界时)时间补偿计算当前精确的时间。
(9)分析可用卫星的信息,计算最好的DOP(Dilution of Precision),进行选星,并计算和修正GPS接收机的位置,给出GPS接收机的三维坐标和准确的时间信息.
1。4 本设计的主要工作
本文的主要目的是在GPS和单片机的理论知识上,选用Atmel公司的AT89C51提取GPS模块的接收数据并由12864液晶显示接收数据。
在此设计过程中,主要熟悉Holux-M-87 GPS模块各性能指标,学习NMEA封包并懂得使用NMEA输出命令,结合单片机串行通信知识,实现对GPS接收到的卫星信息进行提取,并在12864液晶显示平台上选择性的显示数据。
洛阳理工学院毕业设计(论文)
第2章系统硬件设计
课题要求研制的GPS接收机要具有接收、处理、显示信息的功能。硬件上必须有相应的接收处理部分、显示部分和配置输入部分,同时需要处理器实现各部分功能的联合.由于单片机集成度高,系统结构简单,价格低廉,同时技术成熟,处理器部分使用单片机实现。
本课题设计的硬件系统主要由:单片机、GPS模块、显示部分等组成.如图2—1所示:
图2—1 系统框图
2.1单片机
硬件核心控制任务是由单片机来完成的,单片机的采用使硬件电路设计大大简化,并且性能更加可靠.目前,可采用的微处理器有很多种,如:MCS-51、Me6sol、280、eopsoo等8位单片机,虽然16位单片机在1982年已经问世,但其发展并不像人们想象的那样快,尽管在某些性能指标方面超过了8位单片机,但从性价比及开发周期等综合效益上却不如8位单片机,因此应用并不普及。
在本次设计中,采用MCS—51系列单片机,虽然信号处理和计算的功能相对差些,但其结构简单、体积小、性价比高、可靠性高、功耗小及应用范围广,适合于小型化作业。因此,选择AT89C51单片机作为微控制器。它具有全双工异步通信口,可与M-87接口进行数据读取、处理和输出。GPS信号接收和处理部分与单片机进行串口通信时,由于都采用了TTL电平,故两者之间不需进行电平转换就可直接通信。
2.1.1 AT89C51单片机的结构原理
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压、高性能CMOS8位微处理器,俗称单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效精简微控制器.AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价格低廉的方案,其引脚排列如图2—2所示:
图2—2 AT89C51引脚图
引脚XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器,石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度.
2。1.2 AT89C51单片机的主要特性
(1) 与MCS-51兼容。
(2) 4K字节可编程闪烁存储器。
(3) 寿命:1000写/擦循环。
(4) 数据保留时间:10年.
(5) 全静态工作:0Hz-24MHz。
(6) 三级程序存储器锁定.
(7) 128×8位内部RAM.
(8) 32可编程I/O线。
(9) 两个16位定时器/计数器。
(10) 5个中断源。
(11) 可编程串行通道。
(12) 低功耗的闲置和掉电模式。
(13) 片内振荡器和时钟电路。
2。2GPS模块
2。2。1概述
根据设计需要,GPS模块选用M-87,如图2-3所示。M—87是一种根据低耗电Mediatek GPS解决方案设计的超小型25。4×25.4×7 mmGPS引擎机板。它是一个高性能、低功耗、小型并很容易联合的GPS模块,应用范围广泛。它对于导航应用提供高达-159dBm的绝佳灵敏度与快速的第一次定位时间.M-87是您想要内嵌在使用于GPS服务的PDA、PND、行动电话、可携式装置设计中的最佳选择。
图2—3 M-87GPS模块
2.2。2主要技术参数及产品特点
主要技术参数:
(1)工作电压:3。5~5V直流。
(2)接收灵敏度:-159dBm.
(3)体积大小:25.4×25。4×7 mm。
(4)模块重量:7克。
(5)定位精度:〈3m
(6)系统内存:4MB
产品特点:
外形精巧,灵敏性高,可搜寻多达32个卫星频道,能够快速进行位置修正.低耗电,可使用RTCM-in,内建WAAS/EGNOS/MSAS解调器,支援NMEA0183 V 3.01数据通讯协定。定位服务的即时导航,适用于汽车导航、船只导航、舰队管理、AVL和定位服务、自动导航、个人导航或旅游装置、追踪装置系统和地图装置应用.
2。2。3管脚介绍及与单片机的接口电路
GPS模块管脚说明如表2—1所示:
表2—1 管脚说明
管脚
管脚名称
功能描述
1
VCC-5V
+3。5~5。5Vdc电量输入
2
TXA
串行数据输出端口A (CMOS 3V:
Voh 2。4V Vol 0。4V Ioh=Iol=2mA)
3
RXA
串行数据输入端A (CMOS 3V:
Vih≧0.7*VCC Vil≦0.3*VCC)
4
RXB
串行数据输入端B (CMOS 3V:
Vih≧0.7*VCC Vil≦0.3*VCC)
5
GND
接地
6
时钟/复位
时钟 :1PPS时钟信号输出(Vil≦0.2V脉冲
宽度10ms).
复位: 复位输入
电源输出的5 V直流电压送到变换器中,基准频率经过频率变换和频率综合分别送到解调器中和C/A码发生器中,经过一系列处理后再输入到伪码和相位测量,经测量后将数据送到CPU,CPU收到信号后做出相应的判断并送出命令,控制显示器和各个部件的工作状态.下面是GPS模块M-87与单片机的连口电路,如图2—4所示:
图2—4单片机和GPS接收机的接口电路
GPS 模块接收到卫星信号后,通过全球定位系统导航,它计算、定位和确定时间信息,通过串口移植到AT89C51单片机.AT89C51单片机解码定位导航和时间信息,并转换成时间、经度、纬度信号,然后将它们发送到单片机液晶显示模块LCD12864模块。
2.3 显示部分
LCD12864与单片机的接线原理图如图2-5所示:
如图2-5 LCD12864与单片机的接线原理图
晶振电路提供单片机的时钟信号,电容C1与电阻R1提供MCU的复位信号;LCD12864的DB0~DB7接受单片机的P0口发送的数据,P2。0~P2。2控制LCD的正常工作,P2。6端口控制LCD液晶屏的亮度。
2。3。1LCD12864概述
带中文字库的LCD12864是一种具有4位、8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块,其显示分辨率为128×64,内置8192个16×16点汉字,和128个16×8点ASCII字符集。利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面.可以显示8×4行、16×16点阵的汉字,也可完成图形显示。低电压低功耗是其又一显著特点。由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁的多,且该模块的价格也略低于相同点阵的图形液晶模块。
2.3。2基本特性
(1)低电源电压:(VDD:+3。0~+5。5V)。
(2)显示分辨率:128×64点。
(3)内置汉字字库,提供8192个16×16点阵汉字(简繁体可选)。
(4)内置128个16×8点阵字符。
(5)2MHZ时钟频率.
(6)显示方式:STN、半透、正显。
(7)驱动方式:1/32DUTY,1/5BIAS.
(8)视角方向:6点。
(9)背光方式:侧部高亮白色LED,功耗仅为普通LED的1/5~1/10。
(10)通讯方式:串行、并口可选。
(11)内置DC—DC转换电路,无需外加负压。
(12)无需片选信号,简化软件设计。
(13)工作温度:0℃~+55℃;存储温度:—20℃~+60℃。
2。3.3模块接口说明
表2-2 LCD12864管脚说明
管脚号
管脚名称
电平
管脚功能描述
1
VSS
0V
电源地
2
VCC
3.0+5V
电源正
3
V0
—
对比度(亮度)调整
4
RS(CS)
H/L
RS=“H",表示DB7——DB0为显示数据
RS=“L”,表示DB7-—DB0为显示指令数据
5
R/W(SID)
H/L
R/W=“H”,E=“H”,数据被读到DB7——DB0
R/W=“L”,E=“H→L”, DB7--DB0的数据被写到IR或DR
6
E(SCLK)
H/L
使能信号
7
DB0
H/L
三态数据线
8
DB1
H/L
三态数据线
9
DB2
H/L
三态数据线
10
DB3
H/L
三态数据线
11
DB4
H/L
三态数据线
12
DB5
H/L
三态数据线
13
DB6
H/L
三态数据线
14
DB7
H/L
三态数据线
15
PSB
H/L
H:8位或4位并口方式,L:串口方式(见注释1)
16
NC
-
空脚
17
/RESET
H/L
复位端,低电平有效(见注释2)
18
VOUT
—
LCD驱动电压输出端
19
A
VDD
背光源正端(+5V)(见注释3)
20
K
VSS
背光源负端(见注释3)
*注释1:如在实际应用中仅使用串口通讯模式,可将PSB接固定低电平,也可以将模块上的J8和“GND"用焊锡短接。
*注释2:模块内部接有上电复位电路,因此在不需要经常复位的场合可将该端悬空。
*注释3:如背光和模块共用一个电源,可以将模块上的JA、JK用焊锡短接。
10
第3章 系统软件设计
3.1 系统软件概述
图4-1 系统程序流程图
图4-1为GPS全球定位系统的主程序流程图。系统软件主要由初始化模块、数据接收处理模块组成。软件程序见附录A。
3。2软件程序的编写
3.2。1初始化模块
初始化模块完成开机上电后对单片机、液晶显示器和GPS 模块的初始化工作。对单片机设置串口工作模式、设置波特率和中断工作模式;对液晶显示器设置开机画面和显示模式;完成对GPS 模块串口的成功通信。
3.2。2数据接收处理模块
数据接收处理模块负责处理从GPS接收到的数据。在单片机串口收到信息后,先判别是否为语句引导头“$”,再接收信息内容,然后根据语句标识区分出信息类别以对收到ASCII码进行处理显示。若整个数据接收正确,便对数据进行处理;若接收不正确,则重新进行接收.本设计中,接收时主要提取并存储以下数据内容:当前日期、时间、定位状态、纬度、经度.特别注意的是GPS发送的时间是世界统一时,与我国的时区相差八个小时,所以还要将时间作转换。北京时间应在UTC时间上加上8小时才是准确的北京时,在超出24小时时应作减24小时处理。转换时间要考虑到年月日的变更.数据更新率为每秒一次.系统工作时GPS模块不断得到新的数据,单片机不断刷新RAM,处理完后的数据送液晶显示器显示.数据接收处理程序流程图如下面图4—2所示.
图4—2 数据接收处理程序流程图
11
第4章系统调试
4.1 硬件调试
按照电路原理图对器件进行连接,各个管脚要相互对应,在没通电之前,先用万用表检查线路的正确性,并核对元器件的型号、规格是否符合要求。并特别注意电源的正负极以及电源之间是否有短路,并重点检查地址总线,数据总线,控制总线是否存在相互间的短路或其他信号线的短路。
通电后检查引脚的电位,仔细测量各点电位是否正常,尤其应注意单片机的插座上各点电位,若有高压,将有可能损坏单片机仿真器。
在断电情况下,用仿真插头将所连接电路与单片机仿真器的仿真接口相连,为软件调试做好准备。
4.2软件调试
在对GPS接收到的卫星信息进行处理时,碰到较为麻烦的问题是在对接收到的时间信息进行转换上。直接从卫星接收到的时间是UTC时间,北京时间应在UTC时间上加上8小时才是准确的北京时,在超出24小时时应作减24小时处理.
刚开始将对时间转换的算法放在主函数中处理,程序如下:
if(g_Ptr == 2) //接收到正确的数据帧
{
i = g_DisTime[0]—’0’ ;//提取时间的小时位高位并转换码型
j = g_DisTime[1]—’0';//提取时间的小时位低位并转换码型
j = i*10 + j+ 8; //在UTC时间上加上8个小时
if (j 〉= 24) //判断得到的时间是否超过24小时,超出变作减24处理
{
j — = 24;
}
g_DisTime[0] = j/10+’0’; //将北京时间高一位作码型变换并赋予高一位显示
g_DisTime[1] = j%10 +’0’;//将北京时间高二位作码型变换并赋予高二位显示
}
在调试中出现一个问题,在做了以上的处理后,时间的小时位数据并不完全正确,高位显示的与北京时间相同,但低位却与UTC时间相同.在做了各种尝试(如在UTC时间上做加9处理、直接给六位时间g_DisTime[5]赋值等)后总结出这样一个问题,以上的算法处理只对六位数据位的高一位处理有效,低五位的显示始终都是正确UTC时间.经过分析,初步认定上面的程序并没有被完全的执行。因GPS接收模块源源不断的传送数据给单片机处理,在运行过程中定位信息大约每秒钟更新一次,在主函数中对收到的时间进行处理时有可能会出现还没来得及处理完毕时便接收到下一帧数据,故时间的处理就可能会有只对高一位处理完成而没完成处理好低五位时又进入了串行口中断,那么液晶显示的结果就是经过处理的高一位(北京时间)和未经处理的低五位(UTC时间)。考虑到以上原因,将原放在主函数的时间转换处理程序放置在到中断时一收到UTC时间就对其进行转换处理。经过了调试,终于在液晶上显示出来正确的北京时间,证明了以上的分析、推断的正确性。
4。3系统测试结果
经过多次的测试和改进,2012年5月12日上午在洛阳理工学院实验楼D楼进行测试,接收天线放置于户外接收信号,启动GPS接收系统,经过测试,液晶显示的结果如下图5—1:
图5—1 液晶显示结果
14
结 论
本课题是在了解了当前GPS导航系统的条件下,自行开发一套GPS接收系统.
GPS接收机的开发和研制,主要是了解GPS的原理,熟悉GPS接收机的工作原理及其各部分工作流程。GPS信号处理这一块由M—87实现,通过M-87与MCS-51兼容系列单片机串口相连,配备了所需的外围电路,同时配有液晶显示器,可以显示字符,并详细介绍了该GPS接收机的硬件和软件设计。开发的GPS接收机已经可以正常工作,同时显示的定位精度和定位速度等各方面的指标都满足要求。通过实验模拟仿真,结合本课题的人机界面、参数设置与计算等,能够满足课题要求,可以实现导航功能。
通过本课题的完成,我对GPS的原理有了深入的理解,熟练地掌握了GPS接收机的工作原理。同时,我对单片机的应用有了更深入的掌握,提高了单片机外围电路设计和软件设计的经验和能力.这些对我今后工作的提高都有所帮助。
同时,由于水平有限和时间问题,还存在许多不足.没有进行误差分析,且定位数据可能有误差,这些方面有待改进和提高。
谢 辞
在此,首先我要感谢耐心细致、知识丰富,给我们很大帮助的王老师!在毕业设计期间,从设计题目的选择,到资料的查找、原理的讲解,再到后来毕业论文的结构布局和报告内容的修改都给予我们耐心的辅导。在这里我要向老师表示最衷心最诚挚地感谢!我们有很多基础理论知识掌握不牢,一面帮我们查漏补缺,一面发挥我们的特长,让我们的课题能够顺利有序地进行到满足要求。
其次,我还要感谢我们课题组一起奋斗的同学,在共同的学习中,我们互帮互助,愉快地完成了毕业设计!
此外,还要感谢以前的代课老师,他们在各方面都给了我不少帮助,愿他们工作愉快,身体健康!
最后,向在这三年期间帮助过、关心过我的老师和同学致以衷心地感谢,愿大家身体健康、工作愉快轻松、生活幸福安康!
参考文献
[1]洪大永.GPS全球定位系统技术及应用[M]. 福建: 厦门大学出版社,1998
[2]高锋.单片微型计算机原理与接口技术[M]。 北京: 科学出版社,2003
[3]徐惠民,安德宁。 单片微型计算机原理接口与应用[M]。 北京:北京邮电大学出版社,1996
[4]郑晓霞。基于AT89S51单片机实验开发系统设计[D]. 内蒙古大学 2009
[5]戴佳, 戴卫恒。 51单片机C语言应用程序设计[M].北京: 电子工业出版社, 2006
[6]何立民。从Cygnal 80C51F看8位单片机发展之路[J]。 单片机与嵌入式系统应用, 2002年,第5期: 5~8
[7]郝振涛,张建北,江恒,乔曼。GPS定位监控装置[P].中国专利:CN201629819U,2010-11-10
[8]俞海红,陈素珊,何勇。GPS定位试验及提高定位精度的方法研究[J]. 浙江大学学报(农业与生命科学版).2004年,第6期: 76~81
[9]邹于丰,基于AT89C2051单片机的GPS时钟系列[J]。电子世界.2011年,第5期: 39
[10]张俊中, 杨传宽, 雷伟伟。GPS技术在工程测量中的应用[J]. 黑龙江科技信息。 2008年,第25期: 17
[11]张海龙。 基于单片机的GPS定位显示系统[J]. 网络与信息。2009年,第4期: 47
[12]GPS Forward Model Computing Study On CPU/GPU Co—Processing Parallel System Using CUDA[A]。 Proceedings of the 2010 IEEE International Conference on Progress in Informatics and Computing[C].2010
[13]Yu Wang 1; a; Zhenyao Zheng 2; b; Department of Physics; Xiamen University;Xiamen。The Key Technology Research of GPS Positioning System Based onSingle Chip Microcomputer[C].2010
[14]吴迅. 使用单片机的简易GPS经纬度信息显示系统[J].电子世界。 2009年,第1期: 46~48
[15]张新强。点阵LCD驱动显控原理与实践[M]。北京:北京航天航空出版社, 2010, 3
[16]莫禾胜,唐晓辉。 基于LCD液晶显示器的时间显示系统设计与制作[J]。 科技信息. 2010年,第21期: 106~107
[17]吴忻。基于GPS定位和电子地图的最佳路径搜索[D]。 西安电子科技大学 2006
[18] Ling Huang。 GPS Information Processing System Based on Single Chip Microcomputer.Modern Electronics Technique[C]。 2007
47
附 录
附录A 软件程序
#include”reg51.h”
#include "stdio.h”
#include "intrins。h”
#include"System。h”
#define FALSE 0
#define TRUE 1
sbit SCLK = P1^7;
sbit MISO = P1^6;
sbit MOSI = P1^5;
sbit LCD_SH = P1^2;
sbit LCD_CS = P1^1;
#define LCD_SCLK SCLK
#define LCD_MISO MISO
#define LCD_MOSI MOSI
#define LCD_16dot_mode 1
#define LCD_12dot_mode 2
#define LCD_DRAW_mode 3
#define LCD_FD_DRAW_mode 4
#define LCD_FD_DATA 1
#define LCD_FD_ADDR 0
#define LCD_FD_CMD 0
//LCD命令及参数定义
#define LCD_CMD_HEAD 0x80
#define LCD_CMD_END 0x93
#define LCD_16DOT_MODE_CMD 0x81
#define LCD_12DOT_MODE_CMD 0x82
#define LCD_DRAW_MODE_CMD 0x83
#define LCD_FD_MODE_CMD 0x84
#define LCD_SET_CONTRAST_CMD 0x85
#define LCD_SET_BK_LCD_CMD 0x86
#define LCD_CLR_CMD 0x88
#define LCD_SLEEP_CMD 0x89
#define LCD_Cursor_CMD 0x8b
#define LCD_Hilight_CMD 0x8c
#define LCD_BK_Light_Ctl_Cmd 0x8d
#define LCD_ALL_Hilight 0
#define LCD_TXT_Hilight 1
#define LCD_DRAW_PIC_CMD 0x90
//命令画图模式下的画图模式设置
#define LCD_DRAW_WHOLE_PIC 0x01
#define LCD_DRAW_SPECIAL_ICON 0x02
#define LCD_DRAW_PROGRESS 0x03
#define LCD_EXIT_SLEEP_STA 0x9f
#define LCD_SET_NEW_POS_WORD 0x20
#define LCD_SET_DEF_POS_WORD 0x00
#define LCD_BK_ON0x01
#define LCD_BK_OFF 0x00
#define LCD_START_ADC_CMD 0x87
#define LCD_READ_CMD 0x00
unsigned char idata temp_bu[20];
unsigned char idata temp_buf[20];
unsigned char idata gps_time1[12];
unsigned char idata gps_mode[3];
unsigned char idata gps_longitude[15];
unsigned char idata gps_longitude_dir[3];
unsigned char idata gps_latitude[15];
unsigned char idata gps_latitude_dir[3];
unsigned char idata gps_speed[8];
unsigned char idata gps_speed_dir[8];
unsigned char idata gps_time2[10];
unsi
展开阅读全文