基于单片机GPS定位信息显示系统设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
一、系统整体概述 (2)
(一)主要内容 (2)
(二)系统方案的总体设计 (2)
二、硬件设计 (3)
(一)硬件总体结构框图 (3)
(二)单片机的介绍 (3)
1. STC89C52的简介 (3)
2. STC89C52引脚图 (4)
(三)GPS(UBLOX NEO 6M)模块介绍 (4)
1. UBLOX NEO 6M简介 (4)
2. UBLOX NEO 6M性能和管脚定义 (5)
(四)LCD(12864)模块介绍 (5)
1. LCD(12864)简介 (5)
2. LCD(12864)引脚介绍 (6)
3. LCD(12864)操作时序 (6)
(五)硬件电路PCB板的绘制 (6)
1. 原理图的绘制 (6)
2. PCB板的绘制 (7)
3. 实际硬件电路 (8)
三、软件设计 (9)
(一)软件设计思路 (9)
(二)模块化软件设计 (9)
1. GPS接收模块设计 (9)
2. 单片机模块设计 (11)
3. 显示模块设计 (11)
四、系统调试与结果 (13)
(一)硬件调试 (13)
(二)软件调试 (13)
(三)设计结果 (14)
五、总结 (16)
参考文献 (17)
附录 (18)
一、系统整体概述
(一)主要内容
在学习C51系列单片机和GPS定位原理以及GPS相关知识的理论知识基础上,我们需要在种类繁多的单片机和GPS类型中选择合适的单片机和GPS模块,GPS模块的作用是用来接收卫星信号然后提取相应的信息,单片机作为本次设计系统的控制核心,对GPS模块接收到的信息进行处理,然后用液晶显示屏实时显示预设的数据信息。
系统的具体实现主要由软硬件设计结合完成。硬件设计核心是单片机最小系统的设计,然后在最小系统的基础上设计本次设计所需的外围电路,借助成品GPS模块,完成硬件电路的焊接,该设计硬件电路设计并不复杂,而且体积小便于携带。软件设计的核心内容是实现GPS模块与单片机的通信进而完成系统设计的要求,因为模块化设计具有功能清晰、调试方便等优点,而且在不同平台上移植方便,所以这次设计的思路是采用模块化设计,整个软件开发环境用Keil 软件,采用C语言编程,硬件则为使用Altium Designer。
(二)系统方案的总体设计
本次设计的目标是要在单片机的基础上完成GPS定位信息显示系统设计。根据设计预设的要求,我们设计是以单片机为控制核心,控制GPS接收模块,最后利用液晶显示设备就可以实现系统设计目标。
市场上单片机种类很多,C51系列单片机,STM系列单片机等等。通过考虑单片机的普适性、所具备的功能、具体I/0口的性能以及价格是否经济实用等因素,本次设计采用C51系列单片机。系统整体是由硬件设计和软件设计两部分设计而成,采用C51系列单片机、GPS定位模块、LCD液晶显示模块设计而成。硬件设计主要由单片机(STC89C52)、GPS模块(UBLOX NEO 6M)、LCD12864液晶显示模块等组成;接收GPS模块传送的数据信息是软件设计的重点,进而获得当前所处位置的经纬度、航向和海拔等信息。
二、硬件设计
(一)硬件总体结构框图
硬件总体结构框图如图2-1所示。
本次设计系统的硬件电路主要由下面几部分构成:
第一,接收模块电路。GPS模块负责锁定卫星,然后把信息传送给单片机。
第二,控制模块电路。以STC89C52单片机为控制核心,读取GPS模块传送的数据,然后把读取的数据送到液晶显示屏即实现了单片机的控制作用。
第三,液晶显示电路。51单片机控制液晶显示电路,在液晶显示屏进而可以显示GPS模块读取的数据信息。
第四,电源部分电路。整个系统的正常工作需要电源部分为其提供电源。
此外,硬件电路中还会涉及一些使单片机正常工作的外围电路,以保证单片机正常工作。
(二)单片机的介绍
1. STC89C52的简介
STC89C52是STC公司生产的一种控制器。MCS-51内核是该单片机的经典内核,而且在STC89C52上做了很多的创新,使其不仅具有传统51单片机所具有的功能,而且引进了很多创新的功能,使STC89C52的应用范围更加广泛。STC89C52具体的使用标准可以查阅相关书籍和芯片技术手册,更多资料不再说明。
2. STC89C52引脚图
图2-2 STC89C52引脚图
(三)GPS(UBLOX NEO 6M)模块介绍
1. UBLOX NEO 6M简介
本次课程设计使用的GPS(UBLOX NEO 6M)模块是一个完整的成品接收模块,具有高性能、低功耗的优点,能满足我们本次设计定位的要求。GPS模块实物图如图2-2所示。
图2-3 GPS模块实物
2. UBLOX NEO 6M性能和管脚定义
(3)精度
2D平面:2.5m[平均] 漂移:<0.02m/s
2D平面:2m[平均],有WAAS辅助授时精度:1us (4)UBLOX NEO 6M管脚定义见表2-5所示。
(四)LCD(12864)模块介绍
1. LCD(12864)简介
LCD(12864)液晶显示模块类型属于汉字图形类型的液晶模块,可在显示屏上显示数字、符号和汉字等字符。可与CPU直接连接,设有串行和并行这两种控制方式。具有多种功能可供使用,具体使用哪种功能可查阅芯片资料。
2. LCD(12864)引脚介绍
D0~D7是数据口,RS(CS)是数据/命令选择端(串片选),R/W(SID)端口是读/写选择端(串数据口),E(SCLK)是使能信号(串同步时钟信号),PSB端口是串/并选择端口,RST是我们熟悉而且常用的复位端口(低电平有效),BLA与BLK则是并不常用的背光电源正极端和负极端。LCD(12864)的引脚如图2-6所示。
图2-6 LCD12864引脚
3. LCD(12864)操作时序
12864控制可使用两种时序,分别为并行操作时序和串行操作时序。(具体内容太多,可参考12864数据手册。)
(五)硬件电路PCB板的绘制
大二时由于自学过Altium Designer,又参加飞思卡尔智能车竞赛绘制电路板,加上平时经常绘制一些较为复杂的PCB,所以此系统所有硬件由Altium Designer设计完成。
1. 原理图的绘制
根据系统要求绘制的硬件原理图如图2-6所示。其中包括了单片机最小系统电路(复位、震荡、程序下载接口等电路)、电源电路、12864显示屏接口电路和led指示灯电路。