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ă (0sau1); 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.