Pico Led Controller 1.0.3
A project to control LEDs using Raspberry Pi Pico W
light_state.h
Go to the documentation of this file.
1 #ifndef _LIGHT_STATE_H
2 #define _LIGHT_STATE_H
3 
4 #define NUM_PIXELS 120
5 #define NUM_LIGHT_MODES 8
6 #define NUM_LIGHT_COLORS 11
7 
8 #include <stdio.h>
9 #include <pico/stdlib.h>
10 
11 #include "urgb.h"
12 #include "ws2812b.h"
13 
18 {
26  MODE_FADE
27 };
28 
33 {
45 };
46 
57 {
58  bool state;
59  uint8_t brightness;
62  enum light_colors color;
63 };
64 
68 extern volatile struct light_state_t light_state;
69 
73 void toggle_light_state();
74 
78 void toggle_light_mode();
79 
83 void toggle_light_color();
84 
90 void set_light_mode(enum light_modes mode);
91 
98 
104 uint32_t get_current_color();
105 
106 #endif
uint32_t get_current_color()
Get current color.
Definition: light_state.c:116
void toggle_light_state()
Toggle light state.
Definition: light_state.c:10
void set_light_mode(enum light_modes mode)
Set light mode.
Definition: light_state.c:31
void toggle_light_mode()
Toggle light mode.
Definition: light_state.c:19
void set_light_color(enum light_colors color)
Set light color.
Definition: light_state.c:68
void toggle_light_color()
Toggle light color.
Definition: light_state.c:25
light_modes
Light modes enum.
Definition: light_state.h:18
@ MODE_RAINBOW_CYCLE
Definition: light_state.h:20
@ MODE_FLASHING
Definition: light_state.h:23
@ MODE_LOADING
Definition: light_state.h:24
@ MODE_WAVE
Definition: light_state.h:25
@ MODE_BREATHING
Definition: light_state.h:22
@ MODE_STATIC
Definition: light_state.h:21
@ MODE_RAINBOW_WHEEL
Definition: light_state.h:19
@ MODE_FADE
Definition: light_state.h:26
light_colors
Light colors enum.
Definition: light_state.h:33
@ COLOR_ORANGE
Definition: light_state.h:41
@ COLOR_BLUE
Definition: light_state.h:36
@ COLOR_PINK
Definition: light_state.h:43
@ COLOR_PURPLE
Definition: light_state.h:40
@ COLOR_TURQUOISE
Definition: light_state.h:42
@ COLOR_MAGENTA
Definition: light_state.h:39
@ COLOR_RED
Definition: light_state.h:34
@ COLOR_CYAN
Definition: light_state.h:37
@ COLOR_YELLOW
Definition: light_state.h:38
@ COLOR_GREEN
Definition: light_state.h:35
@ COLOR_WHITE
Definition: light_state.h:44
volatile struct light_state_t light_state
Light state.
Definition: light_state.c:8
Light state struct.
Definition: light_state.h:57
uint8_t brightness
Definition: light_state.h:59
uint8_t previous_brightness
Definition: light_state.h:60
enum light_modes light_mode
Definition: light_state.h:61
enum light_colors color
Definition: light_state.h:62