基于单片机和GPS的时钟信息显示系统
GPS(global positioning system)全球定位系统是利用美国24颗GPS地球卫星所发射的信息而进行定位、导航、授时等服务的系统。自1993年GPS系统向世界免费开放以来,得到了世界各地各行业的广泛应用。GPS系统广泛地应用在导航、大地测量、精确授时、车辆定位及防盗等领域。本文介绍使用日本古野公司的 GPS-OEM接收板GN-77N及AT89C52单片机实现时钟信息接收和显示的设计方法。
1 系统的硬件接口
GN-77N是日本古野公司推出的GPS-OEM接收板,该接收板为并行8通道接收机,可同时跟踪8颗卫星,具有高精度授时、定位速度快、超低功耗、超小体积、插针式安装、超强的抗电磁干扰能力等强大功能,在各种各样的应用过程中为用户提供最佳的解决办法。
1.1 GN-77N的引脚功能
该接收板的引脚功能及说明如表1所示。
表1 GN-77N接收板的引脚功能及说明
接口编号 | 信号名称 | 功 能 | 说明 |
1 | RD1 | 串行输入1 | NMEA-0183格式 |
2 | TD1 | 串行输出1 | NMEA-0183格式 |
3 | GND | 地 | |
4 | VCC | 主供电电源输入 | 5V±5% |
5 | VBAK | 备份电源输入 | 2.5~5.5V |
6 | 1PPS | 1秒脉冲输出 | |
7 | VANT | 天线供电 | 5V±5% |
8 | RD2 | 串行输入2 | RTCM-104 |
9 | TD2 | 串行输出2 | RTCM-104 |
1.2 AT89C52单片机和GPS的时钟信息显示系统硬件电路
系统采用AT89C52单片机,12MHZ晶振,串口方式1接收GPS信息,P1口和P2口及74LS138作为6位七段共阳LED显示接口,可以轮流显示实时时间及其它GPS信息数据。系统硬件电路连接图如图1所示。
图1系统硬件电路连接图
2 系统的软件接口
2.1 GN-77N模块数据格式
本设计中GN-77N的通信波特率设为4800,1个起始位,8个数据位,1个停止位,无奇偶校验。使用串口1的NMEA-0183格式输出。 NMEA-0183是美国海洋电子协会为海用电子设备制定的标准格式,数据代码为ASCII码字符,其中GPGGA语句中传送的格式为:
$GPGGA,1>,2>,3>,4>,5>,6>,7>,8>,9>,M,10>,M,11>,12>*hhCR>LF> 其中
$GPGGA为起始引导符及语句格式说明(本句为GPS定位数据),1> 为UTC时间,时时分分秒秒格式。
例如:$GPGGA,104530,3105.3535,N,12207.1258,E,1,03,13.8,46.5,M,12.3,M,,*4A传送的信息,意思为UTC时间为10时45分30秒,位置在北纬31度5.3535分,东经122度7.1258分,普通GPS定位方式,接收到3颗卫星,水平精度13.8米,天线离海平面高度46.5米,所在地离地平面高度12.3米,校验和为4AH。
2.2时钟信息显示系统的软件设计
系统程序包括主程序、数据接收子程序、时间转换子程序和显示子程序。设接收到的时间信息放在显示缓冲区中,显示缓冲区的地址为60H,61H,…,65H,依次存放时时分分秒秒。程序如下:
ORG 0000H
LJMP MAIN
ORG 0030H
MAIN: MOV PSW,#00H
MOV PCON,#80H ;波特率翻倍2400×2=4800BPS
MOV SCON,#50H ;设置成串口1方式
MOV TMOD,#20H ;T1工作在模式2上
MOV TH1,#0F4H ;设置初值,按2400BPS
MOV TL1,#0F4H ;设置初值,按2400BPS
SETB TR1 ;启动定时器T1
CLR ES
CLR TI
CLR RI
LOOP: JNB RI,$
LCALL INT
LJMP LOOP
INT: LCALL INT1
LCALL RECEIVE
LCALL SETDATA
LCALL DISP
RET
INT1: LCALL SS ;判断$GPGGA
XRL A,#24H
JZ INT2
LJMP INT1
INT2: LCALL SS
XRL A,#47H
JZ INT3
LJMP INT1
INT3: LCALL SS
XRL A,#50H
JZ INT4
LJMP INT1
INT4: LCALL SS
XRL A,#47H
JZ INT5
LJMP INT1
INT5: LCALL SS
XRL A,#47H
JZ INT6
LJMP INT1
INT6: LCALL SS
XRL A,#41H
JZ INT7
LJMP INT1
INT7: LCALL SS
RET
RECEIVE: LCALL SS ;时间接收,时分秒
MOV 60H,A
LCALL SS
MOV 61H,A
LCALL SS
MOV 62H,A
LCALL SS
MOV 63H,A
LCALL SS
MOV 64H,A
LCALL SS
MOV 65H,A
RET
SS: JBC RI,SS1
LJMP SS
SS1: MOV A,SBUF
RET
SETDATA: MOV A,60H ; 时间转换子程序
……
SETH: MOV A,60H
……
ADD A,#8 ;把UTC时间转换成北京时间
MOV B,A ;如果时间大于24则减24
SUBB A,#24
JC SETH1
LJMP SETH2
SETH1: MOV A,B
SETH2: MOV B,#10
div AB
ADD A,#30H ;把处理后的字符转换成ASCII码
……
RET
DISP: MOV R0,#60H ;显示子程序
……
RET
3 结束语
由于计算机技术、网络技术、通信技术、GPS定位技术等相关技术的发展以及GPS技术所具有的全天候、高精度和自动测量的特点,作为先进的测量手段和新的生产力,已经融入了国民经济建设、国防建设和社会发展的各个应用领域。因此开展对GPS系统的研究和应用,将极大地提高生产力,并产生巨大的经济效益。本文介绍的基于单片机和GPS的时钟信息显示系统可以获得精确的时间和定位信息,为人们的日常生活提供便利,避免了因时钟不准确而带来的不便。同时,也为GPS系统的应用开拓了一个较好的用途,具广泛的现实
- 基于GPS和GPRS的小型追踪器设计方案(05-20)
- 基于GPSOne技术的个人定位终端(07-30)
- 2010年中国(成都)电子展胜利闭幕(08-15)
- 基于DSP的车载GPS/DR组合导航系统硬件设计(09-13)
- ARM-Linux平台下GPS信号的采集与处理研究(07-25)
- 基于MiniGUI的GPS导航定位系统设计(02-20)