虹科分享 | 带你全面了解“CAN总线错误”(三)——CAN节点状态与错误计数器

在本系列文章中,我们将为您详细介绍CAN总线错误的相关知识,包括CAN总线错误的基础概念、CAN总线错误的类型、CAN错误帧和CAN节点错误状态,并通过实际的应用测试生成并记录CAN错误。

前文回顾:
1. CAN总线错误与错误帧
2. CAN错误类型

显然,CAN错误处理有助于去除错误消息,并使CAN节点能够重新进行错误消息的传输。这确保了短暂的局部干扰(例如来自噪声)不会导致无效/丢失数据。相反,发送器将会尝试重新发送消息。如果它赢得仲裁(并且没有错误),则消息发送成功。

但是,如果错误是由于传输节点中的系统故障引起的怎么办?这可能会触发发送/去除相同消息的无限循环——干扰CAN总线。这就是CAN节点状态和错误计数器发挥作用的地方。
在这里插入图片描述
简而言之,CAN错误跟踪的目的是通过降低有问题的CAN节点的权限来限制错误。具体来说,让我们看看三种可能的状态:

  • 错误活动:这是每个CAN节点的默认状态,在该状态下它能够传输数据并在检测到错误时引发“活动错误标志”
  • 被动错误:在这种状态下,CAN节点仍然能够传输数据,但现在在检测到错误时会引发“被动错误标志”。此外,CAN节点现在除了等待3位中断时间外,还必须等待额外的8位(也称为暂停传输时间)才能恢复数据传输(以允许其他CAN节点控制总线)
  • 总线关闭:在此状态下,CAN节点将自身与CAN总线断开连接,无法再传输数据或引发错误标志
    在这里插入图片描述
    每个CAN控制器都会跟踪自己的状态并采取相应的行动。CAN节点根据其错误计数器的值转换状态。具体来说,每个CAN节点都会跟踪发送错误计数器(TEC)和接收错误计数器(REC):
  • 如果REC或TEC超过127,则CAN节点进入ErrorPassive状态
  • 如果TEC超过255,则CAN节点进入总线关闭状态

那么错误计数器如何变化呢?在我们了解如何增加/减少错误计数器的逻辑之前,让我们重新审视CAN错误帧以及主要/次要错误标志。

从CAN错误帧图示中可以明显看出,在CAN错误帧的6个显性位序列之后观察到显性位的CAN节点将知道它引发了主要错误标志。在这种情况下,我们可以将此CAN节点称为错误的“发现者”。

起初,让一个CAN节点反复发现错误并通过在其他节点之前发出错误标志来迅速做出反应,这听起来可能是积极的。然而,在实践中,发现者通常也是导致错误的罪魁祸首。
在这里插入图片描述
在实际应用中,通常可以采用CAN记录仪来对CAN错误进行记录,并通过对CAN数据进行分析来找到故障原因,比如使用虹科CAN记录仪可以轻松地将数据从2xCAN/LIN总线记录到8-32GB的SD卡中,或通过WiFi将数据自动传输到服务器中,因此只需要将其连接到汽车或卡车即可开始记录,并通过免费软件/API解码数据。
请添加图片描述
更多信息欢迎私信/评论/联系400-999-3848

  • 0
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值