0

我正在使用 SocketCAN 和 CANtact 工具包来发送和接收 CAN 消息。我正在使用两个 CANtact 工具包,一个用于发送 CAN 消息,另一个用于接收 CAN 消息,两个 CANtact 工具包都通过 DB9 母头连接到 DB9 母头,另一端连接到笔记本电脑的 USB 端口。

我使用以下 SocketCAN 命令首先配置它们

sudo modprobe can
sudo modprobe can_raw
sudo modprobe slcan
sudo slcand -o -s6 -t hw -S 3000000 /dev/ttyACM0 slcan0
sudo ip link set slcan0 up

以上命令适用于第一个 CANtact 工具包,然后我连接了第二个 CANtact 工具包并使用以下命令对其进行配置

sudo modprobe can
sudo modprobe can_raw
sudo modprobe slcan
sudo slcand -o -s6 -t hw -S 3000000 /dev/ttyACM1 slcan1
sudo ip link set slcan1 up

我在两个不同的终端中执行了这些步骤

在第一个终端,我给了

cangen -v slcan0

在第二个终端,我给了

 candump slcan1

我在 2 号航站楼没有收到任何 CAN 消息,但如果我给

cangen -v slcan0

在第一个终端和

candump slcan0

在第二个终端中,我可以查看发送的 CAN 消息

这意味着 CAN 消息在两个 CANtact 工具包之间没有通信如何解决?还是我犯了什么错误?

连接[][1] 引脚配置 引脚配置[![][3]] 5

4

0 回答 0