CAN 总线测试说明
CAN 接口初始化
在使用 CAN 总线前,需依次执行以下三步完成接口配置与启用:
# 1. 关闭 CAN 接口(修改配置前必须先关闭)
ifconfig can0 down
# 2. 设置 CAN 总线参数(比特率 250Kbps)
ip link set can0 type can bitrate 250000
# 3. 启用 CAN 接口
ifconfig can0 up参数说明:
- bitrate 250000:设置 CAN 总线通信速率为 250 Kbps。常见工业场景也可设置为
125000、500000或1000000(1Mbps),需确保总线上所有节点的波特率一致。 - can0:CAN 设备接口名称,部分平台可能为
can1、can2等。
CAN 数据接收
使用 candump 工具监听 CAN 总线上所有接收到的报文:
candump can0输出示例:
can0 123 [8] 11 22 33 44 55 66 77 88
can0 456 [4] AA BB CC DD- 123:CAN ID(十六进制标识符)
- [8]:数据长度(DLC),单位为字节
- 11 22 33 …:数据载荷(十六进制)
CAN 数据发送
使用 cansend 工具向 CAN 总线发送一帧指定 ID 的数据:
cansend can0 123#1122334455667788格式说明:
cansend <接口> <CAN_ID>#<数据载荷>- 123:CAN ID(十六进制,标准帧范围
000~7FF) - #:ID 与数据之间的分隔符
- 1122334455667788:最多 8 字节数据载荷(十六进制,每 2 字符为 1 字节)
查看 CAN 接口信息
使用以下命令查看 CAN 接口的详细状态与配置参数:
ip -details link show can0输出关键字段解析:
| 字段 | 含义 |
| :— | :— |
| state UP | 接口已启用 |
| bitrate 250000 | 当前配置的通信波特率 |
| restart-ms 0 | 自动重启间隔(0 表示禁用) |
| berr-counter tx/rx | 发送/接收错误计数器 |
canDemo 工具下载
可通过以下链接获取 CAN 通信示例 Demo 程序:
https://pan.baidu.com/s/1j-JOmjKTZCQEXwIyYw8EwA?pwd=zw8y 提取码: zw8y
作者:陈柏林 创建时间:2026-09-15 16:00
最后编辑:陈柏林 更新时间:2026-10-12 11:13
最后编辑:陈柏林 更新时间:2026-10-12 11:13