如何计算E2E Profile 5的CRC

目录

1 E2E Profile 5使用的CRC算法

1.1 16-bit CCITT-FALSE CRC16算法的介绍

2 E2E Profile 5计算CRC过程

2.1 主机厂向供应商提供的E2E Profile 5的配置参数信息

2.2 E2E Profile 5的流程图

2.3 推荐:手动计算E2E Profile 5的CRC

结尾


推荐阅读链接:

【AUTOSAR-E2E】-1.1-End-to-End通信保护介绍(Functional Safety功能安全相关)_autosar e2e故障后如何处理-优快云博客

1 E2E Profile 5使用的CRC算法

在Autosar文档AUTOSAR_SWS_E2ELibrarySpecification of SW-C End-to-End Communication Protection Library.pdf中,介绍了E2E Profile 5的CRC算法引用自文档AUTOSAR_SWS_CRCLibrarySpecification of CRC Routines.pdf中的16-bit CCITT-FALSE CRC16,并将其封装为接口函数Crc_CalculateCRC16()

1.1 16-bit CCITT-FALSE CRC16算法的介绍

CRC 模块根据 CCITT-FALSE CRC16 标准执行 CRC16 例程:

CRC result width: 循环冗余校验的位长度

16 bits

Polynomial: 多项式

1021h

Initial value: 初始值

FFFFh

Input data reflected: 反映的输入数据

No

Result data reflected: 反映的结果数据

No

XOR value: 异或值

0000h

Check: 检查

29B1h

Magic check: 魔法校验

0000h

CRC 模块的功能应提供以下 CRC 结果:

Data bytes (hexadecimal)

CRC

00

00

00

00

84C0

F2

01

83

D374

0F

AA

00

55

2023

00

FF

55

11

B8F9

33

22

55

AA

BB

CC

DD

EE

FF

F53F

92

6B

55

0745

FF

FF

FF

FF

1DOF

2 E2E Profile 5计算CRC过程

2.1 主机厂向供应商提供的E2E Profile 5的配置参数信息

E2E Profile 5的参数用E2E_P05ConfigType描述,包含以下信息,这些参数将被用于接口函数E2E_P05ProtectE2E_P05Check

  • DataID :uint16 表示数据的系统唯一标识符,主机厂自定义,并提供给供应商;
  • DataLength :uint16 表示数据长度(用bit表示等于)。该值应小于等于 4096*8(4kB),并应≥ 3*8;
  • MaxDeltaCounter :uint8 表示连续接收两个有效数据的两个Counter信号值之间的最大允许间隔。例如,如果接收方收到的counter为 1,而 MaxDeltaCounter 为 3,那么在下一次接收时,接收方可以接收counter值为 2、3 或 4 的数据;
  • Offset :uint16 表示E2E header从数据开始的第一位的位偏移(位编号:第 0 位是最低位)。offset应为 8 的倍数,0 ≤ offset ≤ (数据Byte长度-(3*8))。例如:如果offset等于8,则 E2E CRC(16 位)的低字节写入Byte 1,高字节写入Byte 2。

2.2 E2E Profile 5的流程图

接口函数E2E_P05Protect计算一个CRC的流程图:

2.3 推荐:手动计算E2E Profile 5的CRC

假设16位的CRC信号位置在Byte0~1,8位的Counter信号位置在Byte2,整个数据64个Byte,DataID为0x023B。

64个字节的数据为:

E9 2C 00 00 1E 84 80 01 15 E0 00 00 00 00 00 00 00 00 00 00 00 30 00 00 00 00 00 00 00 00 00 AF 01 5E 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 C0 00 00 00 00 00 00 00 00 00 00 00 00

CRC计算网站:

CRC在线计算 (lddgo.net)

结尾

获取更多“汽车电子资讯”和“工具链使用”,

请关注优快云博客“汽车电子助手”,做您的好助手。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

汽车电子助手

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值