与控制器局域网(CAN)交互的库
CANard的Python项目详细描述
Canard是一个处理来自 Python。
使用Cantact
canard直接支持CANtact工具。使用它 需要pyserial,它可以与pip一起安装:
pip install pyserial
示例
此示例在总线上显示并打印接收到的消息:
fromcanardimportcanfromcanard.hwimportcantactdev=cantact.CantactDev("/dev/cu.usbmodem14511")dev.start()whileTrue:print(dev.recv())
您需要设置串行端口(/dev/cu.usbmodem14511在本例中) 正确地。
使用峰值控制器局域网工具
峰值can工具(也称为gridconnect)是通过socketcan支持的。这个 功能仅在Linux上可用
对于内核3.6及更新版本,请跳到步骤5。
下载峰值Linux driver。
安装依赖项:
sudo apt-get install libpopt-dev
生成驱动程序:
cd peak-linux-driver-x.xx make sudo make install
启用驱动程序:
sudo modprobe pcan
连接峰值can工具,确保它出现在/proc/pcan中。注意网络设备名(即,can0)
启动相应的网络:
sudo ifconfig can0 up
示例
设备现在可以作为SocketCanDev访问。此示例在总线上显示并打印接收到的消息:
fromcanardimportcanfromcanard.hwimportsocketcandev=socketcan.SocketCanDev("can0")dev.start()whileTrue:print(dev.recv())