klass LED – portabel styrning av inbyggd LED

Klassen LED är ett tunt portabelt omslag kring machine.Pin som driver en namngiven kort-LED och döljer skillnaden mellan aktiv-låg/aktiv-hög koppling mellan olika kort. Den levereras som en frusen Python-modul av OpenMV-firmware (se scripts/libraries/machine.py) och är därför tillgänglig på alla OpenMV-stödda kort, oavsett port.

LED:n drivs som en enkel på/av-GPIO; det finns ingen PWM-intensitetsstyrning. För LED:er som är kopplade till PWM-kapabla stift, driv dem direkt via PWM istället.

Exempel på användning:

from machine import LED

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

Konstruktorer

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

Konstruera ett LED-objekt bundet till LED:n som identifieras av pin_name. pin_name är antingen en LED-sträng för OpenMV-kort ("LED_RED", "LED_GREEN", "LED_BLUE", "LED_IR" – den exakta uppsättningen beror på kameran) eller ett Pin-objekt.

Konstruktorn registrerar om LED:n är kopplad aktiv-låg eller aktiv-hög (med hjälp av boardname() för att slå upp aktiv-nivå-konventionen för det aktuella kortet) så att anropare alltid skickar logiska på/av-nivåer utan att behöva bekymra sig om polaritet.

Metoder

on() None

Driv LED:n till sitt på-tillstånd.

off() None

Driv LED:n till sitt av-tillstånd.

toggle() None

Växla LED:ns nuvarande tillstånd.

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

Hämta eller ange LED-tillståndet.

Utan argument returneras det nuvarande logiska tillståndet (0 = av, 1 = på).

Med ett enda v-argument sätts LED:n till det tillståndet. Drivrutinen XOR:ar v med kortets aktiv-nivå-konvention så att 1 alltid är ”på” oavsett polaritet.

boardname() str

Returnera kortets namnsträng (prefixet av os.uname().machine före " with "). Används internt för att välja rätt aktiv-nivå-konvention för LED:n.