CAN通信(五)(CANFD介绍)

目录

九、CANFD

1.介绍

2.特点

3.帧结构

(1)帧起始

(2)仲裁段

(3)控制段

(4)数据段

(5)CRC段

(6)ACK段

(7)帧结束 

4.如何从传统的CAN升级到CANFD?

5.总结

其他CAN文章:


九、CANFD

1.介绍

       CANFD(控制器局域网灵活数据速率)是经典CAN协议的高级版本,旨在满足现代汽车和工业应用的需求。CANFD相较于经典CAN提供了多项改进。 随着总线技术在汽车电子领域越来越广泛的应用,特别是自动驾驶技术迅速发展,汽车电子对总线宽度和数据传输速率的要求也越来越高,传统CAN(1MBit/s,8Bytes)已难以满足日益增加的需求。因此,一种能够与CAN2.0A/B兼容,但通信速率更高,有效载荷更高的 CAN 总线:CAN-FD 总线协议应运而生,在2012年,Bosch 发布了新的CAN FD 标准 (CAN with Flexible Data Rate)。   

       CANFD在各个应用领域中被越来越多地采用,特别是在汽车工业中,随着对更高数据速率和更高效通信的需求不断增长。它支持高级驾驶辅助系统(ADAS)、车载信息娱乐系统以及其他需要快速可靠数据传输的现代汽车技术。

2.特点

        CAN FD继承了CAN的绝大多数特性,如同样的物理层,双线串行通信协议,基于非破坏性仲裁技术,分布式实时控制,可靠的错误检测和处理能力等,同时 CAN FD 弥补了 CAN 在总线带宽和数据长度方面的不足。几个显著的特点如下:

更大的数据负载能力:CANFD每帧数据负载最多可达64字节,而经典CAN最多为8字节。这允许在单帧中传输更多数据,减少了协议开销,提高了通信效率。

更高的数据速率:CANFD支持在数据阶段高达8 Mbps的数据速率,而经典CAN的最大数据速率为1 Mbps。这意味着CANFD可以更快地传输数据,降低通信延迟。

灵活的数据长度:CANFD的数据长度码(DLC)更加灵活,允许0到64字节的可变数据长度。这使得带宽利用更加高效,适应不同应用需求。

可靠的错误检测和处理能力:CANFD协议增强了错误检测和错误处理机制,提高了数据传输的可靠性。这对需要高安全性和高可靠性的应用(如汽车和工业自动化)尤为重要。

向下兼容性:CANFD设计时考虑了与经典CAN的兼容性。CANFD节点可以与经典CAN节点共存于同一网络中,支持旧系统与新系统的平滑过渡和升级。

增强的位定时:CANFD在位定时上有改进,可以更好地适应高频噪声环境,提供更稳健的通信性能。

双速率模式:CANFD允许在同一帧中使用两种不同的速率:仲裁阶段使用较低的速率,数据阶段使用较高的速率。这种双速率模式在保证仲裁可靠性的同时提高了数据传输速率。

3.帧结构

        与CAN一样,CAN FD一共具有:帧起始,仲裁段,控制段,数据段,CRC段,ACK段和帧结束,7部分组成。CAN FD节点可以正常收、发CAN报文,但CAN节点不能正确收、发CAN FD报文,因为其帧格式不一致(向下兼容性)。

(1)帧起始

        CANFD与CAN使用相同的SOF标志位来标志报文的起始,帧起始由1个显性位构成,标志着报文的开始,并在总线上起着同步的作用。

(2)仲裁段

        与传统CAN不同,CAN FD取消了对远程帧的支持,用RRS位替换了RTR位,为常显性。

  • RTR位(Remote Transmission Request):远程发送请求位,P位在数据帧里必须是显性,而在远程帧里为隐性。
  • RRS(Remote Request Substitution):远程请求替换位,即传统CAN中的RTR位,CAN FD中为常显性。

        IDE位仍为标准帧和扩展帧标志位,用于区分标准帧和扩展帧,若标准帧与扩展帧具有相同的前11位ID,那么标准帧将会由于IDE位为0,优先获得总线。

(3)控制段

        控制段中CANFD与CAN有着相同的IDE,res,DLC位。同时增加了三个控制bit位,FDF、BRS、ESI。

  • FDF位(FD Format):原CAN数据帧中的保留位r。FDF常为隐性,表示CAN FD 报文。
  • BRS位(Bit Rate Switch):位速率转换开关,当BRS为显性位时数据段的位速率与仲裁段的位速率一致,当BRS为隐性位时数据段的位速率高于仲裁段的位速率。
  • ESI位(Error State Indicator):表示发送节点的错误状态,为显性位时节点处于错误主动状态,为隐性位时节点处于错误被动状态。
  • DLC位(Data Length Code):4位,指示数据字段的字节数(0到15),对于CAN FD,允许的数据长度为0到64字节。

        DLC同样是4bit表示数据段的长度,对应的关系如下:

(4)数据段

        传输的具体数据

        CAN FD不仅能支持传统的0-8字节报文,同时最大还能支持12, 16, 20, 24, 32, 48, 64字节。

(5)CRC段

        为了避免位填充对CRC的影响,CAN FD在CRC场中增加了stuff count记录填充位的个数对应8的模,并用格雷码表示,还增加了奇偶校验位。FSB(fixed stuff-bit)固定为前一位的补码。

(6)ACK段

        与CAN 相比,在CAN FD 中最多可接受 2个位时间有效的 ACK,允许1个额外的位时间来补偿收发器相移和传播延迟
        由从高速的数据场到慢速的仲裁场时,时钟切换会引起收发器相移和总线传播延迟;为了补偿其相移和延迟,相比传统的CAN,在CANFD多加了这额外的1位时间。
在 ACK之后,发送ACK界定符,这是一个表示ACK结束的分隔符,用1位隐性位表示;

(7)帧结束 

        与CAN一样,CAN FD的帧结尾也为连续7位的隐性位。

4.如何从传统的CAN升级到CANFD?

①在硬件和工具方面,要使用CANFD,首先要选取支持CANFD的CA控制器和收发器,还要选取新的网络调试和监测工具。

②在网络兼容性方面,对于传统CAN 网段的部分节点需要升级到CANFD的情况要特别注意,由于帧格式不一致的原因,CANFD节点可以正常收发传统 CAN 节点报文,但是传统 CAN 节点不能正常收发CANFD 节点的报文。

5.总结

其他CAN文章:

CAN通信(一)(了解)-CSDN博客

CAN通信(二)(熟悉)-CSDN博客

CAN通信(三)-CSDN博客

CAN通信(四)-CSDN博客

  • 13
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值