Я прочитал документацию по RPi.GPIO и искал в Google, а также в SO, но не могу найти решения, что, вероятно, является очень глупой проблемой.Я пытаюсь ТОЛЬКО обнаружить край нажатой кнопки.Но независимо от того, указываю ли я на поиск «падающего» или «нарастающего» фронта, Pi выполнит команду как при нажатии, так и при отпускании моей кнопки.Иногда он выполняет код несколько раз.Мой код:
import RPi.GPIO as GPIO
buttonPin = 4 # this is the pin for the button
GPIO.setmode(GPIO.BCM) # pinmode
GPIO.setup(buttonPin, GPIO.IN, pull_up_down=GPIO.PUD_UP) #setting up my pin to be input w/ pullup resistor
if __name__ == '__main__':
while True: # loop
GPIO.wait_for_edge(buttonPin,GPIO.RISING) # looking for a rising edge
print('Edge detected') # this happens regardless of my button being pressed or released
Я уверен, что мне здесь не хватает чего-то фундаментального, любая помощь очень ценится.