Using the GPIO Zero library makes it easy to get started with controlling GPIO devices with Python.
To control an LED connected to GPIO17, you can use this code:
from gpiozero import LED
from time import sleep
led = LED(17)
while True:
led.on()
sleep(1)
led.off()
sleep(1)Run this in an IDE like Thonny, and the LED will blink on and off repeatedly.
LED methods include on(), off(), toggle(), and blink().
To read the state of a button connected to GPIO2, you can use this code:
from gpiozero import Button
from time import sleep
button = Button(2)
while True:
if button.is_pressed:
print("Pressed")
else:
print("Released")
sleep(1)Button functionality includes the properties is_pressed and is_held; callbacks when_pressed, when_released, and when_held; and methods wait_for_press() and wait_for_release.
To connect the LED and button together, you can use this code:
from gpiozero import LED, Button
led = LED(17)
button = Button(2)
while True:
if button.is_pressed:
led.on()
else:
led.off()Alternatively:
from gpiozero import LED, Button
led = LED(17)
button = Button(2)
while True:
button.wait_for_press()
led.on()
button.wait_for_release()
led.off()or:
from gpiozero import LED, Button
led = LED(17)
button = Button(2)
button.when_pressed = led.on
button.when_released = led.offMany more GPIO devices are supported by GPIO Zero. See the library's comprehensive documentation at gpiozero.readthedocs.io.