класс LED – переносимое управление встроенным светодиодом

Класс LED – это тонкая переносимая обёртка вокруг machine.Pin, которая управляет именованным светодиодом платы, скрывая различие в схеме подключения с активным низким / активным высоким уровнем между платами. Он поставляется в виде замороженного модуля Python в составе прошивки OpenMV (см. scripts/libraries/machine.py) и поэтому доступен на каждой плате, поддерживаемой OpenMV, независимо от порта.

Светодиод управляется как простой GPIO включения/выключения; управление интенсивностью через PWM отсутствует. Для светодиодов, подключённых к выводам с поддержкой PWM, управляйте ими напрямую через PWM.

Пример использования:

from machine import LED

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

Конструкторы

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

Создаёт объект LED, привязанный к светодиоду, идентифицируемому параметром pin_name. pin_name – это либо строка светодиода платы OpenMV ("LED_RED", "LED_GREEN", "LED_BLUE", "LED_IR" – точный набор зависит от cam), либо объект Pin.

Конструктор запоминает, подключён ли светодиод с активным низким или активным высоким уровнем (используя boardname() для определения соглашения об активном уровне для текущей платы), поэтому вызывающий код всегда передаёт логические уровни включения/выключения, не беспокоясь о полярности.

Методы

on() None

Переводит светодиод во включённое состояние.

off() None

Переводит светодиод в выключенное состояние.

toggle() None

Меняет текущее состояние светодиода на противоположное.

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

Получает или задаёт состояние светодиода.

Без аргумента возвращает текущее логическое состояние (0 = выключено, 1 = включено).

С единственным аргументом v устанавливает светодиод в это состояние. Драйвер выполняет операцию XOR v с соглашением об активном уровне платы, поэтому 1 всегда означает «включено» независимо от полярности.

boardname() str

Возвращает строку с именем платы (префикс os.uname().machine до " with "). Используется внутренне для выбора правильного соглашения об активном уровне для светодиода.