没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
试读
35页
本文档的具体目标如下: • 提供采用灵活数据率(CAN-FD)协议的控制器域网(CAN)的概述。 • 描述 CAN-FD 相较于传统 CAN(CAN2.0)的改进和优势。 • 展示下表所示 STM32 微控制器和微处理器中的 CAN-FD 实现。 • 描述 FDCAN 外设的各种模式和特性。 本应用笔记适用于下表中列出的产品。在本文档中,将这组适用产品统称为 STM32 器件
资源推荐
资源详情
资源评论
引言
本文档的具体目标如下:
• 提供采用灵活数据率(CAN-FD)协议的控制器域网(CAN)的概述。
• 描述 CAN-FD 相较于传统 CAN(CAN2.0)的改进和优势。
• 展示下表所示 STM32 微控制器和微处理器中的 CAN-FD 实现。
• 描述 FDCAN 外设的各种模式和特性。
本应用笔记适用于下表中列出的产品。在本文档中,将这组适用产品统称为 STM32
器件
。
表 1. 适用产品
类型 产品系列
微控制器 STM32G0 系列、STM32G4 系列、STM32H7 系列、STM32L5 系列
微处理器 STM32MP1 系列
STM32 器件上的 FDCAN 外设
AN5348
应用笔记
AN5348 - Rev 1 - July 2021
更多垂询,请联系您本地的意法半导体销售处
www.st.com
2 CAN-FD 协议概述
CAN-FD 协议(具有灵活数据率的 CAN)是传统 CAN(CAN 2.0)协议的扩展。CAN‑FD 是 CAN 2.0 的后续协
议。它高效地支持分布式实时控制,具有极高的安全性。CAN-FD 由博世开发,并被标准化为 ISO 11898-1:2015
(适合工业、汽车和一般嵌入式通信)。
2.1 CAN-FD 功能
CAN-FD 协议的主要特性如下:
• 与 CAN 协议兼容:CAN-FD 节点能够发送/接收 CAN 消息(依据 ISO 11898-1)
• 错误校验改进,基于最多 21 位 CRC 校验和域
• 消息优先次序
• 延迟时间保证
• 配置灵活性
• 时间同步多播接收
• 系统范围内的数据一致性,每条信息最多 64 个字节
• 多主机
• 错误检测和信号传递
• 区分节点的暂时性错误和永久性故障并自动关闭问题节点
2.2 CAN-FD 格式
发送的数据被封装在一条消息中,如下图所示。CAN-FD 消息可划分为三个阶段:
1. 第一仲裁阶段
2. 数据阶段
3. 第二仲裁阶段
图 1. 标准 CAN-FD 帧
CAN-FD仲裁阶段
CAN-FD数据阶段
11位标识符
4位
DLC
0至64字节数据
17位或21位
CRC
7位 3位
S
O
F
r1
I
D
E
E
D
L
r0
B
R
S
E
S
I
仲裁场 控制场 数据场 CRC场 ACK EOF IFS
CAN-FD仲裁阶段
SOF = 帧起始IDE = 标识符扩展位
EDL = 扩展数据长度BRS = 比特率切换
ESI = 错误状态指示位
CRC = 循环冗余检查 EOF = 帧结束
IFS = 帧间间隔
DLC = 数据长度代码
r0,r1:第1个和第2个预留位
第一仲裁阶段是一条包含下列内容的消息:
• 帧起始 (SOF)
• ID 号和其他位,指示消息用途(提供或请求数据)、速度和格式配置(CAN 或 CAN-FD)
数据发送阶段包含:
• 数据长度代码(DLC),指示消息包含的数据字节数
• 用户想要发送的数据
• 校验循环冗余序列(CRC)
• 显性位
第二仲裁阶段包含:
• 由总线上的其他节点发送的接受方的应答(ACK)(如果至少有一个成功接收到消息)
AN5348
CAN-FD 协议概述
AN5348 - Rev 1
page 3/35
• 帧结束(EOF)
IFS 期间不发送消息:目的是将当前帧与下一帧分开。
提示 如果在第一仲裁阶段的
IDE
位后添加
18
位标识符,则
29
位标识符帧类似于标准
CAN-FD
帧。
AN5348
CAN-FD 格式
AN5348 - Rev 1
page 4/35
3 CAN-FD 相较于 CAN 2.0 的改进和优势
开发 CAN-FD 是为了响应对更高带宽的通信网络的需求。为了满足此需求,使用每帧最多有 64 个字节的 CAN-
FD,并在数据阶段将比特率增加至最多快八倍,然后在第二仲裁阶段恢复正常比特率。
通过以下方式确保数据传输完整性:
• 使用 CRC 基于 17 阶多项式校验最多 16 字节的有效负载
• 使用 21 阶多项式校验 16 至 64 字节的有效负载
3.1 CAN-FD 与 CAN 2.0 的帧架构比较
下图显示了 CAN-FD 与 CAN 2.0 相比在帧架构上的主要差异。
图 2. CAN-FD 与 CAN 2.0 的帧架构比较
0至8字节
EOF
11位标识符 4位DLC 15位CRC
D
E
L
7位
S
O
F
R
T
R
I
D
E
r0
仲裁场 控制场 数据场 CRC场
ACK
EOF
CAN-FD仲裁 控制场
传统CAN
数据
CRC场
3位
IFS 总线空闲
CAN 2.0:传统标准帧格式
11位标识符 4位DLC 0-64字节
17位或21位
CRC
D
E
L
S
O
F
r1
I
D
E
仲裁场 控制场 数据场 CRC场
ACK
EOF
CAN-FD仲裁
传统CAN
数据
CRC场
3位
IFS 总线空闲
CAN-FD:CAN灵活数据率标准帧格式
控制场
E
D
L
r0
B
R
S
E
S
I
1
CAN-FD仲裁
7位
RTR = 远程传输请求DEL = 分隔符
D
E
L
1
D
E
L
在标识符之后,CAN 2.0 和 CAN-FD 有一个不同的操作:
• CAN 2.0 发送 RTR 位明确帧类型:数据帧(RTR 为显性)或远程帧(RTR 为隐性)。
• CAN-FD 只支持数据帧,因此总是发送显性 RRS(预留)。
IDE 位保存在相同位置,并用相同的操作来区分基本格式(11 位标识符)。请注意,对于扩展格式(29 位标识
符),以显性或隐性形式发送 IDE 位。
相较于 CAN 2.0,CAN-FD 帧中的控制场增加了三个新的位:
• 扩展数据长度(EDL)位:若为隐性,表示帧为 CAN-FD 帧;否则,此位为显性(称为 R0)(在 CAN 2.0
帧中)。
• 比特率切换(BRS):指示是否启用了两个比特率(例如,在用不同于仲裁阶段的比特率发送数据阶段
时)。
• 错误状态指示位(ESI):指示节点处于错误主动模式还是错误被动模式。
AN5348
CAN-FD 相较于 CAN 2.0 的改进和优势
AN5348 - Rev 1
page 5/35
剩余34页未读,继续阅读
资源评论
冻结的鱼
- 粉丝: 1199
- 资源: 156
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功