indication.lua

indication.lua

Библиотека для помощи в организации индикации.

RGBLeds.new({[ledPin], [ledCnt]})

Класс для управления RGB светодиодами. Предполагается, что пользователь будет переопределять неоходимые методы под свои задачи.

Аргументы:

  • ledPin - GPIO процессора, к которому подключен управляемый светодиод (или несколько)
  • ledCnt - количество светодиодов

Возвращает: класс или ничего (в случае ошибки)

RGBLeds:start()

Стартовая индикация. По-умолчанию - часть диапазона радуги. Метод для переопределения.

RGBLeds:set(r, g, b, [time_ms])

Установить все светодиоды в цвет на заданное время.

Аргументы:

  • r - красный компонент цвета 0..255
  • g - зеленый компонент цвета 0..255
  • b - синий компонент цвета 0..255
  • time_ms(опционально) - на сколько мс включить цвет. Без значения включается навсегда.

RGBLeds:one(num, r, g, b, [time_ms])

Установить один светодиод в цвет на заданное время. Аргументы:

  • num - номер светодиода (начиная с 0)
  • r - красный компонент цвета 0..255
  • g - зеленый компонент цвета 0..255
  • b - синий компонент цвета 0..255
  • time_ms(опционально) - на сколько мс включить цвет. Без значения только включается.

RGBLeds:clear()

Погасить (установить цветовые компоненты в 0) все светодиоды.

RGBLeds:siren(time_ms)

Включить эффект сирены (демонстрационный эффект) с паузой между кадрами в time_ms.

RGBLeds:ok([time_ms])

Включить эффект “ok” на заданное время. По-умолчанию - зеленый свет. Метод для переопределения.

Аргументы:

  • time_ms (опционально) - время эффекта в мс. По-умолчанию 100 мс.

RGBLeds:err([time_ms])

Включить эффект “err” на заданное время. По-умолчанию - красный свет. Метод для переопределения.

Аргументы:

  • time_ms (опционально) - время эффекта в мс. По-умолчанию 100 мс.

RGLeds.new({Rled, Gled})

Класс для управления двумя светодиодами. Предполагается, что пользователь будет переопределять неоходимые методы под свои задачи.

Аргументы:

  • Rled - GPIO процессора, к которому подключен красный светодиод
  • Gled - GPIO процессора, к которому подключен зеленый светодиод

Возвращает: класс или ничего (в случае ошибки)

RGLeds:start()

Стартовая индикация. По-умолчанию - мигание двумя диодами. Метод для переопределения.

RGLeds:one(led, [time_ms])

Установить один светодиод в цвет на заданное время. Аргументы:

  • led - rled или gled
  • time_ms(опционально) - на сколько мс включить цвет. Без значения только включается.

RGLeds:clear()

Погасить все светодиоды.

RGLeds:siren(time_ms)

Включить эффект сирены (демонстрационный эффект) с паузой между кадрами в time_ms.

RGLeds:ok([time_ms])

Включить эффект “ok” на заданное время. По-умолчанию - зеленый свет. Метод для переопределения.

Аргументы:

  • time_ms (опционально) - время эффекта в мс. По-умолчанию 100 мс.

RGLeds:err([time_ms])

Включить эффект “err” на заданное время. По-умолчанию - красный свет. Метод для переопределения.

Аргументы:

  • time_ms (опционально) - время эффекта в мс. По-умолчанию 100 мс.

Leds({RGB, RG})

Общий класс для определения светоиодов.

Аргументы:

  • RGB (опционально) - если true, вернуть класс RGB
  • RG (опционально) - если true, вернуть класс RG

Возвращает: класс или ничего (в случае ошибки)

Пример:

leds = indication.Leds.new({RGB=true})
leds:start()
leds:ok()
leds:err()

Buzzer.new(buzzPin)

Класс для управления звуковым излучателем.

Аргументы:

  • buzzPin - GPIO процессора, к которому подключен звуковой излучатель.

Buzzer:buzz(time_ms)

Включить звук на time_ms время.

Аргументы:

  • time_ms (опционально) - время включения в мс. По-умолчанию 100 мс.

Buzzer:start()

Стартовая индикация. По-умолчанию - звук на 70 мс. Метод для переопределения.

Buzzer:ok([time_ms])

Включить эффект “ok” на заданное время. Метод для переопределения.

Аргументы:

  • time_ms (опционально) - время эффекта в мс. По-умолчанию 100 мс.

Buzzer:err([time_ms])

Включить эффект “err” на заданное время. Метод для переопределения.

Аргументы:

  • time_ms (опционально) - пауза между первым звуком time_ms x2 и длительность второго звука x4 в мс. По-умолчанию 200 мс.
snd = indication.Buzzer.new()
snd:start()
snd:ok()
snd:err()

Buzzer:mute()

Заглушить звуковой излучатель.

Sound.new(soundPin)

Класс для управления звуковым излучателем с использованием модуля sound.

Аргументы:

  • soundPin - GPIO процессора, к которому подключен звуковой излучатель.

Sound:play(note, octave)

Включить звук на time_ms время.

Аргументы:

  • note - нота
  • octave - октава

Sound:start()

Стартовая звуковая индикация (мелодия). Метод для переопределения.

Sound:ok()

Включить эффект “ok” на заданное время. Метод для переопределения.

Sound:err()

Включить эффект “err” на заданное время. Метод для переопределения.

snd = indication.Sound.new()
snd:start()
snd:ok()
snd:err()