kcanfd_test - 测试工具
功能介绍
kcanfd_test 是 UCANFD 设备的压力测试工具,用于验证设备在高负载条件下的收发数据完整性和稳定性。
工具流程:
- 根据指定的通道数量自动两两组合 / 支持手动指定测试通道组合
- 支持 CAN 2.0 和 CAN FD 两种模式
- 支持配置仲裁段 / 数据段波特率、报文数量和报文长度
- 生成详细测试日志
接线准备
测试前需将设备 CAN 接口按通道顺序两两对接。
默认自动配对关系如下:
can0 <-> can1can2 <-> can3can4 <-> can5

快速开始
基本测试
使用默认参数执行测试:
- 默认模式:
fd - 默认通道数:
2 - 默认仲裁段波特率:
1000000 - 默认数据段波特率:
5000000 - 默认每端口测试包数:
1000000 - 默认负载长度:
8
bash
sudo kcanfd_test指定通道数自动配对
例如测试 4 个通道,自动配对为 can0<->can1、can2<->can3:
bash
sudo kcanfd_test -c 4指定端口对测试
如需测试非顺序通道,可通过 -p receiver:sender 手动指定端口对。该参数可重复使用,多次指定时会覆盖 -c 的自动配对行为。
bash
sudo kcanfd_test -p can0:can2
sudo kcanfd_test -p can0:can2 -p can1:can3测试过程中,推荐在新终端中运行
kcan_monitor观察通道状态与收发统计。
参数说明
| 参数 | 说明 | 默认值 | 示例 |
|---|---|---|---|
-c NUM | 自动配对使用的 CAN 端口数量 | 2 | -c 4 |
-p receiver:sender | 手动指定测试端口对,可重复使用;指定后覆盖 -c | 无 | -p can0:can2 |
-m MODE | 总线模式,can 表示 CAN 2.0,fd 表示 CAN FD | fd | -m can |
-b BITRATE | 仲裁段波特率,单位 bit/s | 1000000 | -b 500000 |
-d DBITRATE | 数据段波特率,单位 bit/s,仅在 CAN FD 模式下生效 | 5000000 | -d 2000000 |
-t COUNT | 每个端口的测试报文数量 | 1000000 | -t 500000 |
-s SIZE | 帧负载长度(字节) | 8 | -s 64 |
-h | 显示帮助信息 | 无 | -h |
-s 取值范围
- CAN 2.0:
0-8 - CAN FD:
0-8, 12, 16, 20, 24, 32, 48, 64
使用示例
bash
# 使用默认参数(CAN FD,2 端口自动配对)
sudo kcanfd_test
# CAN 2.0 模式,自动配对 4 个端口
sudo kcanfd_test -m can -c 4
# CAN FD 模式,自动配对 4 个端口
sudo kcanfd_test -c 4
# CAN 2.0 模式,指定测试端口对与仲裁段波特率
sudo kcanfd_test -m can -p can0:can2 -b 500000
# CAN FD 模式,指定测试端口对与仲裁段 / 数据段波特率
sudo kcanfd_test -p can0:can2 -b 500000 -d 2000000
# 指定每端口测试报文数量
sudo kcanfd_test -m can -p can0:can2 -t 500000
# CAN FD 模式下发送 64 字节负载
sudo kcanfd_test -p can0:can2 -s 64日志说明
测试完成后会生成日志,便于排查丢包、配对错误或波特率配置问题。
日志文件

日志目录结构

日志内容通常包含:
- 端口配对信息
- 报文收发统计
- 帧率和错误计数
- 各接口测试结果
注意事项
- 测试前请确认端口已按要求两两对接。
- 使用
-c自动配对时,通道数量应为参与测试的实际端口数。 - 通过日志可用于分析通信性能以及故障排查。