Autosar网络管理:说说Busoff那点事 首先,我们要知道Busoff问题与CAN/CANFD总线相关。在开发和测试时,Busoff问题相对来说麻烦一点。就测试工程师来说,测试脚本需要好好思考一番,以确保测试覆盖度;对于开发人员来说就更麻烦了,一般专用的Busoff测试工具可能需要向测试组借,以确保开发的鲁棒性,实际上,很多开发工程师只是简单的验证一个Busoff故障可以上报就完事了,剩下的丢给测试组测试。 Busoff是个啥 Busoff是个啥?这个单词拆开看,Bus Off,即总线掉线,这不是说总线不能用了,而是当前该节点脱离总线,不参与通信,说的更具体一点就是当前节点的Controller关闭,节点无法在此期间收/发报文。注意,此期间ECU依然在正常运行,所有的任务依然被OS调度。如果节点一直收不到网络管理报文,网络切换到Bus Sleep Mode,则ECU会进入下电流程。 Busoff是如何出现的呢?这个问题我前面有提到过,大家可以回顾基于VH6501的BusOff快慢恢复测试。简单说就是节点的发送计数器(TEC)数值>255。 我们知道,NO ACK错误也会让发送节点的TEC不断累加计数,如果总线上就只有一个节点,该节点发送的报文没有节点应答,TEC是否会累加到255,进而产生Busoff呢?答:不会。这是一个特殊情况,当总线上只有一个节点时,该节点发送的报文确实没有其他节点可以应答,但是此节点的TEC不会累加到255,而是128。为什么会这样呢?如果一个总线只有一个节点,也就没有什么通信的必要性了,就一个节点,和谁通信呢?这不就是自言自语吗?既然就一个节点自己玩,那也别脱离总线了,即Busoff了,等到其他节点加入再说吧。 既然TEC达到了128,当前节点也就进入了error passive模式,这点11898-1中是有明确规定的,Node的状态关系如下所示:



2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/44558.html