[FAQ] CAN调试——BUSOFF错误

[复制链接]
 楼主| embCHIP 发表于 2022-6-2 18:15 | 显示全部楼层 |阅读模式
本帖最后由 embCHIP 于 2022-6-2 18:24 编辑

#每日话题# #申请原创# #技术资源# CAN协议中有一个错误是BUS OFF 暨 总线离线


1、触发CAN BUSOFF
CAN芯片STB引脚拉高或者去掉CAN芯片,发送数据多次,可以触发总线离线

ac80cfbca096d48e0975329447161f0.png

2、阅读手册中BUSOFF可以触发中断,为了便于调试,代码开启状态改变错误中断。
微信图片_20220602182100.png


3、不使能ABOM功能暨离线自动恢复,观察到代码进入离线中断服务函数,
但是BOFF位没有自动清除,TEC也没有清除
微信图片_20220602182213.png


4、开启离线中断,使能ABOM功能,观察到代码进入离线中断服务函数,但是看到TEC和BOFF功能被清除,
这是因为开启了ABOM功能,设置了硬件检测到128次11位连续隐性位,如果CAN通讯速率为500K时,
CAN在几十ms内就能检测时128次11位连续隐性位,然后将TEC和BOFF清除,芯片退出离线状态,恢复通讯。

open

open


微信图片_20220602180138.png
5、总的来说
1)can芯片STB引脚拉高或者去掉can芯片,can报文持续发送,当TEC大于255则进入busoff状态。
2)测试当开启ABOM功能之后,busoff就能恢复正常,重复离线操作,未发现不能通信的情况。

不要怀疑,你近视了,看不清图片
weifeng90 发表于 2022-6-2 18:44 来自手机 | 显示全部楼层
感谢分享经验
chenjun89 发表于 2022-6-3 20:29 来自手机 | 显示全部楼层
CAN经典通信总线技术
您需要登录后才可以回帖 登录 | 注册

本版积分规则

认证:极海半导体
简介:珠海极海半导体有限公司是一家致力于开发工业级/车规级微控制器、模拟与混合信号IC及系统级芯片的集成电路设计型企业。极海团队拥有20年集成电路设计经验和嵌入式系统开发能力,可为客户提供核心可靠的芯片产品及方案,实现准确感应、安全传输和实时控制,助力客户在智慧家居、高端消费电子、工业控制、汽车电子、智慧能源以及通信设施等领域的拓展创新。

3

主题

8

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部
认证:极海半导体
简介:珠海极海半导体有限公司是一家致力于开发工业级/车规级微控制器、模拟与混合信号IC及系统级芯片的集成电路设计型企业。极海团队拥有20年集成电路设计经验和嵌入式系统开发能力,可为客户提供核心可靠的芯片产品及方案,实现准确感应、安全传输和实时控制,助力客户在智慧家居、高端消费电子、工业控制、汽车电子、智慧能源以及通信设施等领域的拓展创新。

3

主题

8

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部