CircuitPython Digital Input Example - Blinking an LED using the built-in button.
"""
import board
import digitalio
led = digitalio.DigitalInOut(board.LED)
led.direction = digitalio.Direction.OUTPUT
button = digitalio.DigitalInOut(board.BUTTON)
button.switch_to_input(pull=digitalio.Pull.UP)
while True:
if not button.value:
led.value = True
else:
led.value = False
Now, press the button. The LED lights up! Let go of the button and the LED turns off.
Note that the code is a little less "Pythonic" than it could be. It could also be written as
led.value = not button.value . That way is more difficult to understand if you're
new to programming, so the example is a bit longer than it needed to be to make it
easier to read.
First you import two modules: board and digitalio . This makes these modules
available for use in your code. Both are built-in to CircuitPython, so you don't need to
download anything to get started.
Next, you set up the LED. To interact with hardware in CircuitPython, your code must
let the board know where to look for the hardware and what to do with it. So, you
create a digitalio.DigitalInOut() object, provide it the LED pin using the boar
d module, and save it to the variable led . Then, you tell the pin to act as an
OUTPUT .
You include setup for the button as well. It is similar to the LED setup, except the
button is an INPUT , and requires a pull up.
©Adafruit Industries Page 130 of 263