参考
关于CAN和CANFD物理层和数据链路层的对比分析 - 柚子社区深度解析CAN-FD与CAN协议的差别
1、速率
CAN的速率不可变,最大为1Mbps;CANFD的速率可变,最大为8Mbps,总裁比特率为1Mbps,与CAN一样。所以说,CANFD可变的速率都表现在数据场。
2、数据长度
CAN一帧数据长8字节,CANFD一帧数据长度最长为64字节。
3、帧格式
CANFD新增了FDF、BRS、ESI位。
FDF:FDF为隐性电平,表示是CAN报文,FDF为显性电平,表示是CANFD报文。
BRS:隐性表示转换为可变速率,显示表示转换为不可变速率。
ESI:隐性表示发送节点处于被动错误状态,显性表示处于主动错误状态。
4、CRC
CAN与CANFD的CRC的计算方式不同。
5、DLC的计算方式
CANFD采用新的DLC的计算方式,在0-8位使用线性规则,在9-64位使用非线性规则。
总结:
CANFD具有更高的可调传输速率,更精确的CRC校验公式。CANFD的CAN的升级版,在物理层不变,只是在数据链路层发生变化。