我目前正在开展一个项目,该项目涉及通过 OBDII 端口获取和解码我的 Scion FRS 的 Can-Bus 数据。我正在使用树莓派 4 和 PiCAN3 屏蔽来接收数据。我可以使用 Cansniffer can0 查看数据,但是,在 python3 程序中使用它是我遇到麻烦的地方。我遇到了值大于 256(十进制)的 PID 的问题,这给了我一个 python-can 模块错误:
self.data = 字节数组(数据)
ValueError: 字节必须在范围内 (0, 256)
(如果有人想要,我有完整错误的图片)
低于 256 的 PID 不会发生此问题,如 0C (Hex)。但是,我不能使用这些 PID,因为它们没有提供正确的数据。我对编码中的 CAN 总线数据和内存相当陌生,因此此时任何输入都会有所帮助。
谢谢大家的时间,如果您对代码或任何问题有任何疑问,请告诉我。
我试图开始工作的代码: https ://github.com/blupants/chupacarbrah
斯巴鲁 BRZ 的 PID 集: https ://forum.autosportlabs.com/viewtopic.php?t=5319