0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

英创信息技术EM928x工控主板IRIG-B码校时

英创信息技术 来源:英创信息技术 作者:英创信息技术 2020-02-04 10:41 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

在工控行业很多领域中,需要控制系统具有高精度的时间同步功能,IRIG就是美国靶场司令委员会制定的一种时间标准,英创在EM928x系列的Linux工控主板上实现了IRIG-B码校时功能。

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码标准

首先在硬件连接上,我们使用GPIO23复用为接收IRIG-B码脉冲信号的管脚,所以只需要将时钟源发出的IRIG-B码脉冲接到GPIO23,需要注意的是,GPIO管脚的输入电压不能超过3.3V,否则会引起CPU的异常或是损坏。如果时钟源发出的脉冲为5V,就需要将电平转换为3.3V才可以接入。硬件连接好后,我们来看看应用程序的实现方法:

首先需要打开IRIG-B这个设备节点:

fd = open("/dev/irig-b", O_RDWR);

if(fd < 0)

printf("open faile\n");

接下来使用标准的调用接口read和write就可以获取和设置时间了,程序中使用了struct tm这个结构体来进行获取时间的信息传递:

structtm

{

inttm_sec; /* 秒. [0-60] (1 leap second) */

inttm_min; /* 分. [0-59] */

inttm_hour; /* 时. [0-23] */

inttm_mday; /* 日. [1-31] */

inttm_mon; /* 月. [0-11] */

inttm_year; /* 年 - 1900. */

inttm_wday; /* 一周中的第几天. [0-6] */

inttm_yday; /* 一年中的第几天.[0-365] */

inttm_isdst; /* 时令. [-1/0/1]*/

#ifdef __USE_BSD

longinttm_gmtoff;

__constchar*tm_zone; /* 时区 */

#else

longint__tm_gmtoff;

__constchar*__tm_zone;

#endif

};

因为是直接从时钟源中获取的时间,所以我们只需要关注tm结构体中的年月日时分秒这六个成员。接下来我们进行读取时间的操作:

struct tm t;

ret = read(fd, &t,sizeof(struct tm));

if(ret < 0)

printf("read failed!\n");

printf("time:%d-%d-%d %d:%d:%d\n",t.tm_year, t.tm_mon, t.tm_mday, t.tm_hour, t.tm_min, t.tm_sec);

读取时间是通过阻塞的方式实现的,板卡会等到一次完整的时间脉冲信息才会返回本次时间,如果没有获取到完整的信息,会在5秒后返回系统时间并且打印提示信息。

为了方便客户将时钟源提供的时间设置到板卡中,英创公司提供了专用接口在驱动中获取时间并写入到系统或是RTC中,即write()函数,当调用write时,板卡会阻塞等待从时钟源获取一次完整的时间信息,然后根据写入的参数,将时间直接设置到系统中或者RTC中:

#defineSET_SYSTIME 0

#defineSET_RTCTIME 1

i1 = SET_SYSTIME;

ret = write(fd, &i1,sizeof(int));

if(ret < 0)

printf("write failed!\n");

i1 = SET_RTCTIME;

ret = write(fd, &i1,sizeof(int));

if(ret < 0)

printf("write failed!\n");

按照上面的例子调用write就可以将从时钟源获取的时间写入到板卡中,当输入的数据为0时,驱动会阻塞等待一次完整的时间信息,获得时间后将时间设置到系统中,阻塞等待的时间同样为5s,否则返回不能获取时间的信息。

如果输入的数据为1时,驱动会同样阻塞等待一次完整的时间信息,获得时间后将时间同时设置到硬件实时时钟和系统中,阻塞等待的时间同样为5s,否则返回不能获取时间的信息。

传统的工控板卡在对IRIG-B码处理时,通常需要增加额外的硬件(如单片机FPGA)对B码进行解码,然后再通过串口、总线或其它形式将数据交给主控板卡处理,增加了系统成本和操作难度,英创Linux工控主板EM928x系列可直接对B码进行解码,不需要增加任何硬件就能实现毫秒级精度的时间同步,大大降低了系统复杂程度,节约了成本,提高了系统稳定性。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    88

    文章

    11628

    浏览量

    217971
  • 嵌入式主板
    +关注

    关注

    7

    文章

    6107

    浏览量

    36950
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    体积小巧易集成的IRIG-B接收板、IRIG-B授时

    IRIG
    西安同步电子科技有限公司
    发布于 :2025年12月03日 17:16:37

    3A6000四核龙芯工控主板,推动信工控深度融合

    当今信科技快速发展,技术的不断演进和市场需求的变化,在工控领域也在进行源源不断地创新,其中最引人注目的是国产龙芯主板在其中的发展应用。
    的头像 发表于 11-14 09:10 206次阅读

    IRIG-B产生器、IRIG-B发生器

    发生器
    西安同步电子科技有限公司
    发布于 :2025年11月12日 16:56:07

    IRIG-B产生器特点介绍

    计数器
    西安同步电子科技有限公司
    发布于 :2025年11月06日 15:15:30

    新时代的硬核基石:龙芯工控主板助力信产业新基建

    在数字技术重塑产业格局的今天,信产业已成为保障国家信息技术安全的核心战略。作为工业自动化系统的大脑,工控主板的自主可控程度直接决定信创新基
    的头像 发表于 11-05 13:54 132次阅读

    工控主板的三大核心技术

    在工业自动化的浪潮中,工控主板如同“工业大脑”的核心载体,支撑着各类设备的稳定运行与智能升级。相较于消费级主板工控主板需在复杂工况下实现长
    的头像 发表于 10-16 11:05 229次阅读

    IRIG-B解码板

    音频信号
    西安同步电子科技有限公司
    发布于 :2025年10月14日 19:27:07

    智慧新核心,龙芯主板助力信体系再升级

    信息技术飞速发展的当下,信体系的自主可控与创新升级已成为国家战略层面的关键任务。作为信产业发展的重要基础硬件支撑,国产工控主板正发挥着
    的头像 发表于 08-11 09:14 565次阅读

    飞腾主板为信产业发展提高硬实力

    信息技术飞速发展的当下,信产业已成为我国实现科技自立自强、保障国家信息安全的关键领域。信,即信息技术应用创新,其核心目标是实现
    的头像 发表于 07-22 18:20 560次阅读

    多功能多标准IRIG-B产生器介绍

    在当今数字化时代,众多领域对时间同步的精度和可靠性有着极高的要求。SYN1502A型IRIG-B产生器作为一款专业的时间同步模块设备,在满足客户多样化需求、解决实际问题方面发挥着重要作用。 在航天
    的头像 发表于 06-23 18:12 356次阅读

    IRIG-B产生器提供时间同步新方案

    SYN1502A型IRIG-B产生器是西安同步电子科技有限公司自主研发的高精度授时设备,以“便携性、多功能性、高可靠性”为设计核心,兼顾操作便捷性与功能灵活性,为时间同步提供新方案。 一、产品概述
    的头像 发表于 06-23 18:10 441次阅读

    GPS授时装置应用技术

    GPS授时装置接收北斗卫星、GPS卫星、CDMA、SDH、PTP、IRIG-B、串口等外部时间基准信号,通过智能时间源算法,实现多时间源的智能切换,输出高精度、高可靠的时间同步信号和标准时间信息
    的头像 发表于 06-16 14:55 497次阅读
    GPS授时装置应用<b class='flag-5'>技术</b>

    浪潮下,国产主板有什么新的发展机遇?

    信息技术应用创新浪潮的推动下,国产主板迎来了诸多新的发展机遇。信产业旨在实现信息技术领域的自主可控,这一战略目标为国产主板的发展提供了广
    的头像 发表于 05-09 09:24 566次阅读
    信<b class='flag-5'>创</b>浪潮下,国产<b class='flag-5'>主板</b>有什么新的发展机遇?

    GPS卫星同步时钟设备采用全模块化结构

    GPS卫星同步时钟以GPS信号作为时间源,同时可选北斗卫星、IRIG-B、OCX0、铷原子钟、CDMA信号等时钟源,对时精度达20nS。
    的头像 发表于 03-10 14:09 630次阅读
    GPS卫星同步时钟设备采用全模块化结构

    必看!基于复旦微FMQL20S400M国产平台的B对时,破解电力授时难题

    Embedded Workbench ARM 8.11.2 硬件平台:龙科技TLFM20S-EVM评估板(基于FMQL20S400M国产平台) IRIG-B对时原理 IRIG-B
    的头像 发表于 02-27 10:22 1516次阅读
    必看!基于复旦微FMQL20S400M国产平台的<b class='flag-5'>B</b><b class='flag-5'>码</b>对时,破解电力授时难题