今天我们来看看如何使用Kvaser的新版Python开发包canlib来设置和发送CAN报文。本例子中我们使用Kvaser USBcan Pro 2xHS v2,但可以使用任何Kvaser分析仪产品。
第一步是下载并安装Kvaser Linux驱动程序和开发包(CANlib当前版本v5.18):
$ cd ~
$ wget http://www.kvaser.com/software/7330130980754/V5_18_0/linuxcan.tar.gz
$ tar xf linuxcan.tar.gz
$ cd linuxcan
$ make
$ sudo make install
现在我们将Kvaser分析仪插入USB端口并运行`listChannels’实例程序,以验证驱动程序是否正确加载以及设备是否被识别:
$ cd canlib/examples
$ ./listChannels
Found 2 channel(s).
channel 0 = Kvaser USBcan Pro 2xHS v2, 73-30130-00752-9, 1012, 3.4.0.822
channel 1 = Kvaser USBcan Pro 2xHS v2, 73-30130-00752-9, 1012, 3.4.0.822
下一步是下载并安装Python canlib开发包(当前版本是v1.1.23):
$ cd ~
$ wget http://www.kvaser.com/software/7330130981911/V1_1_23/canlib-1.1.23.zip
$ pip install canlib-1.1.23.zip
如果你使用Python v3,为了Python开发包安装在正确的地方,你可能会使用 pip3
而不是pip
。
现在我们可以编写一个小的Python程序,sendReceiveSingleCanMsg.py
,用于在通道1上发送CAN报文,并在通道0上接收相同的CAN报文: