我正在尝试用笔记本电脑(设备2)中的独木舟与Pican3+覆盆子Pi 4(设备1)通信。我正在使用python的raspberry pi中的isotp模块。我能够从raspberry pi中的代码向canoe发送数据,但无法接收从canoe向raspberryPi发送到我在python代码中创建的isotp.socket的数据。但数据是在raspberry pi端接收的,并通过candump进行验证。下面是使用的代码
import isotp
s = isotp.socket()
s.bind("can0", isotp.Address(rxid=0x701, txid=0x708))
s.send(b'a')
while True:
da = s.recv()
if da is not None:
print('here')
print(da)
从canoe发送的消息具有消息ID 701和标准can帧。据我所知,套接字绑定为从can0通道接收ID为701的消息。我遗漏了什么吗? 附加了用独木舟和覆盆子做成的烛台组成的信息截图,请看一看
代码中没有任何问题,并且工作正常。问题是在另一端,我正试图将笔记本电脑中的Canoe的罐装框架发送给PICAN。框架没有按照ISO TP格式创建,因为raspberry pi linux中的ISO TP层无法处理它。一旦我按照isotp制定了CAN框架,代码中创建的套接字就会接收和处理数据。 有关ISO TP协议的更多信息,请查看https://www.emotive.de/wiki/index.php?title=ISOTP
相关问题 更多 >
编程相关推荐