3.5. Klasa LED

Najjednostavniji komad hardvera na kameri su njezini ugrađeni LED-ovi. Većina ploča ima RGB LED (crveni, zeleni, plavi). machine.LED je namjenska klasa za upravljanje njima; bez broja pina, bez otpornika, bez sklopa – pretraživanje, ograničavanje struje i ožičenje obavlja sama kamera.

import time
from machine import LED

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

Potpuni hardverski „hello world”: uvezite klasu, konstruirajte instancu s nazivom boje, uključite je, pričekajte, isključite je. LED vidljivo svijetli tijekom petosekundnog mirovanja.

Završni red.off() simetričan je početnom red.on() i čini čišćenje eksplicitnim. Ugrađeni LED-ovi također se automatski resetiraju kada skripta završi. Kako skripte rastu, oslanjanje na čišćenje pri izlasku iz skripte postaje krhko; uparivanje svakog .on() s eksplicitnim .off() navika je koja održava duge skripte predvidljivima.

3.5.1. Konstruktor i metode

Konstruktor uzima jednu od vrijednosti "LED_RED", "LED_GREEN" ili "LED_BLUE". Svaka instanca izlaže četiri metode:

  • on() – uključi ga.

  • off() – isključi ga.

  • toggle() – promijeni trenutno stanje.

  • value() – bez argumenata vraća trenutno stanje (0 ili 1); s jednim argumentom ga postavlja.

Trepćuće svjetlo, koristeći obrazac glavne petlje:

import time
from machine import LED

led = LED("LED_RED")

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

Koristite ugrađene LED-ove za indikatorske i statusne svrhe: otkucaj srca koji trepće svake sekunde, crveni bljesak pri pogrešci, zeleni impuls kada je očitanje senzora u rasponu.