为什么我的CAN处于总线关闭状态?

更新 Oct 20, 2020

适用于

硬件

  • PXI CAN Interface Module
  • C Series CAN Interface Module

驱动

  • NI-XNET

问题详述

为什么我的CAN应用程序经常进入“总线关闭状态”?

解决方案

由于看到的错误数量过多,您的CAN可能处于“总线关闭”状态。如果“传输错误计数器”大于255,则CAN接口将转换为该状态。在必须将CAN接口与其他设备隔离的前提下,通信立即停止。当CAN接口转换为总线关闭状态时,该接口的通信将停止。接口的所有NI-XNET会话均不再接收或发送帧值。要重新启动CAN接口及其所有会话,请调用XNET Start.vi。

在CAN接口上开始通信时,传输错误计数器从0开始。当检测到传输帧的错误时,计数器递增;当帧传输成功时,计数器递减。对于错误,计数器增加的次数大于为成功而减少的次数。这样可以确定当一定比例的帧(大约1/8)遇到错误时,计数器通常会增加。

当通信状态转换为总线关闭时,发送错误计数器不再有效。