0 引言
GPS是具有高、全天候和覆盖能力的卫星定位系统。将GPS应用于时钟倒计时系统中能实现高时间显示功能。本文介绍的基于GPS的高、倒计时牌是卫星测时技术、计算机技术及通信技术三者的有机结合。该设计将整个系统分为GPS测时接收和时钟显示两部分。可定时接收GPS卫星发送的数据并进行识别和缓存,并可对GPS测时数据进行格式转换,以使其编码格式适于接收,同时可在给定时间内刷新DSl2C887的时钟时间,并读取DS12C887时间,以进行倒计时和显示。
1 系统硬件设计
基于GPS的高倒计时牌的硬件结构较为简单,它包括控制模块和显示模块两部。
|
1.1 控制模块
AT89C5l型单片机是整个控制系统的,可用于完成对串行口控制器的初始化和数据读写,此外,还要对接收的各种数据进行识别、转储及显示。
由于日本光电公司的GSV-15型OEM GPS接收板传输的数据是以串行方式输出的一帧10位、波特率为4 800 bit信号,该信号与MCS-51型单片机的串口输人输出格式匹配,所以可利用单片机串行口直接从OEM接收数据。
DS12C887具有提供较高年、月、日、时、分、秒时间的功能,对其进行校准后,可在掉电情况下,10年之内仍能准确地进行计时,并且能与单片机直接相连。
1.2 显示模块
本系统利用74HC595来实现串行方式控制的数码管显示,而且占用口线少,硬件结构简单。74HC595型串/并转换移位寄存器具有锁存和3态输出功能,它的14脚(SER)为串行输入端;12脚(RCLR)为移位时钟端,可在上升沿将14脚数据移人寄存器;11脚(SRCLR)为锁存时钟端,可在上升沿锁存数据;8脚(E)为3态输出控制端,该脚接低电平时可输出数据。
利用单片机输出的数据和移位时钟,可在时钟上升沿将数据移人74HC595。P 1.0用于输出数据,可在移位脉冲上升沿到来时将数据移出。P1.1输出移位脉冲,P 1.2输出锁存脉冲。在并行输出端上经74HC07驱动数码管显示。由于数据已被锁存,因此,在传送下一组数据时,前一组数据的内容不变的数据可整个系统即以此方式进行数据的传送和显示。由于本设计在控制模块中是用单片机的串行口接收OEM板内容,所以,在显示软件模块中要将P1.0、P 1.1、P 1.2定义为模拟串行口。这样,P1.0、P 1.2、P 1.3就可作为串行口使用了。
2 系统软件设计
2.1 主程序
本系统的程序包括对单片机自身串行口的设置以及初始化等。
|
2.2 GPS测时接收程序
GPS测时数据可由串行口接收,并由单片机对其进行读入、识别、转换及存储等操作。在程序开始时,首先识别接收信号,看其是否是要接收的信号,OEM板接收的时间信号的字头为GPZ-DA。此外,由于接收的时间信号是ASCⅡ码,所以要将接收数据转化为二进制数。由于接收的时间为格林威治时间,所以必须将其转化为北京时间,然后再将转化后的时间写入DSl2C887中。DS12C887是一种比较准确的计时电路,不需要时刻接收GPS信号。一般1小时接收1次GPS信号即可,其接收子程序流程如图3所示。
|
2.3 时钟倒计时显示
此程序中用模拟串行口来读取DS12C887的数据,然后利用74HC595对其数据进行显示。
|
2.4倒计时子程序
若以计算从现在到2008年1月1日为例,首先由单片机读DSl2C887的时间单元,并将其存放在以69H为起始的单元中。操作时可先读取月份,然后利用查表方法计算其下月份到预定时间的天数。然后再利用查表方式判断其月份是31天、30天,28天或29天,然后将查表得到的天数减去读取日期,这样,将二个天数相加就可得到实际天数。进行时、分、秒计算时,首先把2008年1月1日0点0时0分0秒转化为2007年12月31日23点59时60秒.这样就可以直接利用时、分、秒相减得到相差的时、分、秒。
|
3 结束语
本文所述的基于GPS的高、无误差倒计时牌经调试运行和参数整定后,运行稳定可靠,连续长期运行积累的误差为零,其即时时间误差小于l5 ms。本系统的控制模块结构简单,便于实际开发应用。
免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。