CAN CC/FD/XL (Controller Area Network: Classical CAN, CAN FD, CAN XL)
CAN(Controller Area Network,控制器局域网络)是 Bosch 开发的车用与工业通信总线。本解码取单一数字通道,通道名称为 RXD,请接到收发器的 RXD 输出。帧类型含 Data、Remote、Error、Overload。
| 世代 | 数据长度 | CRC | 数据相位速率 |
|---|---|---|---|
| CAN CC(Classical CAN,2.0B) | 0–8 bytes | CRC15 | – |
| CAN FD | 最高 64 bytes | CRC17/CRC21(ISO 或 non-ISO) | 250 Kbps–10 Mbps |
| CAN XL | 最高 2048 bytes | PCRC(13 bit)与 FCRC(32 bit) | 1–20 Mbps |
CAN XL 解码默认关闭。关闭时,解码与报表和只有 CAN、CAN FD 时相同。勾选 Enable CAN XL,或将 Frame Format 设为 CAN XL,即可解码 CAN XL 帧。
Arbitration 或 Data phase 速率选错、信号极性选错,会解码失败。通道前缀差异见 Settings。
Protocol Trigger 說明:CAN FD Trigger
Decode Settings
| 设置 | 说明 | Default |
|---|---|---|
| Invert | 反相输入信号。信号极性相反时勾选。 | 未勾选 |
| Frame Format | 选择要解码的帧格式。 Auto:依每个帧判断格式。 CAN:FDF 位为 recessive 时判为 Form Error。 CAN FD:res 位为 recessive 时判为 Form Error。 CAN XL:解码 CAN、CAN FD 与 CAN XL 帧。 |
Auto |
| Enable CAN XL | 解码 CAN XL 帧,并在报表加上 SDT、VCID 两列。Frame Format 为 Auto 时可勾选;为 CAN XL 时自动勾选并锁定;为 CAN 或 CAN FD 时锁定为关闭。 | 未勾选 |
| ISO-CRC / Non ISO-CRC | CAN FD 帧的 CRC 规则。Frame Format 为 CAN 时栏位停用(Disable)。 | ISO-CRC |
| Show scale in the waveform | 波形显示 bit 刻度。仅在 Frame Format 为 CAN 时栏位启用(Enable)。 | 未勾选 |
| Arbitration | 仲裁相位速率(Kbps,5–1000),或 Auto。 | Auto |
| Data phase | CAN FD 数据相位速率(Kbps,250–10000),或 Auto。Frame Format 为 CAN 时栏位停用(Disable)。 | 1000 |
| XL data phase | CAN XL 数据相位速率(Kbps,1000–20000)。启用 CAN XL 时栏位启用(Enable)。 | 8000 |
| Sample point | 数据相位位内的采样位置,70–80 %。Data phase 与 XL data phase 各一个。 | 80 % |
| Data Filter | 仅显示指定长度内的 Data(8–60 bytes),超出不显示。勾选时栏位启用(Enable)长度设置。 | 未勾选(显示全部);长度 8 |
| Report Data | 报表每行显示的 Data byte 数(8-byte/16-byte/32-byte)。较长的数据在后续行继续显示。 | 8-byte |
Report
| 列 | 内容 |
|---|---|
| Frame Type | 帧种类。CAN FD 加前缀 FD,CAN XL 加前缀 XL:Std Data、Ext Data、Std Remote、Ext Remote、FD Std Data、XL Std Data、Error、Overload。 |
| ID(h) | 标识符。 |
| SDT | 仅 CAN XL(勾选 Enable CAN XL):SDU 类型。 |
| VCID | 仅 CAN XL(勾选 Enable CAN XL):虚拟 CAN 网络编号。 |
| DLC | 数据 byte 数。 |
| Data | 数据内容。 |
| CRC(h) | CRC15(CAN)、CRC17/CRC21(CAN FD)、FCRC(CAN XL)。 |
| ASCII(Data) | 数据以 ASCII 显示。 |
| Information | 第一行:Data Rate,仲裁相位速率。以及错误。报表末尾各用一行显示 FD Data Rate、XL Data Rate(数据相位速率);采集中有该世代的帧才会出现。其后是统计行,一项一行:N error events(连续的坏帧或错误行、中间没有成功帧,算一次)、N good frames、N Active Error Frame、N Passive Error Frame、N frames not counted(ACK 错误或被采集结尾截断的帧)。后三项数量为 0 时不显示。统计只计算总线上看得到的事件,不估计任何节点内部的错误计数器。 |
| Frame Duration | 帧从开始到结束的时间。 |
未勾选 Enable CAN XL 时,报表没有 SDT、VCID 两列。
其他 CAN XL 字段标示在波形区:
| 字段 | 内容 |
|---|---|
| XLF、resXL | CAN XL 格式位与保留位 |
| ADS、DAS | 数据相位前后的相位切换序列 |
| SDT、SEC | SDU 类型、简易扩展内容 |
| DLC、SBC | 数据长度码、stuff bit 计数 |
| PCRC、FCRC | 帧头的 13-bit CRC、整个帧的 32-bit CRC |
| VCID、AF | 虚拟 CAN 网络编号、接收过滤字段 |
| FCP | Frame check pattern |
Information 列显示的错误:
| 文字 | 含义 |
|---|---|
| CRC Error、PCRC Error | CRC 不符。CAN XL 的 FCP 错误也算 CRC Error。 |
| Form Error | 固定格式的位值不对,包含固定 stuff bit 值错误。 |
| ACK Error | ACK slot 为 recessive。 |
| Stuff Error | 帧填充区出现连续 6 个相同位。 |
| Bit Error | 发出的位与总线电平不同。 |
| Active Error Frame、Passive Error Frame、Error Delimiter | 帧错误后的错误信号。同类型的连续错误合并为一行并附次数。 |
| Overload Frame | 过载信号。 |
| Break by Error Frame、Break by Unknown | 帧在结束字段之前中断。 |
| Incomplete frame (capture ended) | 采集在帧中途结束。 |
Result
请接收发器的 RXD 输出。