0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

什么是CAN的BUS-OFF,如何恢复BUS-OFF?

聚沃科技 2024-02-21 09:42 次阅读

CAN作为一款强大的工业总线,其高性能和高可靠性让其应用特别广泛。一个小知识:汽车里面各个模块之间的通讯就是使用CAN来实现的哦。

既然是总线,那当然会有多个设备挂载在CAN上,当一个设备在发送数据的时候,其他设备也没有在闲着,它们会对接收到的数据格式进行解析,一旦发现有错误就会发送错误信号到总线上。

wKgaomXVVKaAI0QuAACgknMbIOM644.png

那么,如果一个设备确实出现了问题,老是发出错误格式的帧(比如波特率有偏差等等)怎么办呢?嘿嘿,不等大家把它踢出局,它自己就会老老实实的退出总线,不再往总线上发数据了,这个就叫做BUS-OFF,也就是设备离线。

那么MCU如何触发这个BUS-OFF呢?我们以GD32F303为例来说明。GD32F303的CAN在发送一次错误的帧后,会将发送错误计数器的值+1,当这个计数值达到255时,就会触发BUS-OFF机制,退出总线。

wKgZomXVVK2AEBVDAADIYhPoyT4535.png

这个时候有的小伙伴就会问了,一个设备运行很长时间,总会有发送错误的时候吧,如果就这么退出总线了,岂不是太冤了?其实不是的,当设备在发送错误计数器的值不等于0的情况下,发送一次正确的帧,这个计数值会-1的。

当一个设备BUS-OFF了,但它自恢复了错误状态,想继续回到总线上怎么操作呢?有两种方式:

1、打开GD32F303的离线自动恢复功能,当出现BUS-OFF,MCU在检测到离线恢复序列(在CAN_RX检测到128次连续11个位的隐性位 )后就会自动恢复。

wKgZomXVVMCAWfRFAADQLBUH5yo438.png

2、如果没打开自动恢复功能,则需要让CAN进入到初始化模式,再进入正常工作模式即可。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6001

    文章

    43973

    浏览量

    620844
  • 嵌入式
    +关注

    关注

    4982

    文章

    18281

    浏览量

    288464
  • CAN
    CAN
    +关注

    关注

    56

    文章

    2467

    浏览量

    459246
  • 汽车业
    +关注

    关注

    0

    文章

    16

    浏览量

    3227
收藏 人收藏

    评论

    相关推荐

    将TC397的MCMCAN模块的canh和canl短接到GND,MCMCAN模块进入到bus off状态后无法继续正常发送的原因?

    将TC397的MCMCAN模块的canh和canl短接到GND。按照网络上的资料:此时CAN总线会进入到bus off状态,但当故障移除后即通信线正常连接后,CAN模块会
    发表于 02-01 07:21

    CYT2B75CAD CANbus off状态如何检测的?

    使用芯片为:CYT2B75CAD,CANbus off状态如何检测的,CAN的错误以及发送完成等?是否有相关例程可以参考?
    发表于 02-02 08:36

    STM32F03进入CANBUS OFF时间能不能缩短?

    开启BUS OFF中断后,该中断更新时间怎么这么长,能不能缩短?
    发表于 03-22 07:54

    什么是CANBUS-OFF,如何恢复BUS-OFF?#CAN #汽车电子 #单片机

    单片机mcu
    聚沃科技
    发布于 :2024年02月22日 10:56:31

    off-page connector怎么不能和bus相连

    请问如何才能使busoff-page connector相连?
    发表于 03-29 15:09

    STM32之CAN---错误管理分析

    bus-off state only upon a user request.由于错误界定规则,一个节点可能处于离线状态,当处于此状态时,这个节点既不发送也不接收。至于何时离线恢复取决于何时用户请求。2
    发表于 03-20 13:48

    在总线关闭状态下手动重启CAN

    controllers in a PSoC 4200L.The datasheet for the component says that when the Bus-off restart option
    发表于 10-24 16:47

    CAN卡报告CAN bus off是什么原因

    `通过LAbVIEW发送CAN消息,周期变化,一段时间后,CAN卡会报bus off`
    发表于 10-26 16:06

    STM32工程搭建串口配置

    目录前景提要STM32工程搭建串口配置100us定时器FDCAN配置Bus-Off处理新消息接收处理发送处理使用Xavier配合测试一下完整工程下载关于用作Classic CAN微信公众号前景提要
    发表于 08-10 06:48

    STM32 CAN配置使用工具

    2使用共同的筛选器,总计28组。CAN2作为CAN1的从站,CAN1复位是否会影响CAN2?CAN总线关闭之后一定要自主
    发表于 08-19 09:29

    请问NUC240 CAN bus遇到bus-off如何自动恢复

    各位大大安安,我在BSP中CAN范例遇到CAN bus中断进到bus-off状态问题,导至message无法传送,想问除了重新上电复位之外,如何初始化让
    发表于 08-21 06:04

    CAN-BUS,CAN-BUS是什么意思

    CAN-BUS,CAN-BUS是什么意思 CAN-BUS  1,CAN-BUS的起源  控制器局域网(controllerareanetwork 简称
    发表于 03-11 15:31 1.8w次阅读

    CAN-BUS,CAN-BUS原理是什么?

    CAN-BUS,CAN-BUS原理是什么?  1,CAN-BUS的起源  控制器局域网(controllerareanetwork 简称CAN)最初是德国Bosch公司于1983年为汽
    发表于 03-22 15:51 2590次阅读

    CAN总线Bus Off原理及恢复解决方案

    除了物理层线路因素,还有可能因为CAN控制器或收发器等元器件故障导致。同时,也有可能是由于CAN总线信号干扰导致的CAN信号收发不正确,严重时会导致不能正常发送报文,从而更容易导致CAN
    的头像 发表于 12-16 09:26 1w次阅读

    CAN总线Bus Off原理及CAN总线Bus Off恢复的解决方案

    汽车内部挂有很多的ECU节点,当其中一个节点发生故障进入总线关闭状态时,会很大程度上影响整车CAN网络的通讯。
    发表于 01-04 11:34 7423次阅读