3.5. Třída LED

Nejjednodušším kusem hardwaru na kameře jsou její palubní LED. Většina desek má RGB LED (červená, zelená, modrá). machine.LED je vyhrazená třída pro jejich ovládání; žádné číslo pinu, žádný rezistor, žádný obvod – vyhledání, omezení proudu a zapojení obstará samotná kamera.

import time
from machine import LED

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

Kompletní hardwarové „hello world“: importujte třídu, vytvořte instanci s názvem barvy, zapněte ji, počkejte, vypněte ji. LED viditelně svítí po dobu pětisekundového spánku.

Závěrečné red.off() je symetrické k úvodnímu red.on() a činí úklid explicitním. Palubní LED se také automaticky resetují při ukončení skriptu. Jak skripty rostou, spoléhání na úklid při ukončení skriptu se stává křehkým; zvykem, který udržuje dlouhé skripty předvídatelnými, je párovat každé .on() s explicitním .off().

3.5.1. Konstruktor a metody

Konstruktor přijímá jednu z hodnot "LED_RED", "LED_GREEN" nebo "LED_BLUE". Každá instance vystavuje čtyři metody:

  • on() – zapne ji.

  • off() – vypne ji.

  • toggle() – překlopí aktuální stav.

  • value() – bez argumentů vrátí aktuální stav (0 nebo 1); s jedním argumentem jej nastaví.

Blikač využívající vzor hlavní smyčky:

import time
from machine import LED

led = LED("LED_RED")

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

Palubní LED používejte pro indikační a stavové účely: tep, který bliká každou sekundu, červené bliknutí při chybě, zelený pulz, když je hodnota ze senzoru v rozsahu.