您的位置 首页 技术

CAN总线过错帧剖析

1、CAN错误检测(ErrorDetection)CAN网络具有严格的错误诊断功能,该功能已固化在硅片之中,一旦错误被检测,正在传送的数据帧将会立即

1、CAN过错检测(Error Detection)

CAN网络具有严厉的过错诊断功用,该功用已固化在硅片之中,一旦过错被检测,正在传送的数据帧将会当即中止而待总线空闲时再次重发直至发送成功,该进程并不需求CPU的干与除非过错累计该发送器退隐(Bus Off)。CAN控制器可检测如下五种过错:
√ 位过错(Bit Check Error)
发送器在发送比特流的一起也对宣布的比特流采样收回,若送出的bit与所等待的bit不合,则会检测到一个Bit Check Error;

√ 位填充过错(Bit Stuff Error)
在需求履行位编码规矩的位流序列中检测到第6个接连的极性相同的位序流时,则检测到一个Bit Stuff Error;

√ CRC 过错(CRC Error)
发送端送出的CRC序列由发送器算出,接纳器履行相同的CRC算法,若计算结果与接纳到的CRC序列不符,一个CRC Error被检测到,由发送端送出;

√ 帧格局过错(Frame Check Error)
当一个固定方式的位场含不合法位,则检测到一个Frame Check Error(接纳端检测到帧结束最终一位为显性时帧过错疏忽);

√ 应对过错(Acknowledgment Error)
ACK SLOT采样为隐性,则检测到一个Acknowledgement Error;

2、CAN过错界定(Error Confinement)

CAN控制器内置两个过错计数器:Receive Error Counter及Tranmit Error Counter(过错计数器的计数规矩后附)。当某个计数器的当时值到达128时,CAN控制器将进入“Error Passive Mode”,此刻该节点依然参加CAN通讯,检测到过错时只能发送“Error Passive Flag”,且过错帧发送结束重启下一个发送之前有8bits位时的挂起状况;当Tranmit Error Counter当时值为255接着又一个过错被检测届时,CAN控制器将进入“Bus Off Mode”,此刻该节点与总线彻底脱离,整个瘫痪;计数器当时值均小于128时,CAN控制器被标识为“Error Active Mode”,CAN节点可正常通讯并检测到过错时发送“Error Active Flag”。这三种状况之间关系为:

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/xinpin/jishu/233599.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部