Я пытаюсь настроить SPI, используя spidev с raspberry pi 4 model b и платой ETH Click (использует контроллер enc28j60 ethe rnet)
Я используя следующий raspberry pi gpio (мастер): CE1 - GPIO7 MISO - GPIO9 MOSI - GPIO10 SCLK - GPIO11
когда я использую piscope из pigpio, кажется, работает только CE1:
вывод piscope
Я инициализирую spi следующим образом:
def __init__(self, bus=0, device=1):
self.spi = spidev.SpiDev()
self.spi.open(bus,device)
self.spi.mode = 0
# CS active low
self.spi.cshigh = False
# MISO/MOSI not shared
self.spi.threewire = False
self.spi.lsbfirst = False
self.spi.loop = False
self.spi.bits_per_word = 8
self.spi.max_speed_hz = 2000000
Затем я пытаюсь записать в регистр (несколько раз, чтобы легче было видеть результат):
while True:
self.spi.xfer2([0xFF | (0x1F & 0x1F)])
Я тоже пробовал с CE0 (GPIO8) и получил ту же ошибку. Я включил SPI в моем /boot/config.txt и выполнил петлевой тест, как показано здесь , который работал.
Моя версия ОС:
PRETTY_NAME="Raspbian GNU/Linux 10 (buster)"
NAME="Raspbian GNU/Linux"
VERSION_ID="10"
VERSION="10 (buster)"
VERSION_CODENAME=buster
ID=raspbian
ID_LIKE=debian
HOME_URL="http://www.raspbian.org/"
SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"
Любые советы по отладке будут полезны!