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

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

3天内不再提示

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

虹科技术 来源:虹科技术 作者:虹科技术 2024-01-02 17:23 次阅读

来源:虹科汽车智能互联虹科技术| 保障数据传输稳定性:BabyLIN产品的CRC算法实现

欢迎关注虹科,为您提供最新资讯!

导读

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

01CRC校验原理

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

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

02CRC算法实现

image.png

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

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

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

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

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

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

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

03BabyLIN应用与验证

image.png

BabyLIN产品的SDF程序编写中,在SessionConf软件的Signalfunctios中定义了CRC算法的实现。具体的CRC算法实现所要设置的参数值[*4][*5][*6][*11]和CRC算法在线计算工具基本一致。

如下图CRC8算法实现所示,实际中选择具体的报文帧[*0]进行CRC校验即可,报文中进行CRC校验的数据序列[*1][*2][*7][*8][*9][*10],以及CRC校验值存放位置[*3]均可根据实际情况设置。

image.png

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

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

结语

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

虹科是一家在通讯领域,尤其是汽车电子和智能自动化领域拥有超过15年经验的高科技公司,致力于为客户提供CAN/CAN FD、LIN、车载以太网、TSN等全方位的一站式智能互联解决方案。

审核编辑 黄宇

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

    关注

    2999

    文章

    7451

    浏览量

    161593
  • 数据传输
    +关注

    关注

    9

    文章

    1526

    浏览量

    63563
  • 算法
    +关注

    关注

    23

    文章

    4455

    浏览量

    90756
  • crc
    crc
    +关注

    关注

    0

    文章

    191

    浏览量

    29195
  • 数据通讯
    +关注

    关注

    0

    文章

    43

    浏览量

    11653
收藏 人收藏

    评论

    相关推荐

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

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

    星坤数据连接器,引领数据传输新时代

    连接器采用了先进的技术和材料,确保在高速数据传输时能够保持低延迟和高稳定性。这使得它成为现代数字化设备的理想选择,无论是在计算机、服务器还是通信系统中,都能发挥重要作用。 该连接器的数据
    的头像 发表于 03-13 15:14 134次阅读
    星坤<b class='flag-5'>数据</b>连接器,引领<b class='flag-5'>数据传输</b>新时代

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

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

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

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

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

    文章将以CRC8校验为例,介绍在BabyLIN产品中如何使用CRC校验算法CRC校验原理 在
    的头像 发表于 01-02 10:45 198次阅读
    虹科<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>

    手机没有OTG功能,如何实现数据传输

    手机没有OTG功能,如何实现数据传输? 手机没有OTG功能,需要传输数据的时候可以考虑以下几种方法: 1. 云端存储 云端存储是目前非常流行的一种
    的头像 发表于 12-11 15:31 1755次阅读

    如何实现MQTT协议数据传输

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

    AXI数据传输读写数据结构

    在 AXI 数据传输过程中,主要涉及到 •窄位宽数据传输(Narrow Transfer) •非对齐传输(Unaligned Transfer) •混合大小端传输(mix-endian
    的头像 发表于 10-31 16:17 664次阅读
    AXI<b class='flag-5'>数据传输</b>读写<b class='flag-5'>数据</b>结构

    嵌入式GPRS无线数据传输系统实现及应用

    电子发烧友网站提供《嵌入式GPRS无线数据传输系统实现及应用.pdf》资料免费下载
    发表于 10-26 11:11 0次下载
    嵌入式GPRS无线<b class='flag-5'>数据传输</b>系统<b class='flag-5'>实现</b>及应用

    基于W5300的以太网数据传输系统的设计与实现

    电子发烧友网站提供《基于W5300的以太网数据传输系统的设计与实现.pdf》资料免费下载
    发表于 10-24 09:45 0次下载
    基于W5300的以太网<b class='flag-5'>数据传输</b>系统的设计与<b class='flag-5'>实现</b>

    YXC扬兴科技 MEMS振荡器 YSO691ER高稳定性和可靠性助力光端机领域

    YXC扬兴科技推出的Q MEMS振荡器YSO691ER以其高频率稳定性、精准的时钟信号和适应性强的封装尺寸,为光端机产品提供了可靠的时钟支持。无论是在光纤通信还是网络传输领域,YSO691ER都将成为光端机行业的重要组成部分,助
    的头像 发表于 09-14 15:50 962次阅读
    YXC扬兴科技 MEMS振荡器 YSO691ER高<b class='flag-5'>稳定性</b>和可靠性助力光端机领域

    钡铼技术R40网关与华为云IoT平台对接,实现高效数据传输与处理

    钡铼技术R40网关与华为云IoT平台对接,实现高效数据传输与处理
    的头像 发表于 08-31 15:05 389次阅读
    钡铼<b class='flag-5'>技术</b>R40网关与华为云IoT平台对接,<b class='flag-5'>实现</b>高效<b class='flag-5'>数据传输</b>与处理

    SPI数据传输有哪些方式

    SPI 数据传输可以有两种方式:同步方式和异步方式。 同步方式:数据传输的发起者必须等待本次传输的结束,期间不能做其它事情,用代码来解释就是,调用传输的函数后,直到
    的头像 发表于 07-25 10:54 3375次阅读
    SPI<b class='flag-5'>数据传输</b>有哪些方式

    Cat.4网络DTU,稳定快速的数据传输神器!

    好兄弟们!你们有没有遇到过,半夜在家睡得正香,突然领导一个电话干过来告诉你设备数据传输中断了,让你赶紧看看怎么回事的情况。简直让人崩溃!在现代工业和物联网应用中,数据传输稳定性和速度对于设备的运行
    的头像 发表于 06-18 10:10 350次阅读
    Cat.4网络DTU,<b class='flag-5'>稳定</b>快速的<b class='flag-5'>数据传输</b>神器!

    DMA进行数据传输和CPU进行数据传输的疑问

    求大佬解答,本人正在学习STM32单片机中DMA直接数据存储部分的内容 看了DMA简介后,也上手过实例代码,但是没有实际的项目经验,所以有以下疑问: DMA外设在进行数据传输的操作,是否也是需要经过
    发表于 05-25 17:18