Is there a good way to pause the script so that add_event_detect()
can listen for input? I don't like the idea of using loops so I used raw_input()
to pause the script. But does raw_input()
really pause the script?
And is this code resource friendly, since I am just listening for events or is there a better/right way to do this?
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BOARD)
GPIO.setup(11, GPIO.IN, pull_up_down=GPIO.PUD_UP)
GPIO.setup(13, GPIO.IN, pull_up_down=GPIO.PUD_UP)
GPIO.setup(15, GPIO.IN, pull_up_down=GPIO.PUD_UP)
def my_callback(channel):
print("Callback on channel: ", channel)
GPIO.add_event_detect(11, GPIO.FALLING, callback=my_callback, bouncetime=300)
GPIO.add_event_detect(13, GPIO.FALLING, callback=my_callback, bouncetime=300)
GPIO.add_event_detect(15, GPIO.FALLING, callback=my_callback, bouncetime=300)
raw_input()
GPIO.cleanup()