在系统中, 使用HTM4002A的点阵图形液晶模块,该模块使用S6A0069控制驱动器,内置国标一、二级字库,该液晶模块不仅显示字符、汉字,而且也可以显示连续、完整的图形。 该模块使用单电源5V供电,无需负压。
3.5 逻辑电路及输出
逻辑电路主要由CPLD来实现,采用了Altera的 MAX 7000S系列的EPM-7128,基于电可擦除可编程只读存储器(EEPROM)的MAX7000产品采用先进的CMOS工艺制造,提供从32到512个宏单元的密度范围,速度达3.5 ns的管脚到管脚延迟。支持在系统可编程能力(ISP),可以在现场轻松进行重配置。
EPM-7128产生本地秒脉冲,它在有GPS秒脉冲时不起作用,在失去GPS信号时代替GPS给单片机提供秒脉冲输出。如图2所示,信号1即为本地秒脉冲,它是依据前1S的1PPS信号上升沿为起始时刻,定时1S得到的,同时为了在一定误差情况下使自产生的脉冲不至于覆盖正常工作时的GPS秒脉冲,所以加了一段延时△t,而在检测到失去GPS信号时,就要去掉△t,以代替GPS秒脉冲。信号2为EPM-7128输出的一个窄脉冲信号,用来屏蔽脉冲干扰,它分布在GPS秒脉冲上升沿两侧,与GPS秒脉冲进行与操作。在窄脉冲之外的脉冲干扰就会被屏蔽。这样就实现了防止GPS信号失效和抗干扰脉冲功能。
输出模块包括MAX232、DS90C031、74HC245等多种芯片,它们将EPM-7128的输出转换为232、差分及TTL等多种电气特性的秒脉冲信号的输出,为各种应用提供便捷的解决方案。
4 软件设计
本系统采用C51编程[2]实现,主程序流程见图3.首先初始化,OEM板输出的数据是以数据流的形式输出,采集的起始时刻未必是一帧数据的开始时刻,所以在数据采集时,必须先判断字头块,在接收到字头块后,开始采集数据。设定单片机的波特率为4800bit/s,使其与GPS OEM 板的传输波特率一致。给OEM 板发送一条指令,使其发送的0183 数据格式为“$GPGGA”,该指令预先存在数据存储器里,用循环方式顺次从程序存储器里取出数据就可循环发送,然后OEM 板将输出相应格式的数据。单片机对接收的信息进行判断,由于接收到的时间是协调世界时(UTC),因此在此时间上加上8小时才是准确的北京时间,并对时间信息做相应的处理,然后进行显示。
5 结论
本文采用的GPS OEM 板的串口输出的协调世界时进行授时,其操作简便,实用性强,并且提供了丰富的秒脉冲接口,能满足大多数用户的要求。在GPS信号正常时具有较高的精度,授时系统经实验室测试,误差小于100ns,结果较为满意。在GPS信号失效时也能保证相当的精确性,但其精度和稳定度与恒温晶振的频率精度和稳定度有直接的关系,如果CPLD采用精度更高的时钟信号,结果将会更为理想。