Digital (LED et Boutons)
Source : https://learn.adafruit.com/circuitpython-essentials/circuitpython-digital-in-out
Vous êtes perdu ? vous pouvez avoir les commandes disponibles en tapant dir(FONCTION), par ex dir(board)
Contrôler une LED
Il n'y a pas de LED intégré (contrôlable directement du moins), il faut en relier une.
ON/OFF
import board
import digitalio
led = digitalio.DigitalInOut(board.IO0)
led.direction = digitalio.Direction.OUTPUT
led.value = True
PWM
import time
import board
import pulseio
led = pulseio.PWMOut(board.IO0, frequency=5000, duty_cycle=0)
while True:
for i in range(100):
# PWM LED up and down
if i < 50:
led.duty_cycle = int(i * 2 * 65535 / 100) # Up
else:
led.duty_cycle = 65535 - int((i - 50) * 2 * 65535 / 100) # Down
time.sleep(0.01)
Contrôler la LED avec un bouton
Le bouton utilise le pull resistor interne de l'ESP32
import time
import board
from digitalio import DigitalInOut, Direction, Pull
led = DigitalInOut(board.IO0)
led.direction = Direction.OUTPUT
switch = DigitalInOut(board.IO1)
switch.direction = Direction.INPUT
switch.pull = Pull.UP
while True:
if switch.value:
led.value = False
else:
led.value = True
time.sleep(0.01) # debounce delay
Pas de commentaires