Linux cansend 命令 - 发送 CAN 报文
介绍
cansend 命令用于通过 CAN_RAW socket 向指定 CAN 接口发送单帧报文。适合在脚本或命令行中快速发送测试帧,支持经典 CAN 2.0 数据帧、RTR 帧以及 CAN FD 帧。
cansend 命令由 can-utils 软件包提供,在 Debian/Ubuntu 系统上可以使用如下命令进行安装。
sudo apt install can-utils
语法:
cansend <device> <can_frame>
参数:
<device>:CAN 网络接口名称,如can0、vcan0<can_frame>:报文格式,支持以下形式:<can_id>#{data}:经典 CAN 2.0 数据帧<can_id>#R{len}:经典 CAN 2.0 RTR 帧<can_id>##<flags>{data}:CAN FD 帧
报文字段说明:
<can_id>:3 位(SFF 标准帧)或 8 位(EFF 扩展帧)十六进制{data}:0~8 字节(CAN FD 为 0~64 字节)的十六进制数据,可用.分隔{len}:可选的 0~8 值,RTR 帧的有效 DLC 字段<flags>:单个十六进制字符(0~F),定义canfd_frame.flags