使用NI VCOM RBS Descriptor工具实现E2E Profile 5校验算法

更新 Jan 15, 2026

环境

软件

  • Vehicle Communication Toolkit

驱动

  • NI-XNET

NI-VCOM在RBS Descriptor工具中定义了许多常用的校验算法。与使用NI-VCOM工具包为CAN应用添加自定义的Checksum一文中介绍的自定义接口方式相比,用户可以轻松地实现校验算法。本文将介绍如何使用RBS Descriptor工具实现E2E Profile 5。

  1. 在VeriStand中添加VCOM custom device。单击“Create VCOM Descriptor”打开RBSConfig工具。
  2. 在Datapool中右键单击,然后选择“New Network”>>“CAN or FlexRay Network”>>“Create single network”以添加数据库文件。
  3. Datapool中找到校验和信号,然后右键单击它并选择Copy2Config

  1. Configuration中找到校验和信号,然后单击它并选择“Change to Auto Signal”

  1. “Auto Signal type”下拉菜单中,选择“ChecksumCCITT”
  • CRCMask:确定用于CRC计算的数据字节。例如,CRCMask 252(二进制表示为 1111 1100)表示将使用数据字节的第2个字节到第7个字节进行校验和计算。
  • UserBytesAfter:这些字节用于数据字节之后的校验和计算。Data ID可以填写在此处。第一个字节是Data ID的低字节,第二个字节是Data ID的高字节。

按如下方式填写上述参数,然后单击“Execute”

  1. 点击ChecksumUserBytesAfter右侧的三个点来编辑Data ID。

例如,此帧的Data ID为4957(十六进制为0x135D)。您应该按如下方式填写ChecksumUserBytesAfter。

  1. “Configuration”中右键单击数据库文件,然后选择“Save as XML”以保存配置。

注意:如果要保护第8字节到第20字节的数据以计算校验和,则CRCMask应为2096896(二进制表示为 1 1111 1111 1111 0000 0000)。有一个已知的问题,在这个工具中,CRCMask的值被限制为255。如果输入的值大于 255,则单击“Execute”按钮时会触发错误。

一种变通方法是,您可以填写一个小于255的值。在步骤7生成XML文件后,您可以使用记事本打开该XML文件。然后,您可以将此值更改为任何值。

修改前:

修改后: