EM9360是英创公司推出的基于AT91SAM9260的同时支持3网口,6串口和CAN通讯接口的高性能ARM9工控主板。经过我们精心的设计,使得EM9360还具有了强大的扩展功能,最终可通过EM9360构建成同时支持4网口,双CAN,22串口的网络通讯终端,基于其强大的通讯功能,EM9360广泛应用于电力、铁路,电信等行业。在上述行业中,除了对设备的通讯功能,运行稳定性有很高的要求之外,一般还需要系统具有高精度的时间同步功能。鉴于此,EM9360预留了一路时间同步输入(PPS_IN)接口,通过此接口可使EM9360与时钟源保持精确时间同步,同时EM9360还保留了一路时间同步输出(PPS_OUT)接口,可让其作为时间服务器,同步其它设备。
本文主要介绍EM9360通过GPS时钟源产生的IRIG-B(DC)码实现时间同步的方法。IRIG是美国靶场司令委员会制定的一种时间标准,其中的串行时钟编码共有6种格式,即A、B、D、E、G、H。它们的主要差别是时间码的帧速率不同,广泛应用的IRIG-B即其中的B型编码,B型码的时帧速率为1帧/s,可传递100位信息。图1是IGIG-B码示意图,其时帧周期是1s,每秒100个码元,使用脉宽编码方式,每个码元脉宽10ms,共三种码元,其中高电平5ms和2ms分别表示二进制 “1”,“0”,高电平8ms为位置标识,分别为P0,P1,…P9。连续两个8ms宽度脉冲的第二个8ms脉冲的前沿为秒准点标志,也是一个时间格式的帧参考标志。一个时间格式帧包含了秒,时,分,天数,年份,控制位等丰富的信息。
IRIG-B码标准
在使用IRIG-B码时钟源与EM9360与进行时间同步时,用户并不需要关心IRIG-B码的具体含义,实现方法,仅需要将B码送到EM9360的PPS_IN接口就行了,EM9360的驱动程序将完成B码解码,同步等工作。下面从应用层面介绍用户如何使用EM9360的IRIG-B校时功能。
1、通过标准的文件操作方式来打开系统的校时功能
HANDLE hGPSFile;
hGPSFile = CreateFile( TEXT('GPS1:'), GENERIC_READ | GENERIC_WRITE, 0, 0, OPEN_EXISTING, 0, 0);
2、关闭由CreateFile打开的HANDLE,即关闭系统校时功能。
CloseHandle(hGPSFile);
3、用户可以调用DeviceIoControl来查看系统最近一次同步的时间,调用方法如下:
#define IOCTL_IRIG_B_GET_TIME CTL_CODE(FILE_DEVICE_UNKNOWN, 0xC10, METHOD_BUFFERED, FILE_ANY_ACCESS)
BOOL GetSyncTime( HANDLE hDevice, SYSTEMTIME *pSyncTime )
{
DWORD dwBytesReturned;
return DeviceIoControl(
hDevice, // 由CreateFile打开的HANDLE
IOCTL_IRIG_B_GET_TIME, // 操作码,即上面的宏定义
NULL,
0,
(LPVOID) pSyncTime,
sizeof( SYSTEMTIME ),
&dwBytesReturned,
NULL
);
}
4、用户可以通过修改系统注册表来配置灵活的校时方案,通过注册表的设置,可实现时间秒同步、分钟同步、小时同步或日同步,对应的注册表项如下:(下面的注册表键值为系统默认值)
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\GPS1]
'DeviceArrayIndex'=dword:1
'Prefix'='GPS'
'Dll'='irig_b.dll'
'DeviceID'=dword:1a
'Priority256'=dword:88
; AutoSync =0: 禁止校时功能; =1: 秒同步; =2: 分同步; = 3: 小时同步; = 4: 日同步
'AutoSync'=dword:2 ; minute sync
; SyncMinute:当AutoSync为小时同步时,在SyncMinute分钟进行同步
'SyncMinute'=dword:3b ; 0x3b = 59 -> minute on sync
; SyncHour: 当AutoSync为日同步时,在SyncHour小时进行同步
'SyncHour'=dword:17 ; 0x17= 23 -> hour on sync
传统的工控板卡在对IRIG-B码处理时,通常需要增加额外的硬件(如单片机,FPGA)对B码进行解码,然后再通过串口、总线或其它形式将数据交给主控板卡处理,增加了系统成本和操作难度,EM9360可直接对B码进行解码,不需要增加任何硬件就能实现毫秒级精度的时间同步,大大降低了系统复杂程度,节约了成本,提高了系统稳定性。
该校时方案同样实用于英创其它9260系列工控主板,如EM9160,EM9260。
-
嵌入式主板
+关注
关注
7文章
6087浏览量
35672
发布评论请先 登录
相关推荐
中科曙光南京研究院方案入选江苏省信息技术创新优秀解决方案
中科曙光入选2024年江苏省信息技术应用创新优秀解决方案名单
中科创达荣获2024年软件和信息技术服务优秀企业
梯度科技入选2023年信息技术应用创新解决方案名单
B码对时案例分享,基于RK3568J+Logos-2,让电力设备轻松实现“高精度授时”!
兆芯金融方案入选工信部2023年信息技术应用创新典型解决方案
NTP服务器知识课堂 网络时间同步系统的校时方式
![NTP服务器知识课堂 网络时间同步系统的<b class='flag-5'>校时方</b>式](https://file1.elecfans.com//web2/M00/FF/5E/wKgZomaohuCAVFhGAADZ8dWv154986.jpg)
网络时间同步系统的校时方式
![网络时间同步系统的<b class='flag-5'>校时方</b>式](https://file1.elecfans.com/web2/M00/A6/33/wKgaomUSmM6AAKXHAAFmcT9Nwyc385.png)
B码对时方案,基于TI AM62x异构多核工业处理器实现!
B码对时方案,基于TI AM62x异构多核工业处理器实现!
翼辉信息入选2023年信息技术应用创新解决方案名单
![翼辉<b class='flag-5'>信息</b>入选2023年<b class='flag-5'>信息技术</b>应用创新解决<b class='flag-5'>方案</b>名单](https://file1.elecfans.com/web2/M00/DF/08/wKgaomYtxPmAfMmRAAAXEv6laks393.jpg)
网络时间同步服务器的校时方式,您了解多少?
![网络时间同步服务器的<b class='flag-5'>校时方</b>式,您了解多少?](https://file1.elecfans.com/web2/M00/8D/BE/wKgaomS_fpGAGlHNAAS4Wz6JV4k897.png)
龙芯中科三项信创方案入围工信部2023年信息技术应用创新应用示范案例名单
![龙芯中科三项信<b class='flag-5'>创</b><b class='flag-5'>方案</b>入围工信部2023年<b class='flag-5'>信息技术</b>应用创新应用示范案例名单](https://file1.elecfans.com/web2/M00/C3/19/wKgZomXpfwWAT16RAABpz-I0EpY201.png)
B码对时方案,基于TI AM62x异构多核工业处理器实现!
![<b class='flag-5'>B</b><b class='flag-5'>码</b>对<b class='flag-5'>时方案</b>,基于TI AM62x异构多核工业处理器实现!](https://file1.elecfans.com/web2/M00/C2/EC/wKgZomXpHHyAF4RtAABrSqQ9DGs303.png)
评论