@amperka/led-strip
Библиотека для управления светодиодной лентой, светодиодными плашками и RGB матрицами. Работа с массивом байт каждого цвета диодной ленты, путаница с порядком цветов, усложняет код и увеличивает его размер. Все эти проблемы библиотека берет на себя, оставляя силы на творчество.
SPI2.setup({baud:3200000, mosi:B15, sck:B13, miso:B14}); var length = 20; var ledStrip = require('@amperka/led-strip').connect(SPI2, length, 'BGR'); // гасим все светодиоды ledStrip.clear(); setInterval(function() { for (var i = 0; i < length; i++) { // выбираем произвольную интенсивность красного цвета var redTone = Math.random(); // устанавливаем цвет светодиода ledStrip.putColor(i, [redTone, 0, 0]); } // применяем изменения ledStrip.apply(); }, 1000);
Функции модуля
Создаёт новый объект Strip. Параметры функции:
spi— SPI, к которому подключен модуль, напримерSPI2length— количество диодов в ленте или гирляндеorder— порядок цветов в устройстве. Параметр должен иметь вид строки вида'BGR','RBG'и т. д, где каждый символ соответствует своему цвету:'R'— красный,'G'— зеленый,'B'— синий.
Класс для подключения светодиодной ленты. Для создания нового объекта, используйте функцию connect.
Устанавливает цвет светодиода с индексом index. Параметр color должен быть массивом или объектом из трёх элементов:
- Если
color— массив, цвет задается в формате[red, green, blue](порядок важен). - Если
color— объект, цвет задается полямиred,greenиblue, в данном случае порядок не имеет значения.
Интенсивность каждого цвета лежит в диапазоне 0.0…1.0.
// устанавливаем цвет 11-го светодиода в ленте // вызовы обеих функций эквивалентны ledStrip.putColor(10, [0.5, 0.8, 0.7]); ledStrip.putColor(10, {red: 0.5, green: 0.8, blue: 0.7}); // применяем изменения ledStrip.apply();
При наличии параметра brightness функция устанавливает яркость всех светодиодов ленты одновременно. Параметр brightness принимает значения в диапазоне 0.0…1.0. Если параметр brightness не задан, функция возвращает текущее значение яркости.
// устанавливаем яркость ленты в 2 раза меньше максимальной ledStrip.brightness(0.5); // узнаем яркость ленты var brightness = ledStrip.brightness(); // выведет в консоль 0.5 print(brightness);
Устанавливает все светодиоды ленты в выключенное состояние.
// гасим все светодиоды ledStrip.clear()
Применяет изменения цвета светодиодов после функции putColor.
Возвращает значение цвета светодиода с индексом index. Параметр type может принимать следующие значения:
'object'— возвращаемое значение будет представлено в виде объекта с полями'red','green'и'blue''array'— возвращаемое значение будет представлено в виде массива из трёх элементов в формате[red, green, blue]
Значение type по умолчанию 'object'.
// узнаем цвет 11-го светодиода var color = ledStrip.getColor(10, 'object'); // выведет в консоль {red: 0.5, green: 0.8, blue: 0.7} print(color);
