3.5. Clasa LED

Cea mai simplă piesă de hardware de pe cameră o reprezintă LED-urile de pe placă. Majoritatea plăcilor au un LED RGB (roșu, verde, albastru). machine.LED este clasa dedicată pentru controlul lor; fără număr de pin, fără rezistor, fără circuit – căutarea, limitarea curentului și cablarea sunt gestionate de cameră însăși.

import time
from machine import LED

red = LED("LED_RED")
red.on()
time.sleep(5)
red.off()

Un „hello world” hardware complet: importați clasa, construiți o instanță cu numele culorii, aprindeți-o, așteptați, stingeți-o. LED-ul este vizibil aprins pe durata pauzei de cinci secunde.

Apelul de încheiere red.off() este simetric cu cel de început red.on() și face curățarea explicită. LED-urile de pe placă se resetează, de asemenea, automat la ieșirea din script. Pe măsură ce scripturile cresc, bazarea pe curățarea la ieșirea din script devine fragilă; obiceiul de a asocia fiecare .on() cu un .off() explicit este ceea ce menține scripturile lungi previzibile.

3.5.1. Constructor și metode

Constructorul primește una dintre valorile "LED_RED", "LED_GREEN" sau "LED_BLUE". Fiecare instanță expune patru metode:

  • on() – îl aprinde.

  • off() – îl stinge.

  • toggle() – comută starea curentă.

  • value() – fără argumente, returnează starea curentă (0 sau 1); cu un argument, o setează.

Un circuit intermitent, folosind tiparul cu buclă principală:

import time
from machine import LED

led = LED("LED_RED")

while True:
    led.toggle()
    time.sleep_ms(500)

Folosiți LED-urile de pe placă în scopuri de indicare și de stare: un puls de tip heartbeat care clipește în fiecare secundă, o lumină roșie intermitentă la eroare, un puls verde atunci când o citire a unui senzor se află în intervalul dorit.