TOOL / AUTOMOTIVE / CAN-BITRATE
CAN / CAN-FD 位定时与采样点计算器
由外设时钟与目标位速率反解 CAN 位定时(BRP、tq、Phase1/Phase2、SJW)与采样点,并附 CAN-FD DLC 载荷长度对照表。
LIVE WORKBENCH / can-bitrate
分频 BRP8
每比特 tq20
SJW / Prop / Phase1 / Phase24 / 0 / 15 / 4
实际位速率500.0 kbit/s
实际采样点80 %
采样点偏差0.00 %
CAN-FD 载荷长度
| DLC | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| DLC → 字节 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 12 | 16 | 20 | 24 | 32 | 48 | 64 |
FAQ
常见问题
采样点应该设多少?
经典 CAN 常用 75%–87.5%(CiA 推荐 87.5%),CAN-FD 数据相位常用 70%–80%。网络越长、收发器延迟越大,采样点应越靠后,但需留足 Phase2 作为重同步余量。
为什么算不出整数分频?
位时间必须是 tq 的整数倍,即 时钟 ÷ (位速率 × BRP) 必须为整数且落在 8–25。选不到时请调整外设时钟(如 80MHz 换成 40MHz)或换位速率。
使用说明
- 填入 MCU 的 CAN 外设时钟(注意是外设时钟,不是系统主频)。
- 选择目标位速率与期望采样点。
- 结果给出 BRP、每比特 tq、SJW/Prop/Phase1/Phase2、实际位速率与实际采样点偏差。
寄存器写入时:BTR 的 BRP = 结果值 - 1(多数 IP 核),TSEG1 = Prop + Phase1,TSEG2 = Phase2,SJW = 结果值 - 1。不同厂商 IP 的字段偏移略有差异,请对照参考手册。
CAN-FD 载荷长度
经典 CAN 数据长度 0–8 字节直接对应 DLC 0–8。CAN-FD 在 DLC 9–15 使用非连续映射(12/16/20/24/32/48/64),因此不能用 DLC × 8 推算载荷长度——这是移植代码时最常见的坑。
NEXT / RELATED TOOLS
本领域全部 ↗