环球报道:CAN总线错误处理看这里就对了!
CAN协议具有检测错误的能力。但是如果发生错误,它无法纠正错误。因此,如果发生错误,检测到的节点或ECU将向CAN网络发送错误帧。与之相对应的CAN 2.0 总线协议定义参与通信的CAN节点错误类型如下:
【资料图】
如果在使用位填充编码的位流中,出现了第六个连续相同的位电平,将检测到一个位填充错误;
当一个固定形式的位场含有一个或多个非法位时,将检测到一个形式错误;
在应答间隙(ACK SLOT)所监视的位不为“显性”,则会检测到一个应答错误;
如果接收器的CRC结果和发送器的CRC结果不同,将检测到一个CRC错误。
2 CAN总线错误处理机制
每个CAN控制器都有自己的CAN总线错误处理程序。为了处理这个问题,每个CAN控制器有两个计数器寄存器(0 – 255),即:发送错误计数器 (TEC) 和接收错误计数器 (REC) 。如果5个错误中发生任何一个发生错误,它将根据错误类型增加 TEC 或 REC。Tips:一个特例:如果CAN总线上只有一个节点,该节点发送数据帧后得不到响应(ACK),其发送计数器TEC最大只能计到128,即该节点只能进入错误被动状态,而不会进入总线关闭状态,这就是为什么当您没有将任何设备连接到网络时,您的ECU将持续发送帧,但不会检测到总线关闭并保持错误被动状态。
错误计数器的递增和递减操作是不对称的。在成功传输或接收消息时,如果相应的错误计数器未为零,则相应的错误计数器将递减。在传输或接收错误的情况下,计数器将递增,但递增值大于递减值。具体错误限制管理规则如下:
a) 当接收器检测到错误时,接收错误计数器REC+ 1。例外:发送活动错误标志、过载标志期间的位错误。
b) 当接收器在发送错误标志后检测到显性位作为第一位时,接收错误计数器REC+8。
c) 当发送器发送错误标志时,发送错误计数器REC+8。
1) 例外 1:如果发送器是错误被动状态,并且由于未检测到显性 ACK 而检测到 ACK 错误,并且在发送其被动错误标志时未检测到显性位。 2) 例外 2:如果发送方因为仲裁期间发生填充错误而发送错误标志,因此,填充位应该是隐性的,并且已作为隐性发送但被监视为主导的。 在这两种例外情况下,传输错误计数器保持不变。
d) 如果发送器在发送活动错误标志或过载标志时检测到位错误,则发送错误计数器TEC+8。
e) 如果接收器在发送活动错误标志或过载标志时检测到位错误,则接收错误计数器TEC+8。
f) 在发送活动错误标志、被动错误标志或过载标志后,任何节点都应容忍最多7 个连续显性位。在检测到第14个连续显性位后(在活动错误标志或过载标志的情况下)或在被动错误标志后检测到第 8 个连续显性位之后,并且每当在出现额外的8个连续显性位序列之后,REC和TEC都需要+8。
g) 成功传输一个帧后(收到 ACK 并且没有检测到错误,直到 EOF 被检测到完成),传输错误计数器应减1,直到为0。
h) 成功接收一个帧后(接收到 ACK 时隙没有错误并且成功ACK 位的发送),接收错误计数器应减 1,如果它介于1和127。如果接收错误计数器为0,则应保持为零 (0),如果它大于127,则应将其设置为介于119和127。
3 什么是CAN协议中的故障限制
故障限制是一种检查机制,可以区分短时干扰(例如电缆的噪声耦合到传输介质)和永久性故障(例如,节点发生故障并干扰总线). CAN通信节点的状态分为暂时错误(Error active和Error Passive)和永久性故障(Bus Off);
因此,节点可能处于以下三种可能的错误状态之一:
错误活动状态。错误被动状态。错误总线关闭状态。
1. CAN协议中的错误主动状态
当CAN设备通电时,它以错误活动状态启动。处于错误活动状态的设备通常可以参与CAN通信。它还会在检测到错误时传输主动错误标志。此主动错误标志(表示主导 0 位序列)会导致当前帧传输中止,从而导致同一消息的后续重新传输。
其中两个错误计数器(TEC 和 REC)在错误活动状态下都小于 128。它完全参与总线通信,并通过传输活动错误帧来发出错误信号。这包括 6 个主导位的序列,后跟 8 个隐性位,所有其他节点都使用适当的错误标志进行响应,以响应违反位填充规则。
2. CAN协议中的错误被动状态
如果发送错误计数器或接收错误计数器大于127,CAN设备将进入错误被动状态。处于错误被动状态的设备仍然可以参与通信,但在检测到任何错误时会传输被动错误标志。此被动错误标志(隐性 1 位序列)通常不会中止其他设备(如错误主动帧)传输的帧。
此外,错误被动节点必须在消息传输后等待额外的时间(Suspend Transmission Field,ITM后的 8 个隐性位),然后才能启动新数据。
3. CAN协议中的总线关闭状态
如果CAN控制器的发送误差计数器超过255,则进入总线关闭状态。它与总线断开连接(使用内部逻辑),不再参与总线活动。简单地说,我们可以说物理上与总线连接和逻辑上断开连接。为了重新连接协议控制器,必须执行Bus Off recovery sequence。这通常涉及主机系统对CAN控制器的重新初始化和配置,之后它将等待(128 * 11)隐性位时间,然后再开始通信。
关注公众号,点击公众号主页右上角“ ··· ”,设置星标,实时关注智能汽车电子与软件最新资讯
关键词:
您可能也感兴趣:
为您推荐
美元/日元行情综述(2023年6月21日)
每日观察!福建国际传播中心在福州正式成立
48名乘客被困高速 高速交警及时救援
排行
最近更新
- 环球报道:CAN总线错误处理看这里就对了!
- 当前报道:超130亿!这2家企业斩获汽车订单
- 时隔十个月,LPR下降再次10个基点
- 世界短讯!2023全球数字经济大会将于7月4日至7日在北京举行
- 2022年西北五省GDP:陕西维稳,甘肃突破_今日热闻
- 我把我的梦想就卖了三两三是什么歌 速递
- 健身私教一般多少钱一个月_健身私教一般多少钱
- 每日快看:开屏观察|又双叒叕上热搜!关于工资这件事,这届...
- PTT热议EDG击败AL:Xiaohao尽力了,明年快跑吧!
- 苹果如何备份到新手机_苹果手机怎么备份到另一个苹果手机
- 业委会成员资格终止_业委会成员资格 聚焦
- 环球新消息丨和评理 |中方劝和促谈 西方延长流血冲突
- 哈尔斯(002615.SZ):累计耗资2998.84万元回购1.05%股份|每日精选
- 什么面膜补水美白效果好平价_什么面膜补水美白效果最好 热资讯
- 报道:为什么steam加好友界面打不开_steam加好友打不开
- 英国首相苏纳克称“正探索使用俄资产合法途径”
- 全球资讯:世界技巧锦标赛照片_世界技巧锦标赛
- 微信发送的视频不能大于25m怎么办
- 女子喊3遍拔针护士打游戏不理会 基本信息讲解 精选
- 成都锦江区二季度推进重大项目41个 总投资416亿元
- 丰田(TM.US)追上市场电气化进程 野村、瑞穗加入看涨行列
- 全球热消息:美的楼宇科技孙靖:大平台+小场景,是智慧医院建...
- 云南南华农商银行被罚60万:因个人贷款管理不审慎等
- 当前焦点!尤文有意引进恩波利双星帕里西和法齐尼
- 永州市委党校中青班深入开展进村入户体验式教学 世界简讯
- 刘志仁主持召开市委全面依法治市委员会2023年第一次会议
- 环球微速讯:安化税务:真心服务提振民营企业发展信心
- 百家云发布AIGC新品市场易,尝试赋能教育、医疗、金融等应用...
- 天天速读:有礼三门·温暖海游丨“共迎绿色亚运拥抱低碳生活...
- 热讯:晋城一中2019年录取分数线 2019年晋城一中分数线