19 #ifndef WS281X_PARAMS_H
20 #define WS281X_PARAMS_H
35 #ifndef WS281X_PARAM_PIN
36 #define WS281X_PARAM_PIN (GPIO_PIN(0, 0))
38 #ifndef WS281X_PARAM_NUMOF
39 #define WS281X_PARAM_NUMOF (8U)
41 #ifndef WS281X_PARAM_BUF
46 #define WS281X_PARAM_BUF (ws281x_buf)
53 #define WS281X_PARAMS { \
54 .pin = WS281X_PARAM_PIN, \
55 .numof = WS281X_PARAM_NUMOF, \
56 .buf = WS281X_PARAM_BUF, \
88 #if !defined(WS281X_TIMER_DEV) || defined(DOXYGEN)
89 #define WS281X_TIMER_DEV TIMER_DEV(2)
97 #ifndef WS281X_TIMER_MAX_VALUE
98 #define WS281X_TIMER_MAX_VALUE TIMER_2_MAX_VALUE
106 #ifndef WS281X_TIMER_FREQ
107 #define WS281X_TIMER_FREQ 16000000
113 #ifndef WS281X_SAUL_INFO
114 #define WS281X_SAUL_INFO { .name = "WS281X RGB LED" }
#define WS281X_BYTES_PER_DEVICE
The number of bytes to allocate in the data buffer per LED.
SAUL registry interface definition.
Additional data to collect for each entry.
Struct to hold initialization parameters for a WS281x RGB LED.
WS2812/SK6812 RGB LED Driver.
#define WS281X_SAUL_INFO
SAUL info.
static const ws281x_params_t ws281x_params[]
Initialization parameters for WS281x devices.
static const saul_reg_info_t ws281x_saul_info[]
Additional meta information to keep in the SAUL registry.
#define WS281X_PARAM_NUMOF
Number of LEDs chained.
uint8_t ws281x_buf[WS281X_PARAM_NUMOF *WS281X_BYTES_PER_DEVICE]
Data buffer holding the LED states.
#define WS281X_PARAMS
WS281x initialization parameters.