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()