Я использую Raspberry Pi 3 модели Б.Не удалось добавить обнаружение края - Raspberry Pi 3 GPIO
Я пробовал различные подходы, используя как gpiozero
и RPi.GPIO
. Проблема возникает независимо от используемой библиотеки.
Ниже приведен пример кода, который не работает с gpiozero
.
from gpiozero import Button
from signal import pause
def handle():
print("Pressed!")
button = None
while not button:
try:
button = Button(4, pull_up=True)
button.when_pressed = handle
except RuntimeError as e:
print(e)
pass
pause()
Линия button = Button(4, pull_up=True)
всегда поднимает RuntimeError
и вывод программы (бег python3
) является:
Failed to add edge detection
Failed to add edge detection
Failed to add edge detection
Failed to add edge detection
# ... it goes on for ages
Я уже пробовал переустановить RPi.GPIO
и gpiozero
, но это не помогло.
Вот полный отслеживающий за исключением
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/gpiozero/input_devices.py", line 84, in __init__
self.pin.when_changed = self._fire_events
File "/usr/lib/python3/dist-packages/gpiozero/pins/__init__.py", line 240, in <lambda>
lambda self, value: self._set_when_changed(value),
File "/usr/lib/python3/dist-packages/gpiozero/pins/rpigpio.py", line 233, in _set_when_changed
bouncetime=self._bounce)
RuntimeError: Failed to add edge detection