Skip to content

Latest commit

 

History

History
43 lines (33 loc) · 1.66 KB

USB2CAN.md

File metadata and controls

43 lines (33 loc) · 1.66 KB

USB to CAN 快速入门

如果你不了解CAN协议,请你至少先自行了解什么是CAN以及CAN帧的构成

USB to CAN

usb2can是一种通过usb来接入can总线的硬件设备,可以让开发者方便的调试其他使用can协议的硬件设备

启动硬件设备

USB to CAN 依赖于 can-utils,你可以使用以下命令安装

sudo apt update
sudo apt install can-utils

在你连接usb2can的硬件设备后,使用如下命令启动can0

sudo ip link set can0 up type can bitrate 1000000

如果没有报错说明成功启动(重复运行该命令会报错总线繁忙,是正常现象)

同样地,如果有其他的can设备,可以使用同样的命令,并把can0替换为其他名字

candump

candump命令用来监视can总线上的所有数据,你可以尝试使用如下命令查看can0上的数据

candump can0

如果can总线上有数据,你会获得类似这样的输出(如果你没有连接任何设备,没有输出是正常的)

can0  201   [8]  00 00 00 00 0F A0 00 00

这表示在can0上捕获到了一条信息,这条信息的canid201(十六进制),数据长度为8个字节,具体内容为00 00 00 00 0F A0 00 00

cansend

cansend命令用来在总线上发送消息,比如这样一条命令

cansend can0 200#0011001100110011

这表示在can0上发送一条canid200(十六进制),数据长度为8个字节,具体内容为00 11 00 11 00 11 00 11的信息

你可以尝试使用两个终端,一个进行candump,一个进行cansend,你会在进行candump的终端上看到你发送的消息,有助于你理解can协议的工作流程