RPi py-spidev threewire 无效参数错误



使用 py-spidev 时,如果我设置标志 spi.threewire=True,我会得到类似于下面的响应:

Traceback (most recent call last):
File "program.py", line 1333, in <module> transferRead("MUXOUT", 0)
File "program.py", line 132, in transferRead resp = spi.xfer2([regW, 0]) # response from register
OSError: [Errno 22] Invalid argument.

我正在使用树莓派来控制多个SPI设备。其中一个设备与spi.threewire=False成功通信(意味着我的代码/工作流程的其余部分运行正常(,但另一个设备共享SI/SO信号并需要spi.threewire=True。

有什么建议吗?这可能是 py-spidev 或内核的问题吗?

(请注意,RPi 4B 具有BCM2711,而不是BCM2835(

谢谢

乔纳森

pi@raspberrypi:~ $ uname -a Linux raspberrypi 4.19.118-v7l+ #1311 SMP Mon Apr 27 14:26:42 BST 2020 armv7l GNU/Linux
pi@raspberrypi:~ $ cat /proc/cpuinfo | grep Model Model : Raspberry Pi 4 Model B Rev 1.2
pi@raspberrypi:~ $ cat /proc/cpuinfo | grep Revision Revision : c03112
pi@raspberrypi:~ $ modinfo spi-bcm2835 filename: /lib/modules/4.19.118-v7l+/kernel/drivers/spi/spi-bcm2835.ko license: GPL v2 author: Chris Boot <bootc@bootc.net> description: SPI controller driver for Broadcom BCM2835 srcversion: CC0CA8084657816640759C9 alias: of:N*T*Cbrcm,bcm2835-spiC* alias: of:N*T*Cbrcm,bcm2835-spi depends: intree: Y name: spi_bcm2835 vermagic: 4.19.118-v7l+ SMP mod_unload modversions ARMv7 p2v8
pi@raspberrypi:~ $ python3 Python 3.7.3 (default, Dec 20 2019, 18:57:59) [GCC 8.3.0] on linux Type "help", "copyright", "credits" or "license" for more information.

有关将来的参考,请参阅 GitHub 上的有用讨论。

最新更新