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

更新 Nov 25, 2025

环境

软件

  • Vehicle Communication Toolkit

驱动

  • NI-XNET

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

  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”下拉菜单中,选择ChecksumUserJ1850
  • CRCMask:确定用于CRC计算的数据字节。例如,CRCMask-254(二进制为1111 1110)表示将使用数据字节的字节1到字节7进行校验和计算。
  • 初始值:CRC初始值。默认值为255。对于E2E Profile 1A,该值应为0。
  • FinalXORValue:CRC算法结束时的异或值。默认值为255。对于E2E Profile 1A,该值应为0。
  • UserByteBefore:这些字节用于在数据字节之前进行校验和计算。Data ID可以填写在此处。第一个字节是Data ID的低字节,第二个字节是Data ID的高字节。
  • UserByteAfter:这些字节用于数据字节之后的校验和计算。对于E2E Profile 1A,请将其留空。

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

  1. 在“Auto Signals”中单击校验和信号。在“Details”中,单击右侧的三个点,然后单击“Remove” ,删除“ChecksumUserBytesAfter”中的元素。

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

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

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

注意:如果想在原生的XNET中实现E2E Profile算法,请联系NI技术支持。