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
17
enum
light_modes
18
{
19
MODE_RAINBOW_WHEEL
,
20
MODE_RAINBOW_CYCLE
,
21
MODE_STATIC
,
22
MODE_BREATHING
,
23
MODE_FLASHING
,
24
MODE_LOADING
,
25
MODE_WAVE
,
26
MODE_FADE
27
};
28
32
enum
light_colors
33
{
34
COLOR_RED
,
35
COLOR_GREEN
,
36
COLOR_BLUE
,
37
COLOR_CYAN
,
38
COLOR_YELLOW
,
39
COLOR_MAGENTA
,
40
COLOR_PURPLE
,
41
COLOR_ORANGE
,
42
COLOR_TURQUOISE
,
43
COLOR_PINK
,
44
COLOR_WHITE
45
};
46
56
struct
light_state_t
57
{
58
bool
state
;
59
uint8_t
brightness
;
60
uint8_t
previous_brightness
;
61
enum
light_modes
light_mode
;
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
97
void
set_light_color
(
enum
light_colors
color
);
98
104
uint32_t
get_current_color
();
105
106
#endif
get_current_color
uint32_t get_current_color()
Get current color.
Definition:
light_state.c:116
toggle_light_state
void toggle_light_state()
Toggle light state.
Definition:
light_state.c:10
set_light_mode
void set_light_mode(enum light_modes mode)
Set light mode.
Definition:
light_state.c:31
toggle_light_mode
void toggle_light_mode()
Toggle light mode.
Definition:
light_state.c:19
set_light_color
void set_light_color(enum light_colors color)
Set light color.
Definition:
light_state.c:68
toggle_light_color
void toggle_light_color()
Toggle light color.
Definition:
light_state.c:25
light_modes
light_modes
Light modes enum.
Definition:
light_state.h:18
MODE_RAINBOW_CYCLE
@ MODE_RAINBOW_CYCLE
Definition:
light_state.h:20
MODE_FLASHING
@ MODE_FLASHING
Definition:
light_state.h:23
MODE_LOADING
@ MODE_LOADING
Definition:
light_state.h:24
MODE_WAVE
@ MODE_WAVE
Definition:
light_state.h:25
MODE_BREATHING
@ MODE_BREATHING
Definition:
light_state.h:22
MODE_STATIC
@ MODE_STATIC
Definition:
light_state.h:21
MODE_RAINBOW_WHEEL
@ MODE_RAINBOW_WHEEL
Definition:
light_state.h:19
MODE_FADE
@ MODE_FADE
Definition:
light_state.h:26
light_colors
light_colors
Light colors enum.
Definition:
light_state.h:33
COLOR_ORANGE
@ COLOR_ORANGE
Definition:
light_state.h:41
COLOR_BLUE
@ COLOR_BLUE
Definition:
light_state.h:36
COLOR_PINK
@ COLOR_PINK
Definition:
light_state.h:43
COLOR_PURPLE
@ COLOR_PURPLE
Definition:
light_state.h:40
COLOR_TURQUOISE
@ COLOR_TURQUOISE
Definition:
light_state.h:42
COLOR_MAGENTA
@ COLOR_MAGENTA
Definition:
light_state.h:39
COLOR_RED
@ COLOR_RED
Definition:
light_state.h:34
COLOR_CYAN
@ COLOR_CYAN
Definition:
light_state.h:37
COLOR_YELLOW
@ COLOR_YELLOW
Definition:
light_state.h:38
COLOR_GREEN
@ COLOR_GREEN
Definition:
light_state.h:35
COLOR_WHITE
@ COLOR_WHITE
Definition:
light_state.h:44
light_state
volatile struct light_state_t light_state
Light state.
Definition:
light_state.c:8
light_state_t
Light state struct.
Definition:
light_state.h:57
light_state_t::brightness
uint8_t brightness
Definition:
light_state.h:59
light_state_t::previous_brightness
uint8_t previous_brightness
Definition:
light_state.h:60
light_state_t::state
bool state
Definition:
light_state.h:58
light_state_t::light_mode
enum light_modes light_mode
Definition:
light_state.h:61
light_state_t::color
enum light_colors color
Definition:
light_state.h:62
urgb.h
ws2812b.h
led_controller
include
light_state.h
Generated by
1.9.1