当前位置:   article > 正文

CAN通讯协议的数据帧、远程帧_can远程帧

can远程帧

CAN数据帧

数据帧用于发送单元向接收单元发送数据。数据帧由7个段构成:

  1. 帧起始:表示数据帧开始的段
  2. 仲裁段:表示该帧优先的段
  3. 控制段:表示数据字节数及保留位的段
  4. 数据段:数据的内容,可以发送0~8个字节的数据
  5. CRC段:检查帧的传输错误的段
  6. ACK段:便是确认正常接收的段
  7. 帧结束:表示数据帧结束的段在这里插入图片描述

数据帧-起始段

表示帧开始的段。1 个位的显性位。
在这里插入图片描述

数据帧-仲裁段

表示数据的优先级的段,标准格式和扩展格式在此的构成有所不同。
在这里插入图片描述

数据帧-控制段

控制段由 6 个位构成,表示数据段的字节数。标准格式和扩展格式的构成有所不同。
在这里插入图片描述

  • 保留位 (r0、r1)
    保留位必须全部以显性电平发送。但接收方可以接收显性、隐性及其任意组合的电平。
  • 数据长度DLC
    数据长度码与数据的字节数的对应关系如下表所示。
    数据的字节数必须为 0~8 字节。但接收方对DLC = 9~15 的情况并不视为错误。
数据字节数数据长度码------------------
------------------DLC3DLC2DLC1DLC0
0DDDD
1DDDR
2DDRD
3DDRR
4DRDD
5DRDR
6DRRD
7DRRR
8RDDD
  • D是显性电平
  • R是隐性电平

数据帧-数据段

数据段可包含 0~8 个字节的数据。从MSB(最高位)开始输出。
在这里插入图片描述

数据帧-CRC

CRC 段是检查帧传输错误的帧。由15 个位的CRC 顺序*1 和1 个位的CRC 界定符(用于分隔的位)构成。
在这里插入图片描述

  • CRC顺序
    CRC 顺序是根据多项式生成的CRC 值,CRC 的计算范围包括帧起始、仲裁段、控制段、数据段。
    接收方以同样的算法计算 CRC 值并进行比较,不一致时会通报错误。

数据帧-ACK段

ACK 段用来确认是否正常接收。由ACK 槽(ACK Slot)和ACK 界定符2 个位构成。
在这里插入图片描述

  • 发送单元的ACK 段
    发送单元在 ACK 段发送2 个位的隐性位。
  • 接收单元的ACK 段
    接收到正确消息的单元在ACK 槽(ACK Slot)发送显性位,通知发送单元正常接收结束。这称作“发送ACK”或者“返回ACK”。

数据帧-结束段

帧结束是表示该该帧的结束的段。由 7 个位的隐性位构成。
在这里插入图片描述

CAN远程帧(遥控帧)

接收单元向发送单元请求发送数据所用的帧。遥控帧由 6 个段组成。遥控帧没有数据帧的数据段。

  1. 帧起始:表示数据帧开始的段
  2. 仲裁段:表示该帧优先的段
  3. 控制段:表示数据字节数及保留位的段
  4. CRC段:检查帧的传输错误的段
  5. ACK段:便是确认正常接收的段
  6. 帧结束:表示数据帧结束的段
    在这里插入图片描述
  • 剩下以后更新
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/83657
推荐阅读
相关标签
  

闽ICP备14008679号