欢迎来到Casey's Blog😉|

caseyzz

园龄:2年3个月粉丝:1关注:0

CANFD总线协议

1.帧起始

  与经典CAN类似,CAN FD数据帧的第1位也是“SOF(Start Of Frame,帧起始)”,显性电平(逻辑0)

2.仲裁域

  与经典CAN类似,不过将“RTR”位替换为“RRS”位。RRS是英文“Remote Request Substitution(远程请求替换)”的缩写,该位替代了远程帧请求位,并且在CAN FD中永远保持显性(逻辑0)。这就意味着CAN FD中没有远程帧.

这里的ldentifier就是CANDB中的消息ID

3.控制域

  保留了经典CAN的IDE/r1、r0和DLC,增加了FDF、BRS和ESI三个位,如下图中的绿色部分:

其中:

  1. IDE(Identifier Extension):扩展帧标识。当该位为隐性(逻辑1)时表示扩展帧,显性(逻辑0)表示标准帧。

  2. FDF(FD Format Indicator):FD帧标识。当该位为隐性(逻辑1)时表示CAN FD帧,显性(逻辑0)表示经典CAN帧。

  3. res:保留位。

  4. BRS(Bit Rate Switch):位速率切换位。当该位为隐性(逻辑1)时仲裁相和数据相使用不同的传输速率。

  5. ESI(Error State Indicator):错误状态标识。当该位为隐性(逻辑1)时表示发生错误。
    当该位为隐性(逻辑1)时表示发生错误。

  6. DLC(Data Length Code):数据长度编码,共有4位,用来表示数据的实际长度(字节)。DLC0是DLC的第0位,DLC3是其第3位。四位二进制数最大可以表示的数值为15。因此,对于经典CAN数据长度最大8字节来说,数据长度编码可以顺序编号,如下面的表格所示.


但是CAN FD希望能最大传输64字节的数据,这样数据编码就不能采用顺序增长的方式,必须进行定义。为了与经典CAN兼容,8字节以前的数据是相同,以后的编码采用下面的定义:

本文作者:caseyzz

本文链接:https://www.cnblogs.com/caseyzq/p/18670692

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   caseyzz  阅读(21)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起