我正在使用 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 工具包之间没有通信如何解决?还是我犯了什么错误?
] 5