基于单片机的GPS定位系统设计

  • 格式:docx
  • 大小:95.57 KB
  • 文档页数:4

基于单片机的GPS定位系统设计

摘要:GPS全球定位系统在实际生活中被广泛应用,是当今信息数字化时代发展中的重要组成部分。因其具有性能好、精度高、应用广的特点,使其成为迄今为止最好的定位导航系统。本次设计以单片机为核心,通过GPS接收模块接收GPS卫星信号,然后将数据发送到单片机的串口。单片机执行串口中断,提取所需要的数据并进行处理,最后将处理的数据通过液晶屏显示,成功实现定位。本系统由52单片机、GPS模块M-87、12864液晶屏等硬件组成,应用C语言编程,完成了GPS信息的提取、处理和显示。系统可以显示当地经度、纬度、时间、高度等信息,是一台体积小巧、携带方便、可以独立使用的全天候实时的定位导航设备。

关键词:单片机;GPS接收模块;12864液晶屏;串行通信

总体方案的设计:

本次设计以单片机(STC89C52)为核心,首选通过GPS(M-87)接收模块接收GPS卫星信号,然后将数据发送到单片机的串口,单片机执行串口中断,提取所需要的数据并处理,最后将处理后的数据通过液晶显示屏(LCD12864)显示。

该GPS定位系统硬件电路主要由以下几个部分组成:

(1) 控制部分:以STC89C52单片机为核心的小型控制系统;

(2)接收部分:以GPS(M-87)接收模块为核心的GPS接收机;

(3)显示部分:由LCD12864构成的液晶显示电路;

(4)电源部分: 由三节1.5V干电池串连而成的电源进行供电。

该GPS定位系统软件部分主要由以下几个部分组成:

(1)串口初始化程序:对TMOD、TH1、TL1、REN、RI、TI等进行赋初值; (2)液晶初始化程序:令PSB=1使LCD为并口方式及LCD开、关标设定等;

(3)数据接收与处理程序:编写数据提取与处理程序,实时接收与处理数据。

(4)延时程序:编写延时函数,延时函数可以控制液晶屏内容的显示时长;

由此可知:GPS接收模块将接收到的GPS卫星导航电文调制解码,转换为标准格式后,通过串行口将数据送给单片机,当单片机执行串口中断收到GPS接收模块发来的数据,经过片内程序的识别筛选,将筛选出来的数据进行处理后送到显示模块,最后通过液晶显示屏按照要求显示。

1)硬件电路设计

(1)根据总体设计方案,基于单片机的GPS定位系统硬件电路设计主要由控制芯片(STC89C52单片机)、GPS信号接收部分(M-87信号接收模块)、显示部分(LCD12864液晶显示模块)、电源模块这几部分构成。

(2)STC89C52 内部时钟方式电路与复位电路如图1。

图1 内部时钟方式电路(左)按键电平复位电路(右)

(3)整体系统硬件电路连接图如图2。 图2 系统硬件电路连接图

2)软件设计

(1)软件设计时采用了模块化的思想,模块化的设计思想:方便软件的调试;方便软件的移植;在不同的硬件平台上运行该软件只需要更改相应的软件模块就可以实现。该软件分为液晶初始化模块,串口初始化模块,数据接收模块,数据处理送显模块这四个主要模块,软件程序流程图如图3。

图3 软件程序流程图

(2)串口初始化模块完成开机上电后对单片机设置串口工作模式、设置波特率和中断工作模式;完成对GPS 模块串口的成功通信。

(3)数据接收程序负责从GPS接收模块接收数据。在单片机串口收到信息后,先判别是否为语句引导头“$”,如果是再接收信息内容,将信息内容存储到单片机指定的存储地址中,接收完数据后判别是否为GPGGA语句信息,如果不是重新接收,如果是则进入数据处理模块。

效果与结论:

按照电路原理图对器件进行连接,将准确无误的程序经过Keil软件仿真生成(.hex)文件,用程序烧入软件将生成的文件导入单片机STC89C52中。将写入程序的单片机插入硬件电路单片机管座,系统上电,液晶显示器12864准确显示出实时位置的经纬度、时间、海拔高度。

基于单片机的GPS定位系统设计所测量出来的数据中,经纬度、时间、海拔高度是准确的。在手机信号比较差的区域旅行、登山,携带一台这样的小型设备,将给我们的出行安全带来更好的保障,方便我们实时知道自己的实际位置。

参考文献

[1] 李洪涛,王广运.GPS运用程序设计[M].北京:科学出版社,1999.

[2] 黄智伟.GPS接收机硬件电路设计[M].北京:国防工业出版,2005.

[3]张毅刚,彭喜元,彭宇.单片机原理及运用[M].北京:高等教育出版社,2010.

[4] 赵建科,孙锦风,段凤云. 基于AT89S52单片机的GPS显示系统的设计[J].天津大学学报,2012.