当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]基于 PIC18F8520 的 GPS 精准时钟实现

GPS(Global Positioning System,全球定位系统)是世界上最完善的卫星导航系统。它不仅有覆盖全球的实时、连续的高精度的三维定位能力,同时也有精准的授时功能。利用高度稳定、精确的星载原子钟作为信号源进行时间传输和比对,已成为众多领域获取时间的重要手段。基于此,本文利用GPS所提供的精确授时功能,采用单片机技术,实现了一种GPS时钟,并将时间信息通过LCD进行显示。

系统构成及硬件实现
1 系统构成
GPS时钟系统主要由GPS接收机、单片机、LCD显示器三部分组成,如图1所示。

图1 GPS时钟系统构成框图


GPS接收机
在本系统中,GPS接收机采用Garmin公司的GPS15XL,它是12通道的GPS接收机,体积小,重量轻,功耗低,首次定位和重捕获时间短,有较强抗遮挡和抗干扰能力,性能极其稳定可靠,且操作简单,易于开发。可工作在3.3~5.4V电压范围内,本系统采用+3.3V供电;精密授时类型精度可达±50ns(典型值);具有串行端口,输出为RS232,输入可为RS232或者具有RS232极性的TTL电平,波特率从300~38 400可选,默认为4800,无奇偶校验,8个数据位,1个起始位,1个停止位。GPS15XL输出的数据以美国国家海洋电子协会(National Marine Electronics Association)的NMEA0183 ASCII码接口协议为基础,可输出多条语句,内容包括经度、纬度、速度、方位角、高度、世界时、星历等信息。还可输出Garmin二进制格式信息。非常适合应用于车辆导航、海事导航、电力系统校时等。


对GPS15XL的配置,可以利用单片机通过NMEA 0183语句在程序中实现,也可以利用SNSRCFG软件来进行。配置参数将被保存在永久性存储器中,下次加电时自动生效。为简化设计,本文采用第二种方法,即通过SNSRCFG软件对GPS15XL进行初始化配置。


GPS15XL可以输出两种时间信号:一是包含在串口输出信息中的UTC(Coordinated Universal Time协调世界时)绝对时间(年、月、日、时、分、秒);二是间隔为1s的同步脉冲信号1PPS,其脉冲前沿与UTC的同步误差不超过1μs。本系统主要是利用串口输出的NMEA 0183语句获取UTC时间信息。


NMEA 0183语句以“$”开始,以<CR><LF>,即ASCII字符“回车”(十六进制的0D)和“换行”(十六进制的0A)结束。下面以本文使用的GPRMC语句为例说明其格式:


$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,<12>*hh <CR><LF>
$GPRMC:语句起始标志(Recommended Minimum Specific GPS/TRANSIT Data推荐定位信息)
<1> UTC时间,hhmmss(时分秒)格式
<2>定位状态,A=有效定位,V=无效定位
<9>UTC日期,ddmmyy(日月年)格式
最后的校验码*hh用于做奇偶校验,通常不是必需的,但当周围环境有较强的电磁干扰时则推荐使用校验码。hh代表了“$”和“*”之间所有字符的按位异或值(不包括这两个字符)。
单片机PIC18F8520


系统采用Microchip公司生产的高性能RISC CPU PIC18F8520作为控制器,它内部有32KB的FLASH程序存储器和2KB的SRAM数据存储器、1KB的EEPROM数据存储器;运算速度可达10MIPS;可以工作在DC~40MHz的时钟频率范围之内;具有USART接口,支持RS-485和RS-232,可与GPS模块相连,用来获取时间信息;支持ICSP在线串行编程,便于软件的升级和维护;支持ICD,可以在线调试,缩短开发周期。[!--empirenews.page--]


LCD显示器
系统采用LCD1602作为显示设备。LCD1602液晶显示模块具有体积小、功耗低、显示内容丰富、超薄轻巧等优点,在袖珍式仪表和低功耗应用系统中应用广泛。它可以显示两行,每行16个字符,采用单+5V电源供电,外围电路配置简单,价格便宜,具有很高的性价比。


2 硬件电路
系统的硬件电路如图2和图3所示。

图2 单片机外围电路连接

图3 单片机与GPS模块的连接


电路板上有3.3V和5V两种电压,其中LCD采用5V供电,而单片机和MAX3232工作在3.3V电压下。外部电源为5V,经AS2830转换为3.3V,给单片机和MAX3232供电。从图2中可以看到,单片机的电源脚没有与3.3V直接相连,而是通过J2、J3跳线即可连到3.3V上,也可连到VDD上。这是因为单片机在采用PIC16-MCD2编程器通过ICSP接口进行在线编程时由MCD2供电,这时,单片机电源脚需连接到VDD上(MCD2输出电压VDD为5V);而正常运行时单片机由电路板供电,J2、J3跳线连接到3.3V上,单片机就工作在3.3V,可以降低功耗。


PIC18F8520既有模拟电源、模拟地引脚也有数字电源、数字地引脚,在电路设计中,采用模拟电源、数字电源分离,模拟地、数字地分离,模拟电源和数字电源之间通过磁珠连接,模拟地和数字地通过0Ω电阻在单点连接,以避免模拟信号与数字信号之间的干扰,提高系统的可靠性。

软件实现
软件由主程序和中断子程序组成,在MPLAB IDE v8.53环境下,采用MPLAB C18编译器,用C语言编程实现。


在主程序中进行系统的初始化、数据处理、LCD显示,GPS数据的接收则通过串口中断实现,每收到一条完整的NMEA语句,就设定一个标志,在主程序中通过查询该标志进行UTC时间的提取以及转换成北京时间,再通过LCD显示。由于将复杂的数据处理放到主程序中,这样就可以使中断程序尽量简短,在发生其他中断时,单片机可以及时做出响应,提高了系统的实时性。流程图如图4所示。

[!--empirenews.page--]

图4 流程图


由于GPS模块输出的时间为UTC时间,根据习惯,需转换成本地时间(北京时间),这项工作在主程序中完成。根据本地时间=UTC时间+时区值,而北京位于第8时区,时区值为+8,故北京时间=UTC时间+8。在转换过程中,须对16:00:00—23:59:59 UTC时间作相应的处理,+8后判断小时是否大于24,若大于,则减去24,同时日期+1,另外,还涉及到闰年、大月、小月的处理。


中断服务程序流程图中,串口接收数据时判断字头,只判断了“$”一个字符,这是因为之前已通过SNSRCFG软件将GPS15XL设置为只输出GPRMC一条NMEA语句。

调试及运行
首先,对GPS15XL进行初始化。将GPS15XL通过串口与PC连接好,给GPS15XL上电,用软件SNSRCFG设置初始化信息,波特率设为9600,只输出一条GPRMC语句(要获取UTC日期和时间,一条GPRMC语句就足够了),将这些信息写入OEM板内的永久性存储器中,下次上电时将会自动生效。


然后,通过电路板上预留的ICSP接口,利用PIC16-MCD2编程器将编译好的程序写入单片机。编程时不给电路板供电,单片机通过MCD2供电,须注意电路板上跳线的设置。


最后,将GPS15XL与电路板连接。给电路板和GPS15XL上电,授时接收系统进入正常工作状态,单片机通过RS-232串行方式接收GPS15XL的卫星数据,获取准确的时间信息,并转换成北京时间,通过LCD显示。
注意:使用时,GPS授时天线一定要放在开阔的室外,否则接收不到卫星信号,也就无法获取UTC时间信息。

结语
本文利用PIC18F8520提取GPS高精度时钟,并在LCD上显示,所实现的时钟系统是配电线路故障远程监测及定位系统项目的一部分,经测试,该设计运行稳定,能够为整个系统提供精确的时间信息,具有较高的可靠性、准确性和实用性。此外,还可以将GPS时钟的内核嵌入其他系统,以其时间作为系统时间,例如:金融/证券实时结算、民航/铁路/交通调度系统、各种计算机网络系统、实时通信网络系统、体育彩票和福利彩票等实时销售系统等,应用非常广泛。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

双频GPS是最近手机领域的热门话题,目前很多手机都配备了这项技术。但是,也有网友不知道双频gps是什么意思。为了让大家更好地了解双频gps及其使用的相关信息,本网站为您带来了双频GPS的使用介绍和具体型号的相关内容。

关键字: iPhone 14 双频 GPS

信达生物制药集团高选择性RET抑制剂塞普替尼(40mg & 80mg 胶囊)获得国家药品监督管理局批准,用于治疗转染重排(RET)基因融合阳性的局部晚期或转移性非小细胞肺癌(NSCLC)成人患者、需要系统性治疗的...

关键字: 放射性 TC MT

监管机构周二表示,全球最大的11家银行将合计支付18亿美元罚款,以和解监管机构对其员工使用违反记录保存规则的即时短信应用的调查。这些公司包括美国银行、巴克莱集团、花旗集团、瑞士信贷集团、德意志银行、高盛集团、摩根士丹利、...

关键字: TC SE

(全球TMT2022年9月26日讯)由浪潮信息牵头的国内首批冷板式液冷数据中心核心部件标准通过项目评审和论证,在开放计算标准工作委员会(OCTC)获批立项。 浪潮信息作为标准的主要发起单位和撰写单位牵头,...

关键字: 数据中心 OCT TC OEM

在这篇文章中,小编将为大家带来无人机的相关报道。如果你对本文即将要讲解的内容存在一定兴趣,不妨继续往下阅读哦。

关键字: 无人机 GPS SDR

北京2022年9月20日 /美通社/ -- 近日,国内首批冷板式液冷数据中心核心器件技术规范顺利通过项目评审和论证,在开放计算标准工作委员会(OCTC)获批立项。浪潮信息作为标准主要发起单位和撰写单位,将牵头围绕冷板、连...

关键字: OCT 器件 数据中心 TC

物联网信息化农业是农业生产的高级阶段,是集新兴的互联网、移动互联网、云计算和物联网技术为一体,依托部署在农业生产现场的各种传感节点,包括空气温度、空气湿度、光照强度、光合有效辐射、风速、风向、雨量、露点、紫外线强度9项气...

关键字: 物联网 传感器 GPS

物联网(Internet of things)是一系列用于解决物的信息识别、交换、控制等技术的集合应用形成的网络。当连接从互联网时代的人与人走向万物互联,万物的数字化、智能化依赖物联网技术。因此,物联网是指利用各类信息识...

关键字: 物联网 传感器 GPS

上海2022年9月6日 /美通社/ -- 近期,驭势科技与广东省机场集团物流有限公司(下称"物流公司")合作的"智慧物流-无人驾驶创新应用联合实验室"揭幕,项目引进的5台...

关键字: 无人驾驶 牵引车 BSP GPS

凝聚燧原科技两代芯片研发与多个大规模人工智能算力中心工程实践,面向大规模、集约化、绿色低碳数据中心建设,云燧智算机(CloudBlazer POD)正式发布。 上海2022年9月3日 /美通社/ -- 燧原科技在202...

关键字: 人工智能 数据中心 节点 TC

嵌入式教程

6897 篇文章

关注

发布文章

编辑精选

技术子站

关闭