《基于51单片机的GPS定位系统的设计.doc》由会员分享,可在线阅读,更多相关《基于51单片机的GPS定位系统的设计.doc(22页珍藏版)》请在金锄头文库上搜索。
1、第一章 51单片机概述- 1 -1.1 单片机概述- 1 -1.2 51单片机系统的结构组成及性能- 1 -1.2.1 结构组成- 1 -1.2.2 80C51单片机引脚介绍- 2 -1.2.3 单片机主要部件功能- 3 -1.3 8255芯片介绍- 4 -1.3.1 工作原理- 5 -1.3.2 工作方式- 5 -1.4 8250芯片介绍- 6 -1.5 LCD液晶显示器介绍- 6 -第二章 GPS定位系统简介- 7 -2.1 GPS定位系统的发展- 7 -2.2 GPS定位系统的基本原理- 7 -2.3 GPS模块的主要技术参数- 8 -2.4 GPS定位系统的组成部分- 8 -2.5 G
2、PS定位的流程- 9 -2.6 GPS定位系统的特点- 9 -第三章 硬件连接电路- 11 -3.1 电路设计要求与目的- 11 -3.2 电路设计原理- 11 -3.3 GPS与单片机、LCD的电路连接- 12 -第四章 软件设计- 13 -4.1 系统工作流程- 13 -4.2 软件的设计- 13 -4.2.1 程序框图- 13 -4.2.2 实验连线- 15 -4.2.3 运行实验程序GPS.ASM- 15 -4.3 数据显示与分析- 17 -4.3.1 数据显示- 17 -4.3.2 数据监测分析- 17 -第五章 实验总结- 19 -参考文献- 20 -第一章 51单片机概述1.1
3、单片机概述单片机(Single chip microcomputer)微型计算机简称单片机,是典型的嵌入式微控制器(Microcontroller Unit),常用英文字母的缩写MCU表示单片机。单片机诞生于1971年,经历了SCM、MCU、SoC三大阶段,早期的SCM单片机都是8位或4位的。其中最成功的是INTEL的8051,此后在8051上发展出了MCS51系列MCU系统。基于这一系统的单片机系统直到现在还在广泛使用。单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。单片机由运算器、控制器、存储器、输入输出设备构成,相当于一个微型的计算机(最小系
4、统),和计算机相比,单片机缺少了外围设备等。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。它最早是被用在工业控制领域。1.2 51单片机系统的结构组成及性能AT89S51单片机与Intel公司的MCS-51单片机系列的80C51型号单片机在芯片结构与功能上基本相同,外部引脚完全相同。主要不同点是89系列产品中程序存储器全部采用快擦写存储器,简称闪存。AT89S51单片机与AT89C51单片机主要不同点是增加了ISP串行接口(可实现串行下载功能)和看门狗定时器。1.2.1 结构组成单片机集
5、成了一台微型计算机的各个主要部分,其中主要由运算器、控制器、存储器、输入输出设备等构成,各部分通过内部总线相连。其主要功能部件如下:l 8位中央处理单元(CPU)l 128B/256B的数据存储器RAMl 4KB/8KB的片内ROM/EPROMl 4个8位并行I/O口P0-P3l 2个定时器/计数器l 5个中断源l 1个全双工的UART(通用异步接收、发送器)l 片内振荡与时钟产生电路组成框图如下图所示:图中的P0、P1、P2、P3为4个可编程I/O口,TED、RXD为串行口的输入、输出端,以上各部分通过总线相连。AT89C51/AT89C51与AT89S51/AT89S51在结构上的主要不同
6、点是没有看门狗、双DPTR和ISP端口。在AT89S51单片机内部除了有CPU、RAM、ROM和定时器、串行口等主要功能部件外,还有驱动器、指令寄存器、锁存器、地址寄存器等辅助电路部分。1.2.2 80C51单片机引脚介绍单片机的40个引脚大致可分为4类:电源、时钟、控制和I/O引脚。 电源: VCC - 芯片电源,接+5V; VSS - 接地端; 时钟:XTAL1、XTAL2 - 晶体振荡电路反相输入端和输出端。 控制线:控制线共有4根: ALE/PROG:地址锁存允许/片内EPROM编程脉冲 ALE功能:用来锁存P0口送出的低8位地址 PROG功能:片内有EPROM的芯片,在EPROM编程
7、期间,此引脚输入编程脉冲。 PSEN:外ROM读选通信号。 RST/VPD:复位/备用电源。 RST(Reset)功能:复位信号输入端。 VPD功能:在Vcc掉电情况下,接备用电源。 EA/Vpp:内外ROM选择/片内EPROM编程电源。 EA功能:内外ROM选择端。 Vpp功能:片内有EPROM的芯片,在EPROM编程期间,施加编程电源Vpp。 I/O线80C51共有4个8位并行I/O端口:P0、P1、P2、P3口,共32个引脚。P3口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)。1.2.3 单片机主要部件功能1. 中央处理器(CPU)中央处理器是单片机最核心的部分,主要完成
8、运算和控制功能,这一点与通用的微处理器基本相同,只是它的控制功能更强。80C51系列的CPU是一个字长为8位的中央处理单元,它对数据的处理是按字节为单位进行的。在执行程序中起关键作用的是。CPU的主要由运算器与控制器这两大部分组成。.控制器控制器是用来统一指挥和控制计算机工作的部件,它的功能是接收来自存储器中的逐条指令,进行指令译码,并通过定时和控制电路,在规定的时刻发出各种操作所需的全部内部控制信息及CPU外部所需控制信号,使各部分协调工作,完成指令所规定的各种操作。它由指令部件、时序部件、操作控制部件等三部分组成。指令部件由16位程序计数器PC、8位指令寄存器、8位指令译码器等组成。.运算
9、器运算器是用于对数据进行算术运算和逻辑操作的执行部件,包括算术/逻辑部件ALU、累加器ACC、暂存寄存器、程序状态字PSW、通用寄存器、BCD码运算调整电路等。2. 数据存储器(内部RAM)数据存储器用于存放变化的数据。在80C51单片机中通常把控制与管理寄存器(简称专用寄存器)在逻辑上划分在内部RAM中,因为其地址与RAM是连续的。AT89S51单片机中数据存储器的地址空间为256个RAM单元,但其中能作为数据存储器供用户使用的仅有前面的128个,后128个被专用寄存器占用。3. 程序存储器(内部ROM)程序存储器用于存放程序和固定的常数。通常采用只读存储器,只读存储器有多种类型,89系列单
10、片机中全部采用了闪存,51单片机内部配置了4KB闪存。 通过片外16位地址线可扩展到64KB,两者是统一编址4. 定时/计数器定时/计数器用于实现定时和技术功能。51单片机中有2个16位的定时/计数器。并以其定时或计数结果对计算机进行控制。定时时靠内部分频时钟频率计数实现,做计数器时,对P3.4(T0)或P3.5(T1)端口的低电平脉冲计数。5. 并行I/O口并行I/O口主要用于实现与外部设备中数据的并行输入/输出,有些I/O口还具有其他多种功能。51单片机共有4个8位的I/O口(P0、P1、P2、P3)以实现数据的输入输出。P0P3是AT89S51单片机与外界联系的4个8位双向并行I/O端口
11、。6. 串行口AT89S51有一个UART全双工异步串行口,用以实现单片机和其它设备之间的串行数据传送。该串行口功能较强,既可作为全双工异步通信收发器使用,也可作为移位器使用。RXD( P3.0)脚为接收端口,TXD(P3.1)脚为发送端口。AT89S51还有一个ISP全双工同步串行口,用于实现串行在线下载程序。7. 时钟电路时钟电路的作用是产生单片机工作所需要的时钟脉冲序列。AT89S51单片机CPU执行指令的一系列动作都是在统一的时钟脉冲控制下进行的。为了便于CPU时序进行分析,人们按指令的执行过程规定了时钟周期、机器周期、指令周期。.振荡周期定义为时钟脉冲频率的倒数,又称为时钟周期。.机
12、器周期是指完成一个基本操作所需要的时间称为机器周期。80C51系列单片机的一个机器周期等于六个状态周期,即12个时钟周期。.指令周期是执行一条指令所需要的时间,一般由若干个机器周期组成。8. 中断系统中断系统的主要作用是对外部或内部的中断请求进行管理和处理。AT89S51的中断系统主要由几个与中断有关的特殊功能寄存器、中断允许、顺序查询逻辑电路等组成。AT89S51单片机共有5个中断源,其中2个外部中断源和,3个内部中断源,即2个定时/计数中断和1个串行口中断。1.3 8255芯片介绍8255是Intel公司生产的可编程并行I/O接口芯片,有3个8位并行I/O口。具有3个通道3种工作方式的可编
13、程并行接口芯片(40引脚)。 其各口功能可由软件选择,使用灵活,通用性强。8255可作为单片机与多种外设连接时的中间接口电路。1.3.1 工作原理8255作为主机与外设的连接芯片,必须提供与主机相连的3个总线接口,即数据线、地址线、控制线接口。同时必须具有与外设连接的接口A、B、C口。由于8255可编程,所以必须具有逻辑控制部分,因而8255内部结构分为3个部分:与CPU连接部分、与外设连接部分、控制部分。1)与CPU连接部分根据定义,8255能并行传送8位数据,所以其数据线为8根D0D7。由于8255具有3个通道A、B、C,所以只要两根地址线就能寻址A、B、C口及控制寄存器,故地址线为两根A
14、0A1。此外CPU要对8255进行读、写与片选操作,所以控制线为片选、复位、读、写信号。各信号的引脚编号如下:(1)数据总线DB:编号为D0D7,用于8255与CPU传送8位数据。(2)地址总线AB:编号为A0A1,用于选择A、B、C口与控制寄存器。(3)控制总线CB:片选信号、复位信号RST、写信号、读信号。当CPU要对8255进行读、写操作时,必须先向8255发片选信号选中8255芯片,然后发读信号或写信号对8255进行读或写数据的操作。2)与外设接口部分根据定义,8255有3个通道A、B、C与外设连接,每个通道又有8根线与外设连接,所以8255可以用24根线与外设连接,若进行开关量控制,
15、则8255可同时控制24路开关。各通道的引脚编号如下:(1)A口:编号为PA0PA7,用于8255向外设输入输出8位并行数据。(2)B口:编号为PB0PB7,用于8255向外设输入输出8位并行数据。(3)C口:编号为PC0PC7,用于8255向外设输入输出8位并行数据,当8255工作于应答I/O方式时,C口用于应答信号的通信。3)控制器8255将3个通道分为两组,即PA0PA7与PC4PC7组成A组,PB0PB7与PC0PC3组成B组。如图7.5所示,相应的控制器也分为A组控制器与B组控制器,各组控制器的作用如下:(1)A组控制器:控制A口与上C口的输入与输出。(2)B组控制器:控制B口与下C口的输入与输出。1.3.2 工作方式8255芯片有三种工作方式,即:方式0(基本输入输出方式):这种工作方式不需要任何选通信号。A口、B口以及C口的高4位和低4位都可以被设定为输入或输出。方式1(选通输入/出方式):在这种工作方式子下,A、B、C三个口被分为两组