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

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

3天内不再提示

【CAN总线知识】全面了解CAN总线协议

ZLG致远电子 2024-10-15 08:05 次阅读

提及总线,总是让人联想到那些交错在一起的计算机电线。那么这些电线如何发挥功效呢?这还得配合总线协议的管理来使用。那么今天我们介绍的就是CAN总线协议。看看这个协议的含义和应用吧。

2ac8ed92-8a89-11ef-b5cd-92fbcf53809c.jpg  CAN总线协议基本概念

1. 报文

总线上的信息以不同格式的报文发送,但长度有限。当总线开放时,任何连接的单元均可开始发送一个新报文。

2. 信息路由在CAN系统中,一个CAN节点不使用有关系统结构的任何信息,这里包含一些重要的概念:系统灵活性——节点可以在不要求所有节点及其应用层改变任何软件或硬件的情况下,被接于CAN网络。报文通信——一个报文的内容由其标示符ID命名,ID并不指出报文的目的,但描述数据的含义,以便网络中的所有节点有可能借助报文滤波决定该数据是否使它们激活。成组——由于采用了报文滤波,所有节点均可接受报文,并同时被相同的报文激活。数据相容性——在CAN网络中,可以确保报文同时被所有的节点或者没有节点接受,因此,系统的数据相容性是借助于成组和出错处理达到的。

3. 位速率

CAN的数据传输率在不同的系统中是不同的,而在一个系统中是固定的速率。

4. 优先权

在总线访问期间,标示符定义了一个报文静态的优先权。

5.远程数据请求

通过发送一个远程帧,需要数据的节点可以请求另一个节点发送相应的数据帧,该数据帧与对应的远程帧以相同的标示符ID命名。

6. 多主站

当总线开放时,任何单元均可以开始发送报文,发送具有最高优先权报文的单元会赢得总线的访问权。

7. 仲裁

当总线开放时,任何单元均可以开始发送报文,若同时有两个或者更多的单元开始发送,总线访问冲突运用逐位仲裁规则,借助标示符ID解决,这种仲裁规则可以使信息和时间均无损失,若具有相同标示符的一个数据帧和一个远程帧同时发送,数据帧优先于远程帧,仲裁期间,每个发送器都对发送位电平与总线上检测到的电平进行比较,若相同则该单元可以继续发送,当发送一个隐性电平,而在总线上检测为显性电平时,该单元退出仲裁,并不再传送后继位了。

8. 安全性

CAN总线协议为了获得尽可能高的数据传输安全性,在每个CAN节点中均设有错误检测,标定和自检的强有力措施。检测措施包括:发送自检,循环冗余校验,位填充,和报文格式检查。

9. 出错标注和恢复时间已损坏的报文由检验出错的节点进行标注。这样的报文将失效,并自动进行重发送。如果不存在新的错误,从检出错误到下一个报文开始发送的恢复实践最多为29个位时间。

10. 故障界定CAN节点又能力识别永久性的故障和暂时扰动,可自动关闭故障节点。

11. 连接CAN串行通信链路是一条众多单元均可被连接的总线,理论上单元数目是无限的,实际上,单元总数受限于延迟时间和总线的电器负载。

12. 应答所有接收器均对接收报文的相容性进行检查,回答一个相容的报文,并标注一个不相容的报文。


2ac8ed92-8a89-11ef-b5cd-92fbcf53809c.jpg  CAN的特点:属于串行通信网络

通信方式灵活。多主从方式工作,网络上任何节点均可以在任何时刻主动的向其他节点发送信息,不分主从。无需站地址等节点信息。可以构成多机备份系统。

CAN网络上的节点信息分成不同的优先级,可以满足不同的实时要求。

CAN采取非破坏性的总线仲裁技术,多个节点同时发送信息时,优先级低的节点会主动退出发送。

CAN只需通过报文滤波就可以实现点对点,1点对多点及全局广播等几种方式传送接收,无需调度。

CAN的直接通信距离最远可达10KM(5Kb/s),通信速率最高可达1Mb/s(40M)。

CAN上的节点数目前可达110个;报文标示符可达2032种(CAN2.0A),而CAN2.0B报文标示符几乎不受限制。

CAN通信采用短帧格式,传输时间短,抗干扰强,极好的验错效果,每帧最多8B足以满足控制要求,不会占用过长总线时间,实时性强。

CAN每帧都有CRC校验及其他验错措施。

接口中集成了CAN总线协议的物理层和数据链路层。

CAN的通信介质可为双绞线或同轴电缆,光纤。

  1. CAN节点在错误严重情况下具有自动关闭输出功能。

2b4d4f60-8a89-11ef-b5cd-92fbcf53809c.jpg  CAN总线协议基本规则

1.总线访问

采用载波监听多路访问,CAN控制器之恩能够在总线空闲时,就是节点侦听到网络上至少存在3个空闲位(隐性位)时开始发送,采用硬同步,所有的控制器同步都为与帧的起始的前沿。过了一定时间,并在一定条件后,重同步。

2. 仲裁

各节点向总线发电平时,也对总线上电平进行读取,并于自身发送的电平进行比较,相同则发下一位,直至全部发完。不同则说明网络上有更高优先级的信息帧正在发送,即停止发送,退出竞争。

3. 编码/解码

帧起始域,仲裁域,控制域,数据域和CRC序列均使用位填充技术进行编码,就是5个连续的同状态电平插入一位与它相补的电平,还原时每5个同状态的电平后的相补电平被删除。

4. 出错标注

当检测到位错误,填充错误,形式错误或应答错误时,检测出错条件的CAN控制器将发送一个出错标志。

5. 超载标注

一些控制器会发送一个或多个超载帧以延迟下一个数据帧或远程帧的发送。2b644364-8a89-11ef-b5cd-92fbcf53809c.jpg

CANFD接口卡USBCANFD-400U

• 4路CANFD 2路LIN

•XCP/CCP标定

• 兼容CAN2.0A/B模式收发

参考价格:3300元

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

    关注

    145

    文章

    1905

    浏览量

    130476
  • 数据传输
    +关注

    关注

    9

    文章

    1728

    浏览量

    64298
  • 总线协议
    +关注

    关注

    0

    文章

    115

    浏览量

    14824
收藏 人收藏

    评论

    相关推荐

    CAN总线协议知识科普

    本文说的CAN即是一种总线,也是一种协议。因此,我们常听见CAN总线,也常听见CAN
    发表于 09-15 12:47 3205次阅读

    CAN总线入门知识

    最近在调试一个CAN总线的设备遇到一些问题,简单总结一下。本文会对CAN总线进行简单介绍,CAN的硬件链路层,
    发表于 09-15 15:32 2034次阅读

    浅谈CAN FD总线协议帧格式

    假期更新了一文搞懂CAN总线协议帧格式,CAN FD总线协议怎能错过?本篇博文将讲解
    发表于 10-14 12:49 3244次阅读
    浅谈<b class='flag-5'>CAN</b> FD<b class='flag-5'>总线</b><b class='flag-5'>协议</b>帧格式

    CAN总线通信协议的基础知识

    本文将介绍CAN总线通信协议的基础知识,目前的内容仅为通用的协议部分,暂不涉及具体的外设模块的用法。研究通信
    的头像 发表于 06-16 10:58 6020次阅读
    <b class='flag-5'>CAN</b><b class='flag-5'>总线</b>通信<b class='flag-5'>协议</b>的基础<b class='flag-5'>知识</b>

    CAN总线定义与CAN协议的基本概念

    CAN总线是什么?CAN总线定义是什么? CAN(Controller Area Network)是ISO国际标准化的串行通信
    发表于 12-27 13:40 3.2w次阅读
    <b class='flag-5'>CAN</b><b class='flag-5'>总线</b>定义与<b class='flag-5'>CAN</b><b class='flag-5'>协议</b>的基本概念

    CAN总线协议是什么?CAN总线协议有哪些?CAN总线协议知识分析

    属于软件协议。本篇文章先概述一下CAN网络,让大家对CAN总线协议有一个全局的概念,再到底层的CAN
    的头像 发表于 10-03 19:53 7.4w次阅读
    <b class='flag-5'>CAN</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'>CAN</b><b class='flag-5'>总线</b><b class='flag-5'>协议</b><b class='flag-5'>知识</b>分析

    CAN总线协议教程|CAN报文分析

    CAN协议教程 介绍:CAN总线 CAN总线是广播类型的总线
    发表于 04-03 15:32 1.4w次阅读

    CAN总线为什么这么火,CAN总线是什么

    ),是一种用于实时应用的串行通讯协议总线,它可以使用双绞线来传输信号,是世界上应用最广泛的现场总线之一。CAN协议用于汽车中各种不同元件之间
    发表于 01-15 17:04 6037次阅读

    关于CAN总线错误的相关知识

    在本系列文章中,我们将为您详细介绍CAN总线错误的相关知识,包括CAN总线错误的基础概念、CAN
    的头像 发表于 05-27 17:56 2986次阅读

    CAN总线基础知识

    CAN总线是一种常用的总线,对于刚开始接触CAN总线的,面对着各式各样的资料,可能不知道从何看起,今天科普一下
    的头像 发表于 02-09 15:43 3650次阅读

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

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

    虹科干货 | 带你全面了解CAN总线错误”(三)——CAN节点状态与错误计数器

    AsimpleintrotoCANerrorsCAN总线错误介绍在本系列文章中,我们将为您详细介绍CAN总线错误的相关知识,包括CAN
    的头像 发表于 06-09 09:46 2216次阅读
    虹科干货 | 带你<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'>CAN</b>节点状态与错误计数器

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

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

    认识CAN总线错误 CAN总线错误分析与解决

    认识CAN 总线错误的第一步就是了解认识CAN 总线协议和它的具体功能,这样才能更容易地理解
    发表于 08-14 15:18 5459次阅读
    认识<b class='flag-5'>CAN</b><b class='flag-5'>总线</b>错误 <b class='flag-5'>CAN</b><b class='flag-5'>总线</b>错误分析与解决

    什么是CAN总线协议?它有哪些特性和应用?

    CAN总线协议(Controller Area Network,简称CAN),是一种在汽车和工业自动化领域广泛应用的串行通信协议。自1986
    的头像 发表于 05-27 16:32 944次阅读