引言
GPS是Global Positioning System的简称,是利用导航卫星进行测时和测距的全球定位系统,它具有精度高、全天候和全球覆盖能力,将GPS应用于时钟倒计时系统能实现高精度时间显示功能,基于GPS的高精度,倒计时牌是卫星测时技术,计算机技术及通信技术三者的有机结合。从功能模块上看,整个系统分为GPS测时接收系统和时钟显示系统,它主要完成以下功能:
◆ 定时接收GPS卫星发送的数据并进行识别和缓存;
◆ 对GPS测时数据进行格式转换,以使编码格式适于接收;
◆ 在给定时间内刷新DS12C887型时钟的时间;
◆ 读DS12C887时间,进行倒计时换算并显示。
硬件设计
基于GPS的高精度倒计时牌的硬件结构较为简单,它包括控制模块和显示模块两部分,图1所示是其电路图。
◇ 控制模块
AT89C52单片机是整个控制系统的核心,用于完成对串行口控制器的初始化和数据读写,还要对接收的各种数据进行识别、转储及显示。由于日本光电公司的GSV-15型OEM GPS接收板传输的数据以串行方式输出,它的一帧为10位、波特率为4800bit,与MCS-51型单片机串口输入输出格式匹配,所以利用单片机串行口直接从OEM接收数据,而DS12C887具有提供较高精度年、月、日、时、分、秒时间的功能,对其校准后,在掉电情况下,10年之内仍能准确的进行计时,并且能与单片机直接相连。
◇ 显示模块
本系统利用74HC595来实现串行方式控制数码管显示,因而占用口线少,硬件结构简单,74HC595型串/并转换移位寄存器具有锁存和3态输出功能。14脚(SER)为串行输入端;12脚(RCLR)为移位时钟端。可在上升沿将14脚数据移入寄存器;11脚(SRCLR)为锁存时钟端,可在上升沿锁存数据;8脚(E)为3态输出控制端,接低电平时输出数据。
单片机输出数据和移位时钟,在时钟上升沿时将数据移入74HC595,P1.0输出数据,在移位脉冲上升沿到来时数据移出。P1.1输出移位脉冲。P1.2输出锁存脉冲。数据出现在并行输出端上经74HC07驱动数码管显示,由于数据已被锁存,在传送下一组数据时,前一组数据的内容不变,以此方式进行数据的传送和显示。由于在控制模块中已用单片机的串行口接收OEM板内容,所以在显示模块软件中要将P1.0、P1.1、P1.2定义为模拟的串行口。这样,P1.0、P1.2、P1.3就可以作为串行口来使用。
软件设计
◇ 主程序
软件设计的主程序部分包括对单片机自身的机制的设置和对串行口的初始化等,图2所示是其主程序流程图。
◇ GPS的测时接收
GPS的测时接收数据由串行口接收,由单片机对其进行读入、识别、转换及存储等操作,在程序开始时,首先识别接收信号,看其是否是要接收的信号,OEM板接收的时间信号的字头为GPZDA。由于接收的时间信号是ASC II码。所以要将接收的数据转化为二进制数。由于接收的时间为格林威治时间,所以必须转化为北京时间,然后将转化后的时间写入DS12C887中,DS12C887是一种比较准确的计时电路,它不需要时刻接收GPS信号,设计时可规定1小时接收1次GPS信号,其接收子程序流程如图3所示。
◇ 时钟倒计时显示
此程序主要用于模拟串行口,以便读取DS12C887的数据,并利用74HC595对其数据进行显示,其流程如图4所示。
◇ 倒计时子程序
以从现在到2008年1月1日为例来说明其设计,首先由单片机读DS12C887的时间单元,并将其存放在以69H为起始的单元中,先读取月份,利用查表的方法计算其下月份到预定时间的天数。然后再利用查表方式判断其月份是31天、30天、28天或29天,然后将查表得到的天数减去读取日期,这样将二个天数相加就会得到实际天数。进行时、分、秒的计算时,首先要把2008年1月1日0点0时0秒转化为2008年12月31日23点59时60秒,这样,直接利用时、分、秒响箭就能得到相差的时、分、秒。倒计时流程如图5所示。
结束语
本文所述的是基于GPS的高精度、无误差倒计时牌经调试运行和参数整定后,运行稳定可靠,连续长期运行积累的误差为零,当时的时间精度误差小于15ms。本系统的控制模块结构简单,便于实际开发应用。
关键字:单片机 模块 时钟
引用地址:
基于GPS的高精度无误差倒计时牌设计
推荐阅读最新更新时间:2024-05-13 18:14
单片机延时汇编语言计算方法
我们用汇编语言写单片机延时10ms的程序(用的是12MHz晶振的 MCS-51),可以编写下面的程序来实现: MOV R5,#5 ① D1: MOV R6,#4 ② D2: MOV R7,#248 ③ DJNZ R7,$ ④ DJNZ R6,D2 ⑤ DJNZ R5,D1 ⑥ RET ⑦ 这个延时程序共有七条指令,现在就每一条指令执行的次数和所耗时间进行分析: 第一条, MOV R5,#5 在整个程序中只执行一次,且为单周期指令,所以耗时1 s, 第二条, MOV R6
[单片机]
基于MSP430系列单片机设计多功能血糖仪
引言 当前市场上血糖仪种类繁多,外形结构千奇百态,而价格和精度却大相径庭;且价格和精度难以兼得。原因在于没有找到一款合适的微处理器。另外,出于屏幕尺寸的限制,界面普遍采用英文字符显示,这给中国病人上带来一定的困惑。 随着电子技术的发展,微处理器功能日益增强,价格日趋降低。有必要选出一款功能强大而价格便宜的微处理器来重新设计血糖仪。本系统选用的MSP430系列微处理器使上述设想成为可能。 原理 血糖仪是根据电生物化学原理——施加一定电压于经酶反应后的血液产生的电流会随着血液中的血糖浓度的增加而增加——设计的。通过精确测量出这些微弱电流,并根据电流值和血糖浓度的关系,反算出相应的浓度。所以,确定这个关系是问题
[单片机]
如何快速解决RSM隔离模块应用问题
RS-485总线优点众所皆知,并且为保证通信的稳定性,都会使用隔离RS-485模块进行信号隔离。但在RS-485实际组网时,或多或少会遇到不能通信、通信出错、RS-485收发器损坏等情况,其中究竟为何?本文将深度剖析RS-485组网问题。 1、应用问题; 当出现通信错误或者不能通信时首先判断应用是否符合表 1中的应用情况。 表 1 RS-485总线应用情况 表 1中三种应用情况分别属于终端电阻、上下拉电阻、控制脚以及逻辑输入侧电平的问题,下面对其进行详细分析。 1)终端电阻问题 若RS-485总线上接有终端电阻,且所用RS-485收发器门限电平是±200mV,则可能出现表 2中所述的异常现象。 表 2
[嵌入式]
C51 液晶显示1602模块
代码: #include reg52.h #define uchar unsigned char #define uint unsigned int uchar num; uint i,j; sbit rs=P3^5; 定义液晶数据命令选择端 sbit wr=P3^6; 定义液晶读写选择端 sbit lcden=P3^4; 定义液晶使能选择端 sbit dula=P2^6; sbit wela=P2^7; uchar code table1 = study every day ; uchar code table2 = thanks for reading ; void delay(uint x) { fo
[单片机]
基于AT89C51控制器与显示模块的公交车液晶显示报站系统设计
1 引 言 公交车对提升城市形象、促进社会经济发展起到积极推动作用。但在我国偏远的西部和经济还不太发达的一些地方,公交车的发展还明显跟不上人们日益增长的物质需求,如2009 年3 月,康定县才成为四川藏区第一个开通公交服务的城市。对于我国二级以下的城市,目前公交车报站的情况大多还存在以下问题: ①没有自动报站,实行人工报站;②有自动报站,却停留在单一的语言报站上;③LED站台数字编号(比如002) 显示;④LED 汉字显示屏,但屏幕显示内容单一。这些在乘客对路线不熟悉或在乘车拥挤的情况下,势必会给乘客带来不便。本文设计了公交车报站系统液晶显示汉字的控制电路,并在Proteus 仿真平台上完成了模拟。 2 Proteus 介绍
[单片机]
基于51单片机的汽车中网扫描灯设计
0 引言 LED产业的迅猛发展给照明和装饰都带来了不小的冲击,特别是LED与汽车的结合更是当前的热门话题。汽车中的阅读灯、示宽灯、刹车灯,甚至照明大灯都渐渐出现了LED的身影。当然作为装饰用的仪表灯,扫描灯和底盘灯也不甘落后,本文介绍了一种LED扫描灯的设计和制作。 1 系统构成 本系统由高亮LED灯条、汽车中网扫描灯控制器构成。控制器中又包含逻辑控制(单片机最小系统)部分、电源供电部分、电源驱动部分和电路延时部分。具体框图如图1所示。 图1 系统框图 2 线路设计 图2是本设计的逻辑控制部分,采用经典的8051单片机最小系统,型号为STC89C52RC,STC系列的单片机最方便的是只留出P3
[单片机]
C51单片机的定时器计数器怎么用?
方法有很多的,给你一个,你可以调试一下,你可以通过不同的晶振去计算定时器初值,如果你懂定时器这部分很好调通的 #include sbit p1_0=P1^0; int i; //全局变量 void timing(void) //晶振为3.6864M { TMOD|=0x01; //定时器T0,工作方式1 TH0=0xC3; TL0=0xC7; //这两个寄存器存的是计数器的计数开始的值,这两个值累加至溢出后正好是50ms ET0=1; //使T0中断可以溢出 EA=1; //开启总中断 TF0=0; //溢出位清零 TR0=1; //开启T0 } /********定时中断
[单片机]
STM32单片机控制蓝牙的电路
蓝牙模块,是一种集成蓝牙功能的PCBA板,用于短距离无线通讯,按功能分为蓝牙数据模块和蓝牙语音模块。蓝牙模块是指集成蓝牙功能的芯片基本电路集合,用于无线网络通讯,大致可分为三大类型:数据传输模块远程控制模块等。一般模块具有半成品的属性,是在芯片的基础上进行过加工,以使后续应用更为简单。 原理与结构 作为取代数据电缆的短距离无线通信技术,蓝牙支持点对点以及点对多点的通信,以无线方式将家庭或办公室中的各种数据和语音设备连成一个微微网(Pico-net),几个微微网还可以进一步实现互联,形成一个分布式网络(scatter-net),从而在这些连接设备之间实现快捷而方便的通信。本文介绍蓝牙接口在嵌入式数字信号处理器OMAP5910上的
[单片机]