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

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

3天内不再提示

ISO 11898里CAN总线的基本特点与结构

冬至子 来源:知锂 作者:SW十五 2023-10-31 14:31 次阅读

范围

ISO 11898-1主要描述了CAN总线的基本架构,定义了CAN在数据链路层的通信方式。重点内容是数据链路层的两个子层:逻辑链路控制(LLC)和介质访问控制(MAC)。

LLC和MAC工作使用很少接触,我理解的是把CAN比作一道菜的话,MAC是厨师,LLC是传菜员。

ISO 11898-1定义了两种CAN,经典CAN和CAN FD。

经典CAN:波特率最高1Mbit/s,数据场每帧可达8个字节。

CAN FD:波特率最高超过1Mbit/s,数据场每帧可超过8个字节。

其实这里说波特率不是特别准确,看单位就知道规范的说法是比特率或位速率,标准原文也是bit rates。1个波特表示一个符号,一个符号可以是多个bit组成,而1个比特就是一个bit,但口语大家都说波特率,也没有歧义,就这么用吧。

波特率达到1Mbit/s时,最大传输距离为40m。

CAN的基本特点

CAN有如下特点:

— 基于优先权的多主总线访问;

多主方式是指网络上的每一节点都可以发送信息,每一节点也都可以对某一信息的标识符进行检测。优先权是根据标识符的值判定,ID值越小,优先权越高。

— 基于内容的无损仲裁;

仲裁机制可以保证不会丢失信息,也不会浪费时间。

— 所有帧以广播方式传输;

每一节点发出信息,同一总线上的所有节点都可以选择接收该信息。

— 通过接收滤波进行多点传输;

接收器不判断是哪个节点发送的信息,而是通过帧接收滤波的方法判断该信息是否和接收器相关。发送也是一样。

— 支持远程数据请求;

某个节点通过发送远程帧,请求另一个节点向自己回应相应的数据帧,这个数据帧标识符和远程帧标识符相同。

— 配置灵活;

只要标识符数量够,可以不做软件或硬件的变更而增加节点。

— 全网内数据具有一致性;

某一帧可以同时被所有节点接收,也可以同时不被所有节点接收。

— 错误检测和错误通报;

总线数据校验,有多种方式。

— 自动重传仲裁失败、未被确认或在传输过程中被故障损坏的帧;

仲裁失败会在下次总线空闲期间自动重发。错误帧在恢复时间之后,如果未再出错,会被适时重发。

— 区分节点的临时故障和永久故障,以及自动关闭故障节点。

故障节点会被断开,会无法发送和无法接收任何帧。

CAN的消息帧

CAN在发送的时候,由LLC消息帧转换为MAC消息帧;CAN在接收的时候,由MAC消息帧转换为LLC消息帧。

LLC消息帧包括:标识符、格式化场、数据长度场、LLC数据场。

MAC消息帧包括:帧起始、仲裁场、控制场、数据场、循环冗余码校验场(CRC场)、应答场、帧结束。

一般好像只讨论发出的MAC消息帧。消息帧分4种:数据帧、远程帧、错误帧、超载帧。数据帧最常见,也最复杂,以此为例说明帧结构。

图片

帧起始(SOF) :数据帧和远程帧的开始,只由一个显性位组成,并且只在总线空闲时发送。

仲裁场 :标准帧中由11位标识符(标识符编码从ID-28到ID-18)和RTR位组成;扩展帧中由29位标识符(标识符编码从ID-28到ID-18、ID-17到ID-0)、SRR位、IDE位和RTR位组成组成。

RTR位叫远程传输请求位,数据帧中RTR是显性电平,远程帧中RTR是隐性电平。

SRR位叫替代传输请求位,在扩展帧中始终是隐性电平。

IDE位叫标识符扩展位。标准帧也有IDE位,只不过是在控制场。IDE位在标准帧中是显性电平,在扩展帧中是隐性电平。

控制场 :总共6位。标准帧中,由IDE(显性)、r0(显性)和DLC组成;扩展帧中,由r1(显性)、r0(显性)和DLC组成。

DLC叫数据长度码,4位。DLC的值就是这一帧里数据场的长度。

数据场 :0~8个字节,存储着发送的数据,即这一帧想要传输的信息。

CRC场 :循环冗余码校验场,由CRC序列和CRC界定符组成。

CRC序列是发送节点根据一个约定好的多项式算出来的校验码,这个多项式的系数根据这帧报文里的帧起始、仲裁场等数据确定。接收节点用同样的方式计算。如果两方算出来的校验码一致,则报文正常;不一致,则请求重新发送。

CRC_15用于经典CAN,CRC_17用于数据场不超过16个字节的CANFD,CRC_21用于数据场超过16个字节的CANFD。

图片

CRC界定符算是一个分界线,经典CAN中为1个隐性位,CANFD中为1~2个隐性位。

应答场(ACK场) :总共2位,由ACK槽和ACK界定符组成,两个都是隐性位。

帧结束 :由7个隐性位组成。

其他3种消息帧与数据帧类似,只是结构不太一样。

远程帧由6个域组成:帧起始、仲裁场、控制场、CRC场、应答场和帧结束。

错误帧由错误标志和错误界定符组成。

超载帧由超载标志和超载界定符组成。

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

    关注

    145

    文章

    1812

    浏览量

    129600
  • 接收器
    +关注

    关注

    14

    文章

    2215

    浏览量

    70673
  • ACK
    ACK
    +关注

    关注

    0

    文章

    27

    浏览量

    11081
  • CRC校验
    +关注

    关注

    0

    文章

    81

    浏览量

    15032
  • LLC电路
    +关注

    关注

    0

    文章

    42

    浏览量

    7400
收藏 人收藏

    评论

    相关推荐

    高速CAN总线和低速CAN总线的特性

    ISO 11898-2和ISO 11898-3中分别规定了两种CAN总线结构(在BOSCH
    发表于 04-07 09:30 2023次阅读
    高速<b class='flag-5'>CAN</b><b class='flag-5'>总线</b>和低速<b class='flag-5'>CAN</b><b class='flag-5'>总线</b>的特性

    ISO11898 CAN标准

    ISO 11898 英文原版资料分享!!!
    发表于 01-14 18:24

    can总线stm32交通灯

    can总线stm32交通灯,1:CAN简介CAN是Controller Area Network,是一种串行的通信协议,有两标准:ISO11898
    发表于 08-05 06:41

    ISO11898物理层特性

    390图 30.1.1 ISO11898 物理层特性从该特性可以看出,显性电平对应逻辑 0,CAN_H 和 CAN_L 之差为 2.5V 左右。而隐性平对应逻辑 1,CAN_H 和
    发表于 08-06 07:30

    CAN总线特点

    CAN是Controller Area Network的缩写,由德国博世公司开发;CAN通过ISO11891以及ISO11519进行了标准化;CAN
    发表于 08-11 08:19

    CAN协议的特点

    目录1、什么是CAN2、CAN协议的特点3、ISO11898标准下的物理层特征4、CAN 协议的5 种类型帧4.1、
    发表于 08-19 08:02

    CAN协议的特点

    ISO11519-2是针对通信速率为125Kbps以下的低速通信标准。CAN协议的特点**多主控制:**总线空闲时,所有单元都可发送消息,而两个以上的单元同时开始发送消息时,根据标识符
    发表于 08-19 07:56

    CAN总线笔记 精选资料分享

    Area Network 的缩写(以下称为CAN),是ISO国际标准化的串行通信协议。由德国电气商博世公司在1986 年率先提出。此后,CAN 通过ISO11898
    发表于 08-20 07:17

    CAN总线协议

    CAN是控制器局域网络(Controller Area Network, CAN)的简称,是由以研发和生产汽车电子产品著称的德国BOSCH公司开发的,并最终成为国际标准(ISO 11898
    发表于 08-20 06:27

    CAN总线的原理是什么

    CAN是控制器局域网络(ControllerAreaNetwork,CAN)的简称,是由以研发和生产汽车电子产品著称的德国BOSCH公司开发的,并最终成为国际标准(ISO11898),是国际上
    发表于 01-13 07:52

    CAN总线协议简介

    采用载波监听多路访问、逐位仲裁的非破坏性总线仲裁技术。直接通信距离最远10km,速率5Kb/s通信速率最高可达1Mb/s,距离40m末端要有120欧终端电阻11898协议iso的osi模型11
    发表于 03-01 06:29

    CAN_ISO11898CAN2.0

    CAN_ISO11898CAN2.0,感兴趣的小伙伴们可以看看。
    发表于 07-26 10:43 432次下载

    CAN总线结构CAN总线标准帧

    CAN总线规范采用了ISO-OSI(Open System Interconnection Reference Model,开放式通信系统互联参考模型)的三层网络结构,有三种不同的器件
    的头像 发表于 03-13 14:09 1.5w次阅读

    CAN总线的基础知识

    CAN总线最初由德国Bosch公司为汽车检测、控制系统而设计的。1993年CAN成为国际标准iso11898(高速应用)和iso1119(低
    发表于 04-19 17:14 14次下载

    CAN总线的发展历程 CAN XL总线的典型应用

    进一步升级,2003年CAN总线升级为HS CAN,但还是第一代技术。2011年第二代CAN总线CAN
    的头像 发表于 12-21 14:03 1020次阅读
    <b class='flag-5'>CAN</b><b class='flag-5'>总线</b>的发展历程 <b class='flag-5'>CAN</b> XL<b class='flag-5'>总线</b>的典型应用