CAN通信程序错误处理

来源:本站
导读:目前正在解读《CAN通信程序错误处理》的相关信息,《CAN通信程序错误处理》是由用户自行发布的知识型内容!下面请观看由(电工技术网 - www.9ddd.net)用户发布《CAN通信程序错误处理》的详细说明。
简介:文章简单介绍了CAN通信程序中的错误处理

在CAN初始化中,打开了错误报警中断使能和总线错误中断使能,当错误计数器(发送错误计数器和接收错误计数器中的任何一个)计数值超过96时,说明总线被严重干扰,产生错误报警中断;当发送错误计数器值超过255时,节点进入总线关闭状态,CAN控制器将设置复位模式位为1(当前)并产生一个错误报警和总线错误中断。错误报警中断处理是清零所有错误计数器的值,维持CAN的运转,但这样做存在局限性:清零错误计数器只是将错误计数器简单的清零,不能从根本上消除错误来源;由于错误报警中断产生的条件为错误计数器的值超过96,而总线关闭中断产生的条件为发送错误计数器的值超过255,因此,发送错误计数器引起的错误报警中断可以屏蔽掉总线错误中断。系统可能由于总响应错误报警中断导致系统不能产生总线关闭,使CAN总线一直处于不稳定状态。

为了避免这种情况,只打开总线错误中断使能,这样,在总线发生严重错误的情况下,可马上产生总线错误中断,使错误得到及时处理。总线错误中断的处理是复位该节点,重新初始化CAN控制器,这样可以消除错误,给节点一个很好的初态。由于CAN总线两条传输线之间的误接触,也易造成CAN总线关闭,使节点无法工作,在主程序中查询状态寄存器中当前CAN总线状态,及时复位该节点,使节点正常工作。

同时,为了更方便直观地查看CAN总线的工作状态,设计了一个指示灯,当总线正常地收发信息时,指示灯闪烁,一旦CAN总线关闭,节点不参与总线活动,指示灯不再闪烁(此时指示灯长亮或长灭),当总线错误不能通过复位该节点解决时,可以通过查看指示灯的状态(长亮或长灭),及时地对不工作的节点进行修理维护。

提醒:《CAN通信程序错误处理》最后刷新时间 2024-03-14 01:10:31,本站为公益型个人网站,仅供个人学习和记录信息,不进行任何商业性质的盈利。如果内容、图片资源失效或内容涉及侵权,请反馈至,我们会及时处理。本站只保证内容的可读性,无法保证真实性,《CAN通信程序错误处理》该内容的真实性请自行鉴别。