CAN总线BUS OFF

CAN总线 BUSOFF

 

背景

学习笔记:总结常见的CAN总线出现bus off 的条件


 

一、CAN总线 BUS OFF

CAN 总线BUS OFF机制,用于检测CAN物理总线是否出现问题(CANH 和CANL 短路),以及定时尝试恢复CAN通信。

 

二、出现的条件

  1.  CAN总线的CANH 和CANL 短接
  2.  CAN总线的CANH 接GND
  3.  CAN总线的CANL 接VCC
  4.  CAN总线的因为终端电阻的问题,导致RXD相对于TXD 的信号延迟较大导致。(以500K的CAN为例,通常情况RXD和TXD的延迟约在100ns左右,若由终端断电阻的配置不对会导致TXD和RXD延迟时间增大可能达到500ns。若是2M的CANFD 就会造成数据传送产生问题,最终导致BUSOFF )

 注意: a. 通常对零部件进行BUSOFF策略进行测试时,常用CANstress 来对被测件的报文进行干扰,在测试时最好对DUT发出的所有报文进行干扰,如果仅对特定报文干扰时可能无法造成BUSOFF

 

 

三、常见处理机制

      目前常采用的方法为“BUS OFF 快慢恢复机制”,在 Classic Autosar 架构中由CANSM 模块负责。

      

基本原理:(1) CAN control产生中断,在中断查询是否出现BUSOFF。

(2) 若产BUSOFF生则CANSM 重启CAN controller,并将ComM置为(Silent)、BswM置为(BUSOFF),打开Rx PDU 关闭Tx PDU;同时会启动一个BUSOFF timer。

(3)当BUSOFF timer 时间耗尽,则会打开Tx PDU,并将ComM置为(FULL)、BswM置为(FULL),同时启动 TxEnsureTimer 确定BUSOFF 是否确实回复。

(4)若TxEnsureTimer 耗尽之前再一次出现BUSOFF,则开始下一次的BUSOFF 恢复机制。

 

 

 

  • 22
    点赞
  • 204
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值