třída LED – přenositelné řízení LED na desce

Třída LED je tenký přenositelný obal kolem machine.Pin, který řídí pojmenovanou LED na desce a skrývá rozdíl v zapojení active-low / active-high mezi deskami. Je dodávána jako zmrazený modul Pythonu firmwarem OpenMV (viz scripts/libraries/machine.py), a je tedy dostupná na každé desce podporované OpenMV, bez ohledu na port.

LED je řízena jako jednoduchý zapnuto/vypnuto GPIO; není zde žádné řízení intenzity pomocí PWM. Pro LED zapojené na piny podporující PWM je řiďte přímo přes PWM.

Příklad použití:

from machine import LED

red = LED("LED_RED")
red.on()
red.toggle()
red.off()

Konstruktory

class machine.LED(pin_name: str | Pin) LED

Vytvoří objekt LED navázaný na LED identifikovanou pomocí pin_name. pin_name je buď řetězec LED desky OpenMV ("LED_RED", "LED_GREEN", "LED_BLUE", "LED_IR" – přesná sada závisí na kameře), nebo objekt Pin.

Konstruktor zaznamenává, zda je LED zapojena jako active-low nebo active-high (pomocí boardname() k vyhledání konvence aktivní úrovně pro aktuální desku), takže volající vždy předávají logické úrovně zapnuto/vypnuto bez obav o polaritu.

Metody

on() None

Přepne LED do stavu zapnuto.

off() None

Přepne LED do stavu vypnuto.

toggle() None

Překlopí aktuální stav LED.

value(v: int | None = None, /) int | None

Získá nebo nastaví stav LED.

Bez argumentu vrátí aktuální logický stav (0 = vypnuto, 1 = zapnuto).

S jedním argumentem v nastaví LED do tohoto stavu. Ovladač provede XOR v s konvencí aktivní úrovně desky, takže 1 je vždy „zapnuto“ bez ohledu na polaritu.

boardname() str

Vrátí řetězec s názvem desky (předpona os.uname().machine před " with "). Používá se interně k výběru správné konvence aktivní úrovně pro LED.