数据的采集,进行相应的信号处理,并通过单片机接口输出至液晶显示模块显示必要的数据。
由此可知:GPS接收模块将接收到的GPS卫星导航电文调制解码,转换为标准格式后,送给单片机,当单片机接收到GPS发送过来的导航电文后,经过片内程序的识别筛选,将筛选出来的导航电文送到显示模块,并且最后通过液晶显示器按照要求显示出来。
7
第三章 基于单片机的GPS硬件电路设计
3.1 基于单片机的GPS硬件电路总体结构
根据总体设计方案,该基于单片机的GPS硬件电路设计主要由GPS信号接收部分(SiRF Star II GPS信号接收模块)、控制芯片(STC89C52单片机)、显示部分(12864LCD液晶显示模块)这几部分构成。其大体结构框图如图3.1所示。
图3.1 基于单片机的GPS硬件总体结构框图
3.2 基于单片机的GPS定位信息显示系统设计硬件电路简介
3.2.1 STC89C52简介
STC89C52是一个低电压,高性能CMOS 8 位单片机,采用40引脚双列直插封装方式。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容[4]。
STC89C52引脚如图3.2所示:
8
图3.2 STC89C52引脚图
其引脚说明如下: (1) 主电源引脚(2根):
VCC(Pin40):电源输入,接+5V电源; GND(Pin20):接地线。 (2) 外接晶振引脚(2根):
XTAL1(Pin19):片内振荡电路的输入端; XTAL2(Pin18):片内振荡电路的输出端。 (3) 控制引脚(4根):
RST (Pin9):复位引脚,引脚上出现2个机器周期的高电平将使单片机复位; ALE/PROG(Pin30):地址锁存允许信号; PSEN(Pin29):外部存储器读选通信号;
EA/VPP(Pin31):程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。
(4) 可编程输入/输出引脚(32根):
9
STC89C52单片机有4组8位的可编程I/O口,分别为P0、P1、P2、P3口,每个口有8根引脚,共32根。
P0口(Pin39~Pin32):8位双向I/O口线,名称为P0.0~P0.7; P1口(Pin1~Pin8):8位准双向I/O口线,名称为P1.0~P1.7; P2口(Pin21~Pin28):8位准双向I/O口线,名称为P2.0~P2.7; P3口(Pin10~Pin17):8位准双向I/O口线,名称为P3.0~P3.7。 STC89C52主要功能如表3.1所示。
表3.1 STC89C52主要功能
主要功能特性
兼容MCS51指令系统 32个双向I/O口 3个16位可编程定时/计数器中断 2个串行中断 2个外部中断源 2个读写中断口线 低功耗空闲和掉电模式 (1) 时钟电路
STC89C52内部有一个用于构成振荡器的高增益反相放大器,引脚RXD和TXD分别是此放大器的输入端和输出端。时钟可以由内部方式产生或外部方式产生。内部方式的时钟电路如图3.3(a) 所示,在RXD和TXD引脚上外接定时元件,内部振荡器就产生自激振荡。定时元件通常采用石英晶体和电容组成的并联谐振回路。晶体振荡频率可以在1.2~12MHz之间选择,电容值在5~30pF之间选择,电容值的大小可对频率起微调的作用[5]。
外部方式的时钟电路如图3.3(b)所示,RXD接地,TXD接外部振荡器。对外部振荡信号无特殊要求,只要求保证脉冲宽度,一般采用频率低于12MHz的方波信号。片内时钟发生器把振荡频率两分频,产生一个两相时钟P1和P2,供单片机使用。
8K可反复擦写Flash ROM 256x8bit内部RAM 时钟频率0-24MHz 可编程UART串行通道 共6个中断源 3级加密位 软件设置睡眠和唤醒功能
10
(a)内部方式时钟电路 (b)外部方式时钟电路
图3.3 时钟电路
(2) 复位
复位是单片机的初始化操作。其主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序。除了进入系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也需按复位键重新启动[6]。
除PC之外,复位操作还对其他一些寄存器有影响,它们的复位状态如表3.2所示。
表3.2 一些寄存器的复位状态
寄存器 PC ACC PSW SP DPTR P0-P3 IP IE TMOD
复位状态 0000H 00H 00H 07H 0000H FFH XX000000B 0X000000B
00H
寄存器 TCON TL0 TH0 TL1 TH1 SCON SBUF PCON
复位状态 00H 00H 00H 00H 00H 00H 不定 0XXX0000B
RST引脚是复位信号的输入端。复位信号是高电平有效,其有效时间应持续24个振荡周期(即二个机器周期)以上。若使用颇率为6MHz的晶振,则复位信号持续时间应超过4us才能完成复位操作。
整个复位电路包括芯片内、外两部分。外部电路产生的复位信号(RST)送至施密特触发器,再由片内复位电路在每个机器周期的S5P2时刻对施密特触发器的输出进行采样,然后才得到内部复位操作所需要的信号[7]。
11