DIGILIGHT
|
Элементарное управление светящимися светодоидами Подробнее...
Структуры данных | |
struct | pixel_t |
Структура, описывающая один пиксель Подробнее... | |
Макросы | |
#define | PIXEL_CNT cfg.group_of_pixels/*32L*/ |
Общее количество пикселов | |
#define | PIXEL_CNT_MASK 0x1F |
Битовая маска для выделения битов, достаточных для адресации всех пикселов | |
#define | FIXED_COLORS 8 |
Количество предопределенных цветов | |
#define | FIXED_COLORS_MASK 0x07 |
Маска номера цвета аналогично PIXEL_CNT_MASK. | |
#define | RED 255, 0, 0 |
Чисто красный цвет | |
#define | YELLOW 255, 255, 0 |
Ярко-желтый цвет | |
#define | ORANGE 239, 0x5C, 0 |
Оранжевый цвет | |
#define | GREEN 0, 255, 0 |
Чисто зеленый цвет | |
#define | LBLUE 0, 141, 210 |
Светлоголубой цвет | |
#define | BLUE 0, 0, 255 |
Чисто синий цвет | |
#define | PURPLE 255, 0, 255 |
фиолетовый цвет | |
#define | COLOR1 0x3E, 4, 0x70 |
Оттенок сиреневого | |
#define | WHITE 255, 255, 255 |
Белый цвет | |
#define | BLACK 0, 0, 0 |
Отсутствие свечения | |
#define | FADE_DIV 5 |
Условная скорость автоматического изменения яркости (чем больше, тем медленнее) | |
Определения типов | |
typedef struct pixel_t | pixel_t |
Структура, описывающая один пиксель | |
Функции | |
void | fade (void) |
Автоматическое изменение яркости всех пикселов Подробнее... | |
uint8_t | get_light_cnt (void) |
Подсчет светящихся пикселов Подробнее... | |
void | bright_ctrl (uint8_t id, uint8_t bright, int8_t delta) |
Управление яркостью Подробнее... | |
void | set_rgb_color (uint8_t pos, uint8_t r, uint8_t g, uint8_t b) |
Пиксел произвольного цвета Подробнее... | |
void | set_fix_color (uint8_t pos, uint8_t fix_cid) |
Пиксел одного из фиксированных цветов Подробнее... | |
void | rnd_pix (uint8_t fix_cid, int8_t delta) |
Случайный пиксел Подробнее... | |
void | off_all_pixels (void) |
Выключение всех пикселов | |
Переменные | |
pixel_t | pixels [MAX_TOTAL_PIX] |
Массив пикселей предельного размера Подробнее... | |
pixel_t | pixels [] |
массив пикселей Подробнее... | |
Элементарное управление светящимися светодоидами
Пиксел - это альтернативное название одного свтодиода WS2812, принятое в проекте. Все пикселы рассматриваются, как одна линейка, хотя физически они могут располагаться произвольно. При описаниях эффектов (см. Визуальные эффекты цветомузыки) подразумевается, что все пикселы расположены в одну линейку. Управление пикселами ведется раздельно для цвета и яркости, что позволяет оптимизировать функции создания эффектов.
void bright_ctrl | ( | uint8_t | id, |
uint8_t | bright, | ||
int8_t | delta | ||
) |
Управление яркостью
Управление параметрами яркости пиксела
id | номер проверемого пиксела (менее PIXEL_CNT) |
bright | задаваемый уровень яркости |
delta | задаваемый уровень скорости изменения яркости |
См. определение в файле pixel.c строка 95
Используется в off_all_pixels().
void fade | ( | void | ) |
uint8_t get_light_cnt | ( | void | ) |
void rnd_pix | ( | uint8_t | fix_cid, |
int8_t | delta | ||
) |
Случайный пиксел
Включает пиксел в случайной позиции в указанный цвет и с указанной скоростью затухания
fix_cid | номер устанавливаемого цвета (см. #fix_colors) |
delta | задаваемая скорость автоматического изменения яркости |
void set_fix_color | ( | uint8_t | pos, |
uint8_t | fix_cid | ||
) |
Пиксел одного из фиксированных цветов
Задание цвета пиксела из числа предопределенных цветов
pos | номер проверемого пиксела (менее PIXEL_CNT) |
fix_cid | номер устанавливаемого цвета (см. #fix_colors) |
См. определение в файле pixel.c строка 124
Перекрестные ссылки pixel_t::r.
void set_rgb_color | ( | uint8_t | pos, |
uint8_t | r, | ||
uint8_t | g, | ||
uint8_t | b | ||
) |
Пиксел произвольного цвета
Цвет пиксела в формате RGB
pos | номер проверемого пиксела (менее PIXEL_CNT) |
r | уровень красной составляющей цвета |
g | уровень зеленой составляющей цвета |
b | уровень синей составляющей цвета |
См. определение в файле pixel.c строка 107
Перекрестные ссылки pixel_t::b, pixel_t::g и pixel_t::r.
pixel_t pixels[MAX_TOTAL_PIX] |