CAN通信数据帧介绍

发布时间:2023-04-04 11:00

CAN通信有五个帧,其中最重要的是数据帧!!!!

我们下面开始讨论数据帧

一。数据帧的格式(数据帧有七个段组成)

                             ①,帧起始

                                                           表示数据帧开始的段

                               ,仲裁段

                                                           表示该帧优先级的段

                               ,控制段

                                                           表示数据的字节数及保留位的段

                               ,数据段(一个帧最多可以发送八个字节)

                                                           数据的内容,一帧可发送0~8个字节的数据

                               CRC

                                                           检查帧的传输错误的段

                               ACK

                                                           表示确认正常接收的段

                                ,帧结束

                                                           表示数据帧结束的段

二。数据帧的构成

CAN通信数据帧介绍_第1张图片

 

三。数据帧解析

    1.帧起始

                      标准帧和扩展帧都是由1个位的显性电平表示帧起始

 

 

     2.仲裁段  (表示数据优先级的段

                标准帧和扩展帧格式在本段有所区别,区别如图所示

CAN通信数据帧介绍_第2张图片

 

  注意:

                                  (1)  ID:高位在前,低位在后

                          (2) 基本ID,禁止高7位都为隐性,即不能:ID=1111111XXXX

                                  (3) RTR,远程请求位。0,数据帧;1, 远程帧

                                  (4) SRR,替代远程请求位。设置为1(隐性电平)

                                  (5) IDE,标识符选择位。0,标准标识符;1,扩展标识符

3.控制段(表示数据段的字节数

                 由6个位构成,表示数据段的字节数。

                 标准帧和扩展帧的控制段稍有不同,如图所示,

CAN通信数据帧介绍_第3张图片

注意:

                               (1)   r0r1:保留位

                                          必须以显现电平发送,但是接收可以是隐性电平

                       (2)   DLC:数据长度码

                                                       0~8,表示发送/接收的数据长度(字节)

                              (3)   IDE,标识符选择位

                                         0,标准标识符

                                         1,扩展标识符

 

 

4.数据段

该段可包含0~8个字节的数据从最高位(MSB)开始输出。标准帧和扩展帧在这个段的格式完全一样

 

5.CRC段(该段用于检查帧传输错误

                          1)由15个位的CRC顺序和1个位的CRC界定符(用于分隔的位)组成

                            (2) 标准帧和扩展帧在这个段的格式也是相同的

CAN通信数据帧介绍_第4张图片

        (1)CRC的值计算范围包括:帧起始、仲裁段、控制段、数据段

      (2)接收方以同样的算法计算 CRC 值并进行比较,不一致时会通报错误。

 

 

6.ACK段(此段用来确认是否正常接收

                (1)ACK段是由ACK(ACK Slot)ACK界定符2个位组成

                (2)标准帧和扩展帧在这个段的格式也是相同的

CAN通信数据帧介绍_第5张图片

                  

                           3ACK的各个段

                                            发送单元ACK段:发送2个隐性位

                              接收单元ACK段:接收到正确消息的单元,在ACK槽发送显性位,通知发送单元,正常接收结束

                                                        称之为发送ACK/返回ACK

                             注意:发送 ACK 的是既不处于总线关闭态也不处于休眠态的所有接收单元中,

                                       接收到正常消息的单元(发送单元不发送ACK)。

                                       正常消息是指:不含填充错误、格式错误、CRC 错误的消息

 

 

7,帧结束。

               1)由7个位的隐性位组成。

               2)标准帧和扩展帧在这个段格式完全一样。

 

ItVuer - 免责声明 - 关于我们 - 联系我们

本网站信息来源于互联网,如有侵权请联系:561261067@qq.com

桂ICP备16001015号