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

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

3天内不再提示

CAN和CANFD协议简介(上)

瑞萨嵌入式小百科 来源:未知 2023-07-31 12:10 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

cbe01752-2f57-11ee-815d-dac502259ad0.gif

前篇内容请点击查看:

RA MCU CAN和CANFD IP介绍

1. 概述

CAN(Controller Area Network)和CANFD(Controller Area Network Flexible Data-rate)是一种常用于汽车和工业领域的通信协议。

CAN协议最初是由德国的博世公司(Bosch)在20世纪80年代开发的,旨在解决汽车电子设备之间的通信需求。它是一种高效可靠的串行通信协议,可支持在短距离上的高速数据传输。CAN协议以事件触发的方式进行通信,允许多个设备同时参与通信,并通过优先级机制确保数据传输的实时性和可靠性。Classic CAN,传统CAN,有时也称为经典CAN或普通CAN。

CAN协议的特点包括

双线制:CAN总线由CAN_H和CAN_L两根传输线组成,用差分信号传输数据,以提高抗干扰性能。

冲突检测与冲突解决:多个设备同时发送数据时,CAN协议能够检测到冲突并通过优先级机制解决。

帧格式简单:CAN消息由ID、数据、控制位和CRC校验组成,具有较小的开销和较高的数据传输效率。

容错能力强:CAN协议使用位级错误检测和错误恢复机制,能够实现高可靠性的数据传输。

随着汽车电子系统的发展和数据通信需求的增加,CANFD协议应运而生。CANFD在保持CAN协议基本特性的同时,增加了一些新的特性,主要是在数据传输速率和数据长度上的增强。相对于传统的CAN协议,CANFD支持更高的数据传输速率(最高可达到8Mbps)和更大的数据长度(最多可传输64字节的数据)。这使得CANFD能够满足对数据带宽要求更高的应用场景,如高级驾驶辅助系统(ADAS)和自动驾驶领域。

CAN FD协议是由Bosch以及行业专家预研开发的,并于2012年发布。通过标准化对其进行了改进,现已纳入ISO 11898-1:2015。原始的Bosch CAN FD版本(非ISO CAN FD)与ISO CAN FD是不兼容。CAN FD具有四个主要优点:

增加了数据的长度:CAN FD每个数据帧最多支持64个数据字节,而传统CAN最多支持8个数据字节。这减少了协议开销,并提高了协议效率。

增加传输的速度:CAN FD支持双比特率;与传统CAN一样,标称(仲裁)比特率限制为1 Mbit/s,而数据比特率则取决于网络拓扑/收发器。实际上,可以实现高达5 Mbit/s的数据比特率(实际应用中可以达到8 Mbit/s,但没有标准)。

更好的可靠性:CAN FD使用改进的循环冗余校验(CRC)和“受保护的填充位计数器”,从而降低了未被检测到的错误的风险。这在汽车和工业自动化等安全攸关的应用中至关重要。

平滑过渡:在一些特定的情况下CAN FD能用在仅使用传统CAN的ECU上,这样就可以逐步引入CAN FD节点,从而为OEM简化程序和降低成本。

cbf0b008-2f57-11ee-815d-dac502259ad0.png

与传统CAN相比,CAN FD可以将网络带宽提高3到8倍,效率可从50%提升到90%,从而为数据的增长提供了一种简单的解决方案。

2. CAN协议

2.1 物理层

I2C、SPI等具有时钟信号的同步通讯方式不同,CAN通讯并不是以时钟信号来进行同步的,它是一种异步通讯,只具有CAN_High和CAN_Low两条信号线, 共同构成一组差分信号线,以差分信号的形式进行通讯。

CAN物理层的形式主要有两种:闭环总线网络和开环总线网络。

2.1.1 闭环总线网络

如下所示的图中的CAN通讯网络是一种遵循ISO11898标准的高速、 短距离“闭环网络”,它的总线最大长度为40m,通信速度最高为1Mbps,总线的两端各要求有一个“120欧”的电阻

cc14ff4e-2f57-11ee-815d-dac502259ad0.jpg

2.1.2 开环总线网络

如下所示的图中的是遵循ISO11519-2标准的低速、远距离“开环网络”,它的最大传输距离为1km, 最高通讯速率为125kbps,两根总线是独立的、不形成闭环,要求每根总线上各串联有一个“2.2千欧”的电阻。

cc2ee472-2f57-11ee-815d-dac502259ad0.jpg

2.1.3 ISO11898(闭环总线网络)和11519-2 (开环总线网络)协议的不同点

ISO11898 和 ISO11519-2 标准对于数据链路层的定义相同,但物理层不同。

ISO11898是通信速度为125kbps-1Mbps的CAN高速通信标准。

ISO11519是通信速度为125kbps以下的CAN低速通信标准。

下图描述了ISO11898和11519-2物理层的主要不同点。

cc4fea78-2f57-11ee-815d-dac502259ad0.png

用户需根据系统需要设定通信速度及总线长度。

cc63afae-2f57-11ee-815d-dac502259ad0.png

2.1.4 CAN协议中的差分信号

差分信号又称差模信号,与传统使用单根信号线电压表示逻辑的方式有区别,使用差分信号传输时,需要两根信号线,这两个信号线的振幅相等, 相位相反,通过两根信号线的电压差值来表示逻辑0和逻辑1。

CAN协议中对它使用的CAN_High及CAN_Low表示的差分信号做了规定, CAN协议标准表示的信号逻辑参见下表。

cc81e33e-2f57-11ee-815d-dac502259ad0.png

以高速CAN协议为例,当表示逻辑1时(隐性电平),CAN_High和CAN_Low线上的电压均为2.5v, 即它们的电压差VH-VL=0V;而表示逻辑0时(显性电平), CAN_High的电平为3.5V,CAN_Low线的电平为1.5V, 即它们的电压差为VH-VL=2V。例如,当CAN收发器从CAN_Tx线接收到来自CAN控制器的低电平信号时(逻辑0), 它会使CAN_High输出3.5V,同时CAN_Low输出1.5V,从而输出显性电平表示逻辑0。

cca66ee8-2f57-11ee-815d-dac502259ad0.jpg

在CAN总线中,必须使它处于隐性电平(逻辑1)或显性电平(逻辑0)中的其中一个状态。假如有两个CAN通讯节点,在同一时间,一个输出隐性电平, 另一个输出显性电平,类似I2C总线的“线与”特性将使它处于显性电平状态,显性电平的名字就是这样来的,即可以认为显性具有优先的意味。

由于CAN总线协议的物理层只有1对差分线,在一个时刻只能表示一个信号,所以对通讯节点来说,CAN通讯是半双工的,收发数据需要分时进行。在CAN的通讯网络中,因为共用总线,在整个网络中同一时刻只能有一个通讯节点发送信号,其余的节点在该时刻都只能接收。


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

    关注

    147

    文章

    18605

    浏览量

    387049
  • 瑞萨
    +关注

    关注

    36

    文章

    22429

    浏览量

    89751
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    直播回顾 | CAN XL新标准落地难?从协议解析到实践应用,虹科技术专家带您全面探索CAN XL的技术突破与落地

    IntroductionCANXL总线作为CAN网络的第三代协议,CANXL总线技术在兼容经典CAN/CANFD的基础,实现了单帧2048
    的头像 发表于 11-12 17:32 1116次阅读
    直播回顾 |   <b class='flag-5'>CAN</b> XL新标准落地难?从<b class='flag-5'>协议</b>解析到实践应用,虹科技术专家带您全面探索<b class='flag-5'>CAN</b> XL的技术突破与落地

    【CPKCOR-RA8D1】+ 4. 解析CANFD 的DBC协议,破解整车厂奥秘

    DBC文件是一种集成了CANCANFD报文格式帧的数据库,和整车厂合作开发项目时,必定会接触到DBC文件,解析DBC文件是考验一个汽车诊断工程师的终极水平题目!!!!!! 手头上刚好有和宝马
    发表于 10-18 18:12

    ZPS-CANFD总线分析仪:一键操作,全面评估CAN/CANFD节点健康状态

    功能,让复杂的信号质量检测变得简单而高效。为什么需要专业的信号质量检测?在CAN/CANFD总线系统中,信号质量直接决定通信可靠性,微小的信号畸变都可能导致系统通信
    的头像 发表于 09-26 11:46 362次阅读
    ZPS-<b class='flag-5'>CANFD</b>总线分析仪:一键操作,全面评估<b class='flag-5'>CAN</b>/<b class='flag-5'>CANFD</b>节点健康状态

    广成科技CANFDCAN总线GCAN-418的优势

    作为CAN总线的升级产品,CANFD相较于传统的CAN总线,拥有如下几个方面的优势。
    的头像 发表于 08-05 11:47 904次阅读
    广成科技<b class='flag-5'>CANFD</b>转<b class='flag-5'>CAN</b>总线GCAN-418的优势

    CANFD节点的采样点如何测量?

    本文导读为提升CAN/CANFD网络的通信可靠性,各节点需尽可能配置合适且一致的采样点。然而在设备CAN通信采样点参数未知的情况下,如何验证各节点采样点设置的一致性?本文结合ZPS-CANFD
    的头像 发表于 07-31 11:34 935次阅读
    <b class='flag-5'>CANFD</b>节点的采样点如何测量?

    CANFD 0 通道 2 收到的所有消息传递到 CANFD 1 通道 0,是否可以使用 DAM 通道?

    你好 我正在尝试将 CANFD 0 通道 2 收到的所有消息传递到 CANFD 1 通道 0,是否可以使用 DAM 通道?如何。 我在配置 CANFD 1 通道 0 中的源 FiFo
    发表于 07-14 06:56

    新品发布 | GW2208:同星智能以太网/CANFD/LIN网关设备来袭!

    CAN/CANFD+2路LIN+数字I/O的强悍配置,重新定义总线通信的灵活性与效率。视频介绍01产品简介GW2208是同星智能推出的一款可将CAN/LIN转以太网
    的头像 发表于 07-04 20:04 990次阅读
    新品发布 | GW2208:同星智能以太网/<b class='flag-5'>CANFD</b>/LIN网关设备来袭!

    解析RZ/N2L CANFD模块的缓冲区机制(2)

    在工业自动化、智能交通、机器人等领域,CANFDCAN with Flexible Data-Rate)技术正逐步取代传统CAN,以适应更高的数据速率和更复杂的通信需求。本文将深入解析RZ/N2L
    的头像 发表于 05-19 14:13 1147次阅读
    解析RZ/N2L <b class='flag-5'>CANFD</b>模块的缓冲区机制(2)

    CANFD协议转换器:搭建通讯桥梁

    局域网络灵活数据速率)协议与其他协议进行转换,以便在物联网环境中实现设备之间的互联互通。近期发现了两款产品USR-CAN315(CANFD转以太网)、USR-
    的头像 发表于 04-19 09:48 676次阅读
    <b class='flag-5'>CANFD</b><b class='flag-5'>协议</b>转换器:搭建通讯桥梁

    智多晶CAN/CANFD IP介绍

    CAN总线(Controller Area Network)是一种广泛应用于工业控制、汽车电子等领域的通信协议
    的头像 发表于 03-27 18:06 990次阅读
    智多晶<b class='flag-5'>CAN</b>/<b class='flag-5'>CANFD</b> IP介绍

    车载通信方案为何选择CAN/CANFD

    摘要 随着汽车电子技术的飞速发展,车载通信系统在车辆的智能化、网联化进程中扮演着至关重要的角色。控制器局域网络(CAN)及其扩展版本CANFD凭借其卓越的可靠性、高效的数据传输能力和强大的抗干扰特性
    的头像 发表于 03-25 21:38 684次阅读

    如何使用ZPS-CANFD观察CAN数据链路层的工作过程

    CAN总线在数据链路层中的应用是其通信协议中的关键部分、它负责在物理层之上实现数据的可靠传输。致远第二代CAN总线分析仪ZPS-CANFD,除了可以完成
    的头像 发表于 03-18 11:38 756次阅读
    如何使用ZPS-<b class='flag-5'>CANFD</b>观察<b class='flag-5'>CAN</b>数据链路层的工作过程

    浅谈CAN协议转换模块

    CAN(Controller Area Network)协议转换模块在现代工业自动化、汽车制造、航空航天等领域扮演着至关重要的角色。作为连接不同CAN网络或CAN与其他通信
    的头像 发表于 02-05 16:37 741次阅读

    CAN/CANFD 总线干扰仪TESTBASE-BDI

    总线干扰仪是CAN/CANFD总线一致性测试中必不可少的重要设备,用于实现采样点以及故障注入等测试项配合桌面式车载网络自动化测试系统TESTBASE-DESKNAT以及基于VBA的CAN/CA
    的头像 发表于 12-26 11:24 1413次阅读
    <b class='flag-5'>CAN</b>/<b class='flag-5'>CANFD</b> 总线干扰仪TESTBASE-BDI

    rk3588 canfd发送部分数据失败的问题

    在使用rk3588的板子进行canfd通信时,有些数据发送必然失败: 1,cansend can0 200##065.68.00.00.96.00.00.01 必然成功 2,cansend can
    发表于 12-18 10:53