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

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

3天内不再提示

一文解析CAN总线远程帧和错误帧

h1654155282.3538 来源:网络整理 2018-05-07 11:30 次阅读

本文主要介绍了CAN总线远程帧和错误帧,首先我们先来了解了解一下通讯时使用的帧类型有哪些,他们的作用又是什么,具体的跟随小编一起来了解一下吧。

通讯时使用下面5个类型的帧

1、数据帧

2、遥控帧

3、错误帧

4、过载帧

5、帧间空隙

在所有这些帧中,数据帧和遥控帧由用户设置,而其它帧则由CAN硬件设置。 数据和遥控帧有两种格式:标准和扩展格式。标准格式有11bit的ID,而扩展格式则是29bit的ID。以下是各个帧的作用。

一文解析CAN总线远程帧和错误帧

CAN总线远程帧和错误帧

一、远程帧

通常,数据传输是由数据源节点(例如,传感器发出数据帧)自主完成的。但也可能存在目标节点向源节点请求发送数据的情况。要做到这一点,目标节点需发送一个远程帧,其中的标识符应与所需数据帧的标识符相匹配。随后,相应的数据源节点会发送一个数据帧以响应远程帧请求。远程帧与数据帧存在两点不同:

1)远程帧的RTR 位为隐性状态;

2)远程帧没有数据字段。

当带有相同标识符的数据帧和远程帧同时发出时,数据帧将赢得仲裁,因为其标识符后面的RTR 位为显性。这样,可使发送远程帧的节点立即收到所需数据。

一文解析CAN总线远程帧和错误帧

一文解析CAN总线远程帧和错误帧

二、错误帧

这个帧用来通知在传输期间发生了一个错误,错误帧由一个错误标志和一个错误定界符组成,错误帧由CAN的硬件来发送。图24显示了错误帧的结构。

(1) 错误标志:有2种错误标志类型:主动错误和被动错误标志

a)主动错误标志:6个显性位

b) 被动错误标志:6个隐性位

(2) 错误定界符:由8个隐性位组成。

一文解析CAN总线远程帧和错误帧

注1:错误标志重叠:取决于连接到总线上的各单元检测出错误的时间,错误标志可能一个重叠在另一个上,总共可达12bit长度。

注2:主动错误标志:处于主动错误状态的单元检测出错误时输出的错误标志。

注3:被动错误标志:处于被动错误状态的单元检测出错误时输出的错误标志。

主动错误

当错误主动节点检测到一个总线错误时,这个节点将产生一个主动错误标志来中断当前的报文发送。主动错误标志由6 个连续的显性位构成。这种位序列主动打破了位填充规则。所有其他节点在识别到所生成的位填充错误后,会自行产生错误帧,称为错误反射标志。错误标志字段因此包含6 到12 个连续显性位(由1 个或多个节点产生)。错误定界字段(8 个隐性位)为错误帧划上句号。在错误帧发送完毕后,总线主动恢复正常状态,被中断的节点会尝试重新发送被中止的报文。

一文解析CAN总线远程帧和错误帧

被动错误

当错误被动节点检测到一个总线错误时,该节点将发送一个被动错误标志,并紧接着发送错误定界字段。错误被动标志由6 个连续的隐性位构成,而错误被动节点发出的错误帧包含14 个隐性位。由此可知,除非总线错误被错误主动节点或正在发送报文的节点检测到,否则由于错误被动标志不会影响总线运行,将继续发送报文。如果发送节点产生一个错误被动标志,那么,由于位填充规则被打破,将导致其他节点产生错误帧。错误帧发送完毕后,错误被动节点必须等待总线上出现6 个连续隐性位后,才能尝试重新参与总线通讯。错误定界符由8 个隐性位组成,允许总线节点在错误发生后重新启动总线通讯。

一文解析CAN总线远程帧和错误帧

错误帧的输出时序

检测到发生错误的单元输出一个错误标志,以通知其它单元。

处于主动错误状态的单元输出的错误标志为主动错误标志;处于被动错误状态的单元输出的错误标志为被动错误标志。

发送单元发送完错误帧之后,将再次发送数据帧或遥控帧。

错误标志输出时序如表9:

一文解析CAN总线远程帧和错误帧

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

    关注

    145

    文章

    1936

    浏览量

    130618
收藏 人收藏

    评论

    相关推荐

    浅谈CAN FD总线协议格式

    假期更新了搞懂CAN总线协议格式,CAN FD总线
    发表于 10-14 12:49 3373次阅读
    浅谈<b class='flag-5'>CAN</b> FD<b class='flag-5'>总线</b>协议<b class='flag-5'>帧</b>格式

    CAN总线错误基础知识及排查分析技术

    错误CAN总线用于进行错误通知的报文,可以将任何个节点发现的
    发表于 02-24 09:27 1619次阅读

    示波器破解CAN错误/BusOff的经验分享

    MCU内置了CAN控制器用来将MCU的数据封装为CAN格式,同时它也负责CAN的校验和错误
    发表于 09-08 09:19 1414次阅读

    读懂CAN通讯错误

    CAN总线通信技术广泛应用于多个行业,是每个总线设计工程师必学的个通讯网络。然而,对于CAN通信中的
    的头像 发表于 06-12 08:24 2518次阅读
    <b class='flag-5'>一</b><b class='flag-5'>文</b>读懂<b class='flag-5'>CAN</b>通讯<b class='flag-5'>错误</b><b class='flag-5'>帧</b>

    CAN错误定义

      CAN总线产生的错误错误的形式上报给应用层。设置注册表[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\
    发表于 01-03 15:57

    CAN总线过载及数据详解

    CAN:Controller Area Network,控制器局域网是种能有效支持分布式控制和实时控制的串行通讯网络。本文首先介绍了CAN总线系统结构及数据传输,其次详细的阐述了
    的头像 发表于 05-07 10:59 2.1w次阅读
    <b class='flag-5'>CAN</b><b class='flag-5'>总线</b>过载<b class='flag-5'>帧</b>及数据<b class='flag-5'>帧</b>详解

    英创信息技术关于新CAN驱动的错误定义

    CAN总线产生的错误错误的形式上报给应用层。设置注册表[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\
    的头像 发表于 02-05 10:27 1926次阅读
    英创信息技术关于新<b class='flag-5'>CAN</b>驱动的<b class='flag-5'>错误</b><b class='flag-5'>帧</b>定义

    详解常用的CAN总线(下):错误

    错误种类分为5种,分别是:位发送错误、ACK错误、位填充错误、CRC错误、格式
    发表于 06-19 17:25 4860次阅读
    详解常用的<b class='flag-5'>CAN</b><b class='flag-5'>总线</b>(下):<b class='flag-5'>错误</b><b class='flag-5'>帧</b>

    虹科干货 | 带你全面认识“CAN总线错误”()——CAN总线错误错误

    AsimpleintrotoCANerrorsCAN总线错误介绍在本系列文章中,我们将为您详细介绍CAN总线错误的相关知识,包括
    的头像 发表于 05-27 10:39 4528次阅读
    虹科干货 | 带你全面认识“<b class='flag-5'>CAN</b><b class='flag-5'>总线</b><b class='flag-5'>错误</b>”(<b class='flag-5'>一</b>)——<b class='flag-5'>CAN</b><b class='flag-5'>总线</b><b class='flag-5'>错误</b>与<b class='flag-5'>错误</b><b class='flag-5'>帧</b>

    科普系列:CAN总线错误及排查方法简介

    错误的基础知识错误的作用错误CAN
    的头像 发表于 02-23 15:11 3045次阅读
    科普系列:<b class='flag-5'>CAN</b><b class='flag-5'>总线</b><b class='flag-5'>错误</b><b class='flag-5'>帧</b>及排查方法简介

    CAN协议数据的介绍

    通过 CAN 总线传输数据是需要按照定协议进行的,CAN 协议提供了 5种格式来传输数据:数据
    的头像 发表于 07-25 10:36 1w次阅读
    <b class='flag-5'>CAN</b>协议数据<b class='flag-5'>帧</b>的介绍

    如何用示波器排查CAN的各种错误呢?

    如何用示波器排查CAN的各种错误呢? 导言: 控制器局域网络(Controller Area Network,CAN)是种常用的现场
    的头像 发表于 12-07 11:09 1101次阅读

    CAN通信协议中有哪几种类型?CAN通信中格式的作用

    CAN通信协议中有四种类型,分别是数据远程错误
    的头像 发表于 01-30 09:18 5059次阅读

    CAN总线的标准和扩展有什么区别呢?分别适用于什么工况?

    CAN总线的标准和扩展CAN协议中的两种类型。
    的头像 发表于 01-30 09:41 5629次阅读
    <b class='flag-5'>CAN</b><b class='flag-5'>总线</b>的标准<b class='flag-5'>帧</b>和扩展<b class='flag-5'>帧</b>有什么区别呢?分别适用于什么工况?

    CAN总线通信中的数据结构解析

    CAN总线由Bosch公司在1980年代开发,旨在为汽车电子系统提供个可靠的通信网络。随着技术的发展,CAN总线已经被广泛应用于各种工业和
    的头像 发表于 11-12 10:12 216次阅读