DIGILIGHT
pixel.h
См. документацию.
1 
22 #ifndef PIXEL_H_
23 #define PIXEL_H_
24 #include "color_transform.h"
25 
27 #define PIXEL_CNT cfg.group_of_pixels/*32L*/
28 #define PIXEL_LEN cfg.pixels_in_group
29 #define PIXEL_CNT_MASK 0x1F
31 
33 typedef struct pixel_t{
34  uint8_t r;
35  uint8_t g;
36  uint8_t b;
37  uint8_t bright;
38  int8_t delta;
39 } pixel_t;
40 
42 #define FIXED_COLORS 8
43 #define FIXED_COLORS_MASK 0x07
45 
47 #define RED 255, 0, 0
48 #define YELLOW 255, 255, 0
50 #define ORANGE 239, 0x5C, 0
52 #define GREEN 0, 255, 0
54 #define LBLUE 0, 141, 210
56 #define BLUE 0, 0, 255
58 #define PURPLE 255, 0, 255
60 #define COLOR1 0x3E, 4, 0x70
62 #define WHITE 255, 255, 255
64 #define BLACK 0, 0, 0
66 
68 #define FADE_DIV 5
69 extern pixel_t pixels[];
71 
72 #define RND_PIX_DELTA 3
73 
74 typedef enum rnd_pix_t {
75  RND_PIX_NO_FADE = 0,
76  RND_PIX_FADE_IN = -RND_PIX_DELTA,
77  RND_PIX_FADE_OUT = RND_PIX_DELTA
78 } rnd_pix_t;
79 
81 void fade(void);
83 void rnd_pix(uint8_t fix_cid, int8_t delta);
85 uint8_t get_light_cnt(void);
87 void bright_ctrl(uint8_t id, uint8_t bright, int8_t delta);
89 void set_fix_color(uint8_t pos, uint8_t fix_cid);
91 void set_rgb_color(uint8_t pos, uint8_t r, uint8_t g, uint8_t b);
92 void set_hsv_color(uint8_t pos, hsv_t hsv);
94 void off_all_pixels(void);
95 void rnd_pix_rgb(uint8_t _r, uint8_t _g, uint8_t _b, int8_t delta);
99 #endif /* PIXEL_H_ */
void bright_ctrl(uint8_t id, uint8_t bright, int8_t delta)
Управление яркостью
Definition: pixel.c:95
uint8_t b
синяя составляющая цвета
Definition: pixel.h:36
void off_all_pixels(void)
Выключение всех пикселов
Definition: pixel.c:162
int8_t delta
условная скорость автоматического изменения яркости
Definition: pixel.h:38
pixel_t pixels[]
массив пикселей
Definition: pixel.c:22
void set_rgb_color(uint8_t pos, uint8_t r, uint8_t g, uint8_t b)
Пиксел произвольного цвета
Definition: pixel.c:107
void fade(void)
Автоматическое изменение яркости всех пикселов
Definition: pixel.c:49
Структура, описывающая один пиксель
Definition: pixel.h:33
struct pixel_t pixel_t
Структура, описывающая один пиксель
Тип для представления цвета в HSV-модели
uint8_t g
зеленая составляющая цвета
Definition: pixel.h:35
uint8_t r
красная составляющая цвета
Definition: pixel.h:34
void rnd_pix(uint8_t fix_cid, int8_t delta)
Случайный пиксел
Definition: pixel.c:141
void set_fix_color(uint8_t pos, uint8_t fix_cid)
Пиксел одного из фиксированных цветов
Definition: pixel.c:124
типы представления цвета разными способами
uint8_t bright
яркость пиксела
Definition: pixel.h:37
uint8_t get_light_cnt(void)
Подсчет светящихся пикселов
Definition: pixel.c:78