最近越来越多工程师关注CAN FD,同时也会向虹科反馈CAN FD的产品应用信息。觉得对于CAN FD的发布,对于中国的工程师或者是中国对CAN技术的应用将会迎来新的契机。试想,国外累计了20多年的CAN技术呈现出来的新技术-CAN FD,在它诞生没多久就可以见证和陪伴它的“成长”,对于技术工程师来说是多么美妙的事情。
当第一次接触CAN FD,现场很多人都会有疑问,CAN FD与CAN有哪些不同呢?CAN FD能否与当前的CAN 兼容?目前CAN FD的应用情况怎么样?等等一系列相关的问题就像打开话匣子一样迸发出来。接下来重点介绍CAN FD与CAN的不同之处,同时也作了哪些升级。
一、CAN FD采用了两种位速率
CAN FD全称为CAN with Flexible Data-rate,即是带灵活可变的数据波特率,在数据段中可以实现高达理论15Mbit/s的通信波特率,从控制场中的BRS位到ACK场之前(含CRC分界符)为可变速率,其余部分为原CAN总线用的速率。
二、CAN-FD的数据帧增加至64个字节有效数据
如下图可见,较之CAN基本数据格式,CAN-FD的数据位长度已经突破最大8个字节的数据,达到最高64个字节的有效数据。
三、帧结构的变化:
其中CAN FD 数据帧在控制场新添加EDL位、BRS位、ESI位,采用了新的DLC编码方式、新的CRC算法(CRC场可能扩展到17,21,26位)。
3.1 控制场添加EDL位、BRS位、ESI位
EDL位:(Extended Data Length)原CAN数据帧中的保留位r, 该位功能为:
隐性: 表示CAN FD 报文 (采用新的DLC编码和CRC算法)
显性: 表示CAN报文
BRS位:( Bit Rate Switch)该位功能为:
隐性:表示转换可变速率
显性:表示不转换速率
ESI(Error State Indicator),该位的功能为:
隐性:表示发送节点处于被动错误状态(Error Passive)
显性:表示发送节点处于主动错误状态(Error Active
3.2 新的DLC编码方式
对比ISO 11898-1的编码方式是线性编码方式,CAN-FD新的DLC编码方式是以阶梯式的向上增加,而非逐一向上的非线性编码。
3.3 更长的数据位
当然少不了数据域高达64个字节的数据长度:
3.4 新的CRC算法
确定在第一位以及以后每4位添加一个填充位加以分割,这个填充位的值是上一位的反码,作为格式检查,如果填充位不是上一位的反码,就作出错处理。
CAN FD的CRC场扩展到了16位以上,可扩展到17,21位。。由于数据场长度有很大变化区间,所以要根据DLC大小应用不同的CRC生成多项式。
综上说了那么多理论上的变化,看起来还是不够具体,那么就来一个CAN标准帧与CAN FD帧的波特对比图:
有关CAN FD与CAN 的兼容问题,Holger提到目前有三种方式来应付同一个平台中两者的兼容问题,
1.同一个平台采用CAN FD和CAN两种硬件通道,
2.同一个平台保持CAN处理器不变,改变CAN收发器,
3.在使用CAN FD通信时,让CAN节点进入休眠状态。
责任编辑:gt
全部0条评论
快来发表一下你的评论吧 !