CAN数据帧详解

CAN 数据帧(Data Frame) 是 CAN 总线最核心、最常用的报文类型,用于节点间传输有效数据。数据帧如下图

CAN2.0A 标准帧

一、整体结构

一帧由 7 个字段 组成:SOF → 仲裁段 → 控制段 → 数据段 → CRC 段 → ACK 段 → EOF

二、逐字段详解

1. 帧起始 (SOF)
  • 1 位显性位(逻辑 0)
  • 作用:标志帧开始,同步所有节点时钟
2. 仲裁段 (Arbitration Field)
  • 12 位(标准帧)
  • ID (11 位)
    • 报文唯一标识,决定优先级
    • ID 越小,优先级越高
  • RTR (1 位)
    • 0 = 数据帧(发送数据)
    • 1 = 远程帧(请求数据)
3. 控制段 (Control Field)
  • 6 位
  • IDE (1 位)
    • 0 = 标准帧(11 位 ID)
    • 1 = 扩展帧(29 位 ID)
  • r0 (1 位) :保留位,固定为 0
  • DLC (4 位) :数据长度码
    • 取值 0~8,表示数据场字节数
4. 数据段 (Data Field)
  • 0~8 字节(0~64 位)
  • 作用:承载实际传输数据
  • 规则:高位字节先发送(MSB first)
5. CRC 段 (CRC Field)
  • 16 位
  • 15 位 CRC 校验码:从 SOF 到数据场计算
  • 1 位 CRC 界定符:隐性位(1)
  • 作用:检测传输错误
6. ACK 段 (ACK Field)
  • 2 位
  • ACK 槽 (1 位)
    • 发送方发 隐性位(1)
    • 接收正确 → 拉低为 显性位(0)应答成功
  • ACK 界定符 (1 位):隐性位(1)
7. 帧结束 (EOF)
  • 7 位 ,全为 隐性位(1)
  • 作用:标志帧结束

三、标准帧 vs 扩展帧

  • 标准帧 (CAN2.0A)11 位 ID,结构简单、常用
  • 扩展帧 (CAN2.0B)29 位 ID,可容纳更多报文

四、核心特点

  1. 优先级仲裁 :ID 越小越优先,非破坏性仲裁
  2. 可靠传输:CRC 校验 + ACK 应答 + 自动重传
  3. 数据长度0~8 字节(CAN FD 可达 64 字节)
  4. 多主通信:任意节点可主动发送

五、总结

SOF 起、ID 定、数据传、CRC 检、ACK 答、EOF 收。

CAN2.0B 扩展数据帧(Extended Frame)

一、核心区别一句话

  • 标准帧:11 位 ID
  • 扩展帧:11 位基础 ID + 18 位扩展 ID = 29 位 ID

二、扩展帧完整结构

SOF → 仲裁段(变长) → 控制段 → 数据段 → CRC 段 → ACK 段 → EOF

只有仲裁场段 和标准帧不一样,其他字段完全相同

三、扩展帧仲裁段(最重要)

29 位 ID + 3 位控制位 = 32 位结构:

  1. ID10~ID0基 ID 11 位
  2. SRR 位 :1 位(隐性 1,替代标准帧 RTR)
  3. IDE 位 :1 位(隐性 1,表示扩展帧)
  4. ID28~ID11扩展 ID 18 位
  5. RTR 位 :1 位(0 = 数据帧,1 = 远程帧
  6. r1、r0:保留位,固定 0

四、关键位含义

  • SRR = 1 :替代标准帧的 RTR,一定是隐性
  • IDE = 1表示这是扩展帧
    • 标准帧 IDE=0
    • 扩展帧 IDE=1
  • 总 ID = 11+18 = 29 位

五、标准帧 vs 扩展帧

项目 标准帧 扩展帧
ID 长度 11 位 29 位
IDE 位 0(显性) 1(隐性)
仲裁场长度 19 位 32 位
优先级 更高 较低
适用 汽车常规信号 报文多、复杂系统

六、最重要结论

  1. 扩展帧 = 29 位 ID
  2. 只有仲裁段结构不同,其余场完全一样
  3. 标准帧优先级 > 扩展帧(因为 IDE=0 < IDE=1)
  4. 数据段依然 0~8 字节
相关推荐
zbtlink3 分钟前
路由器不是一个产品,而是一个系列
网络·智能路由器·信号处理
运维全栈笔记19 分钟前
Docker一键部署Immich:自建私有云相册,照片视频备份无忧
linux·服务器·网络·docker·容器
txg66623 分钟前
网络安全领域简报(2026年5月1日~5月8日)
网络·安全·web安全
yyuuuzz24 分钟前
企业出海中的技术稳定性问题梳理
运维·服务器·网络·github·aws
哼?~32 分钟前
再谈UDP协议
网络·网络协议·udp
进阶的猪37 分钟前
主机、虚拟机、开发板网络通信排错日志
linux·网络
路溪非溪44 分钟前
BLE MESH基础知识总结
网络·网络协议·智能路由器·射频工程
Yang96111 小时前
鼎讯信通 Smart-S1:超便携带光测试光时域反射仪优选
网络·信号处理
Yang96111 小时前
12 小时续航 + 1.5kg 便携!鼎讯信通 OTDR 适配复杂野外运维
运维·网络
悲伤小伞2 小时前
Linux_传输层协议TCP详解
linux·网络·c++·网络协议·tcp/ip