由于看到的错误数量过多,您的CAN可能处于"Bus Off State"。如果“Transmit Error Counter”大于255,则CAN接口将转换为该状态。在必须将CAN接口与其他设备隔离的前提下,通信立即停止。当CAN接口转换为总线关闭状态时,该接口的通信将停止。接口的所有NI-XNET会话均不再接收或发送帧值。要重新启动CAN接口及其所有会话,...
CAN总线断开状态 翻译结果5复制译文编辑译文朗读译文返回顶部 能公车运送off-state 相关内容 aequlvalent equlvalent[translate] a不知道,我没有太多的奢求,只想一家人天天开心在一起 Did not know that, I do not have too many extravagant demands, only thinks the whole family daily happy in the same plac...
在CanSMBorTimeTxEnsured时间内,Busoff再次发生,则进行下一次的Busoff恢复机制,如果CanSMBorTimeTxEnsured耗尽,则说明成功从Busoff状态恢复。如果在CanSMBorTimeTxEnsured时间内,再次发生Busoff,则Busoff次数累加。 3Busoff发生时的网络状态 这里主要讨论Busoff进入慢恢复期,节点在NOS(Normal Operation State)和RSS(Rea...
The CAN bus off state is a special state that a CAN node enters when it detects a bus error. A bus error can occur for a number of reasons, including: A node transmitting a message that is too long. A node transmitting a message with an invalid CRC. A node transmitting a message wi...
错误主动状态(Active Error State) 节点在正常工作时的默认状态。 可以正常发送和接收数据帧。 错误被动状态(Passive Error State) 当节点检测到太多错误时,会进入该状态。 此时节点仍然可以接收数据帧,但不能主动发送数据帧。 总线关闭状态(Bus Off State) ...
产品运行过程中,和电池的can通信会出现中断现象,读取了出现故障时ERR State,发现BUSOFF位被置一。 出现通信中断时,监控了总线上的数据流,仍有3帧数据(电池主动上发)持续发送,但DSP接收不到(接收这几帧的代码都不运行了)。 有另外一帧数据由DSP下发,此帧数据也丢失。
Section 6, definition of bus-off state Section 12, fault confinement and error counters Section 12.1.4.4 specifically states what a CAN controller shall do when it enters the bus-off state You may want to refer to them for more information. All the best, Reply [...
/* if the node is in bus off state, initiaite the recovery process */ if ((busOffState != 0) && (hwNode->ECNT.B.TEC > 254)) { status = IfxMultican_Status_busOff; /* reset error counters */ hwNode->ECNT.B.TEC = 0x01; hwNode->E...
Hi@witness First of all, if CAN-H and CAN-L are short-circuited during transmission, the node will definitely enter the bus-off state. for one node:
检测CAN BUS-OFF错误并进行处理,网上已经有开源代码,大家可以参考这个网址:http://www.pengutronix.de/software/libsocketcan/download/ 代码里有个can_get_state函数,也可以检测CAN BUS当前的状态。 int state; if ((can_get_state(if_name_can0, &state)) < 0) { fprintf(stderr, "cannot get bustate...