打印
[其它应用]

CAN数据帧结构图解分析

[复制链接]
485|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
aoyi|  楼主 | 2023-7-18 12:11 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式



CAN数据帧的数据位结构主要包括以下几个部分:

起始位(Start of Frame,SOF):1位,用于标识一个CAN数据帧的开始,其值为低电平(0)。
标识符(Identifier,ID):11位或29位,用于标识CAN数据帧的类型和发送者与接收者等信息。
标准标识符(11位):用于标识网络中的设备和数据类型,其中前11位是唯一的,由发送设备定义。

扩展标识符(29位):与标准标识符类似,但可提供更多的地址空间,用于大型网络中的设备和数据类型。

远程帧标志(Remote Frame,RTR):1位,用于标识CAN数据帧是否为远程帧,其值为高电平(1)表示为远程帧,低电平(0)表示为数据帧。
数据长度代码(Data Length Code,DLC):4位,用于标识数据段的长度,最多可以传输8个字节的数据。
数据段(Data Field):0-64位(准确来说是0-8个字节的数据),用于传输数据信息,具体长度由DLC指定。
帧检验序列(Frame Check Sequence,FCS):15位或17位,用于检验CAN数据帧的完整性和正确性,其中15位用于标准帧,17位用于扩展帧。
结束位(End of Frame,EOF):7位或3位,用于标识CAN数据帧的结束,其值为高电平(1)。 总的来说,CAN数据帧的数据位结构由起始位、标识符、远程帧标志、数据长度代码、数据段、帧检验序列和结束位组成,每个部分的长度和值都是由CAN协议规定的。
注释:CAN数据帧的结束符长度并不是完全不定的,而是根据数据位速率(Data Bit Rate,DBR)而定。CAN总线协议规定,对于数据位速率低于等于125kbps的网络,CAN数据帧的结束符长度为7个位;对于数据位速率大于125kbps的网络,CAN数据帧的结束符长度为3个位。这是因为在高速网络中,由于数据传输速率更快,所以CAN控制器可以更快地检测到结束位,因此可以减少结束符的长度,从而提高网络的传输效率。而在低速网络中,由于数据传输速率较慢,所以CAN控制器需要更长的时间来检测结束位,因此需要一个更长的结束符来确保数据帧传输的正确性和完整性。因此,CAN数据帧的结束符长度是根据数据位速率而定的,并不是完全不定的。


————————————————
版权声明:本文为CSDN博主「嵌入式小宁」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_53592457/article/details/129794805

使用特权

评论回复
沙发
LOVEEVER| | 2023-12-5 17:19 | 只看该作者
这个一般是标准帧协议使用的规范比较多

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

99

主题

3301

帖子

3

粉丝