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

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

3天内不再提示

虹科技术|保障数据传输稳定性:BabyLIN产品的CRC算法实现

虹科汽车电子 来源:虹科汽车电子 作者:虹科汽车电子 2024-01-02 10:45 次阅读

导读:CRC校验(循环冗余校验)是数据通讯中最常采用的校验方式。CAN协议中,总线通信节点也常采用CRC算法对各种总线传输的数据进行校验。CRC8校验在整车通信系统中应用比较广泛,鉴于此,本篇文章将以CRC8校验为例,介绍在BabyLIN产品中如何使用CRC校验算法。

CRC校验原理

在CAN报文中,增加Checksum校验,能够用来检测和校验数据传输或保存后可能出现的错误。它是利用除法及余数的原理来作错误侦测的。CRC8校验算法,就是对一帧报文进行校验和计算的算法。

其主要原理是:在发送节点,根据要传送的数据序列,以一定的规则产生一个校验用的校验码(CRC码),附在原始报文中,构成一个新的数据序列,然后发送出去。在接收节点,根据报文信息和CRC码之间遵循的规则进行检验,校验采用计算机的模二除法(即生成多项式)做异或运算,进行异或运算时除数和被除数最高位对齐,进行按位异或运算,若最终的数据能被除尽,则传输正确;否则,传输错误。

CRC算法实现

在自定义CRC算法中,CRC算法在线计算工具中需要填写以下六项参数。(具体的CRC算法代码实现这里不做展示)

1.宽度位数:CRC校验结果的比特数。支持 8位,16位,32位和 64位。

2.多项式POLY:生成公式的简写,以16进制表示。忽略最高位的"1"。

3.初始值INIT:算法初始预置值,以16进制表示。

4.输入数据反转REFIN:输入数据的每个字节是否按位反转。

5.输出数据反转REFOUT:在计算后之后,结果输出之前,整个数据是否按位反转。

6.结果异或值XOROUT:计算结果与此参数异或后得到最终的CRC值。

BabyLIN应用与验证

在BabyLIN产品的SDF程序编写中,在SessionConf软件的Signalfunctios中定义了CRC算法的实现。具体的CRC算法实现所要设置的参数值[*4][*5][*6][*11]和CRC算法在线计算工具基本一致。如下图CRC8算法实现所示,实际中选择具体的报文帧[*0]进行CRC校验即可,报文中进行CRC校验的数据序列[*1][*2][*7][*8][*9][*10],以及CRC校验值存放位置[*3]均可根据实际情况设置。

wKgaomWTeByAWAWCAAFkLQlMt8k479.png

Signalfunctios中CRC-8 Bit实现具体需要设置的参数项的含义解释如图:

wKgaomWTeGKATMEcAADW0DiFcqI426.pngwKgaomWTeGyAWIujAAIxGQeZL4s257.png

导入含有CRC算法的SDF程序,在BabyLIN产品中建立与ECU的通信,得到CRC算法实现结果,可以看出,得到的校验值与CRC算法在线计算工具中的计算结果一致。

wKgaomWTeHiAY7kOAAHUQquxY5Q692.png

结语

通过在BabyLIN产品中实现CRC算法,我们可以确保数据传输的准确性和可靠性。通过合理设置CRC算法的参数,以及正确应用在数据传输过程中,我们可以大大提高数据传输的稳定性,从而为各种通信系统的正常运行提供重要保障。未来,我们还将在总线通信中继续探索和应用更先进的校验算法和技术,并在BabyLIN产品中进行实际应用。

审核编辑 黄宇

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

    关注

    10

    文章

    2856

    浏览量

    87878
  • LIN
    LIN
    +关注

    关注

    4

    文章

    214

    浏览量

    40209
  • CRC算法
    +关注

    关注

    0

    文章

    15

    浏览量

    8841
收藏 人收藏

    评论

    相关推荐

    LORA模块的数据传输速率

    LoRa(Long Range)是一种用于物联网(IoT)应用的低功耗广域网(LPWAN)技术。它以其长距离通信能力和低功耗特性而闻名。LoRa模块的数据传输速率可以根据不同的配置和地区的规定
    的头像 发表于 10-31 17:03 226次阅读

    HTTP海外加速技术:加速跨国数据传输,提升用户体验

    HTTP海外加速技术,作为优化跨国网络体验的重要手段,通过一系列技术手段显著提升了跨国数据传输的速度和稳定性,进而改善了用户的整体网络体验。
    的头像 发表于 10-15 07:58 159次阅读

    网络数据传输速率的单位是什么

    网络数据传输速率的单位是 bps(bit per second) ,即比特每秒,也可以表示为b/s或bit/s。它表示的是每秒钟传输的二进制数的位数。比特(bit)是计算机中数据量的单位,也是信息论
    的头像 发表于 10-12 10:20 673次阅读

    N型插座在数据传输中的应用有哪些

    德索工程师说道N型插座的低插入损耗特性意味着信号在传输过程中的衰减较小,从而保证了信号强度的稳定性传输质量。低电压驻波比则确保了信号在连接器内部的稳定
    的头像 发表于 09-26 15:17 221次阅读
    N型插座在<b class='flag-5'>数据传输</b>中的应用有哪些

    IO模块介质冗余技术保障数据传输稳定的利器

    在工业自动化、网络通信等领域,数据传输稳定性至关重要。为了确保数据传输过程中不丢失、不中断,IO模块介质冗余技术应运而生。本文将为您详细
    的头像 发表于 08-02 13:21 242次阅读
    IO模块介质冗余<b class='flag-5'>技术</b>:<b class='flag-5'>保障</b><b class='flag-5'>数据传输</b><b class='flag-5'>稳定</b>的利器

    有没有使用SDIO接口和用户MCU连接,实现150Mbps数据传输速率的产品

    请教一下,有没有使用SDIO接口和用户MCU连接,实现150Mbps数据传输速率的产品? 查看了几个产品,包括模组,都支持150Mbps的最大数据传
    发表于 06-20 07:43

    8芯M16插头数据传输的准确性

      德索工程师说道8芯M16插头作为高性能连接器,其数据传输的准确性对于整个系统的稳定性和可靠性至关重要。以下是对8芯M16插头数据传输准确性的详细分析,结合参考文章中的相关数字和信息进行阐述。
    的头像 发表于 06-14 18:06 257次阅读
    8芯M16插头<b class='flag-5'>数据传输</b>的准确性

    智能测径仪:高稳定性成就高精测量之选!

    尺寸,误差范围极小。这使得生产企业能够更好地控制产品质量,避免因尺寸偏差而导致的废品率增加。 采用多种技术保障测径仪稳定性 采用了高品质的传感器和精密的测量
    发表于 06-05 17:30

    GMSL技术 实现高带宽、低延迟和高可靠性数据传输# ADI# GMSL# 汽车# 数据传输

    adi数据传输电机
    Excelpoint世健
    发布于 :2024年05月17日 16:34:25

    RJ45连接器的数据传输稳定性怎样保持?

    RJ45连接器网络接口插座作为数据传输中不可或缺的一部分,它的稳定性以及可靠性对于保障数据传输的质量和效率至关重要。其拥有独特的模块化插孔设计,使得它能够在众多的连接设备中脱颖而出,成
    的头像 发表于 03-15 15:34 428次阅读
    RJ45连接器的<b class='flag-5'>数据传输</b><b class='flag-5'>稳定性</b>怎样保持?

    讯维助力指挥车实现高效无线数据传输的案例研究

    一、引言 在信息化时代的今天,高效、稳定的无线数据传输已成为指挥车实现现场高效指挥与决策的关键。讯维技术以其卓越的性能和稳定性,在助力指挥车
    的头像 发表于 03-11 16:47 360次阅读

    HK-TrackSense SKY实时传输模块,实现更强的稳定性和穿透性

    我们很高兴地宣布科TrackSenseSKY模块3G的发布,它提高了从TrackSense记录仪到ValSuite的实时数据传输稳定性。通过这次升级,用户能够可靠地跟踪验证项目的进度,确保项目
    的头像 发表于 02-23 08:04 222次阅读
    HK-TrackSense SKY实时<b class='flag-5'>传输</b>模块,<b class='flag-5'>实现</b>更强的<b class='flag-5'>稳定性</b>和穿透性

    40G QSFP+ ER4光模块:高效稳定数据传输解决方案

    随着网络技术的不断发展,数据传输的速度和效率成为了网络流畅度和稳定性的关键因素。40G QSFP+ ER4光模块作为最新一代的光纤传输模块,凭借其高速度、高效率、长距离
    的头像 发表于 01-24 13:41 482次阅读
    40G QSFP+ ER4光模块:高效<b class='flag-5'>稳定</b>的<b class='flag-5'>数据传输</b>解决方案

    技术 | 保障数据传输稳定性BabyLIN产品CRC算法实现

    CRC校验(循环冗余校验)是数据通讯中最常采用的校验方式。CAN协议中,总线通信节点也常采用CRC算法对各种总线传输
    的头像 发表于 01-02 17:23 473次阅读
    <b class='flag-5'>虹</b>科<b class='flag-5'>技术</b> | <b class='flag-5'>保障</b><b class='flag-5'>数据传输</b><b class='flag-5'>稳定性</b>:<b class='flag-5'>BabyLIN</b><b class='flag-5'>产品</b>的<b class='flag-5'>CRC</b><b class='flag-5'>算法</b><b class='flag-5'>实现</b>

    如何实现MQTT协议数据传输

    如何实现MQTT协议数据传输? 随着物联网技术的不断发展,越来越多的设备和应用需要实现互联互通。而MQTT作为一种轻量级的发布/订阅消息传输
    的头像 发表于 11-15 17:23 1073次阅读