办法如下:
1.能够设置auto bus on的,主动恢复。 (有些CAN掌握 器芯片能够撑持)
2.SocketCAN能够设置主动重启时间。
启动CAN通道的时候间接加上“restart-ms xxx”就能够了,SocketCAN层实现的软件重启机造。
招致CAN总线Bus Off的因素
引起错误的原因大多是由物理毛病引起的,次要是CAN线路产生的。此中包罗:CAN_H开路、CAN_L开路、CAN_H对CAN_L短路/开路、CAN_L对VBAT短路、CAN_H对GND短路、CAN_L对GND短路、末端电阻开路等。
除了物理层线路因素,还有可能因为CAN掌握 器或收发器等元器件毛病招致。同时,也有可能是因为CAN总线信号骚乱 招致的CAN信号收发不准确,严峻时会招致不克不及一般发送报文,从而更随便 招致CAN总线封闭。
新能源汽车凡是是指纯电动汽车或者混合动力汽车,其特色是利用电池、电容来存储才能,然后通过逆变的体例酿成交换,带动电动机驱动车辆。逆变产生的浩荡 电流构成强骚乱 ,串扰到CAN总线上,招致掌握 器死机、损坏或者通信中断,车辆运行不不变。
CAN总线的错误处置
CAN总线错误处置功用属于是链路层功用,此功用由CAN掌握 器决定,图为CAN掌握 介绍图,此中详尽 介绍与错误处置有关的部门:位流处置器、位逻辑掌握 、错误治理 逻辑。
位流处置器(BSP)是一个掌握 发送缓冲器、领受FIFO和CAN总线之间数据流的法式安装,它还施行总线上的错误检测、仲载、总线填充和错误处置。
位时序逻辑(BTL)监视串行的CAN总线和位时序,它在信息开头“弱势收配”的总线传输时,同步CAN总线位流(硬同步),领受报文时再次同步下一次传送(软同步)。
错误治理 逻辑(EML)负责限造传输层模块的错误,它领受来自位流处置器的出错陈述,然后把有关错误统计告诉位流处置器和接口治理 逻辑(IML)。
扩展材料:
在CAN总线中存在5种错误类型,它们互相其实不排斥 ,下面简单介绍一下它们的区别、产生的原因及处置办法。
1、位错误:向总线送出一位的某个节点同时也在监视总线,当监视到总线位的电安然平静送出的电平差别时,则在该位时刻检测到一个位错误。但是在仲裁区的填充位流期间或应答间隙送出隐性位而检测到显性位时,不认为是错误位。送出承认错误标注的发送器,在检测到显性位时也不认为是错误位。
2、填充错误:在利用位填充办法停止编码的报文中,呈现了第6个持续不异的位电日常平凡,将检 测出一个填充错误。
3、CRC错误:CRC序列是由发送器CRC计算的成果构成的。领受器以和发送器不异的办法计算CRC。假设 计算的成果和领受到的CRC序列差别,则检测出一个CRC错误。
4、形式错误: 当固定形式的位区中呈现一个或多个不法位时,则检测到一个形式错误。
5、应答错误:在应答间隙,发送器未检测到显性位时,则由它检测出一个应答错误。
参考材料来源:百度百科-CNA总线
汽车CAN总线的Bus-Off要若何处置?假设 呈现了Bus Off,总线上的节点需要做一些动做,例如重启CAN掌握 器或是从头上电,但是那些都只是一些弥补办法,最底子的仍是需要找到引起Bus Off的根源。
当发作CAN总线封闭时,我们能够查抄Bus Off存放器的值,对CAN掌握 器的驱动及相关存放器停止初始化操做。初始化完成后,CAN总线封闭毛病就会立即 去除 。为了制止该节点在CAN收集中频繁发作总线封闭问题,定见 在初始化后,不要立即 对外发送CAN报文。
汽车CAN总线重视 事项
不要触摸动力系统接口模块线束毗连器端子或动力系统接口模块电路板上的锡焊元件,以防静电放电形成损坏。
为制止损坏线束毗连器端子,在对动力系统接口模块线束毗连器停止测试时,务必利用适宜 的线束测试引线,维修数据总线时,必需利用准确规格的导线。数据总线电路中的高阻抗会招致收集发作毛病。
uart bus off总线封闭怎么处置总线封闭(bus off)是CAN节点比力重要的错误处置机造。为了制止某个设备因为本身原因(例如硬件损坏)招致无法准确收发报文而不竭的毁坏总线的数据帧,从而影响其它一般节点通信,CAN收集具有严厉 的错误诊断功用,CAN通用标准中规定每个CAN掌握 器中有一个发送错误计数器和一个领受错误计数器。根据 计数值差别,节点会处于差别的错误形态,并根据 计数值的改变 停止形态转换,形态跳转和错误计数的规则使得节点在发作通信毛病时有了较好的自我错误处置和恢复机造,从一种较严峻的错误形态跳转到另一种严峻性相对较低的形态,素质上就是一种恢复过程。在通信过程中,错误主动和错误被动两种形态下节点的恢复过程一般不需要MCU停止额外的编程处置,间接利用CAN掌握 器固有功用即可。但关于总线封闭形态,往往不间接利用CAN掌握 器固有的恢复过程,而是对其停止编程掌握 ,以实现“快恢复”和“慢恢复”机造。