CuVoodoo STM32F1 firmware template
|
library to drive a WS2812B LED chain (API) More...
Go to the source code of this file.
Macros | |
#define | LED_WS2812B_LEDS 48 |
number of LEDs on the WS2812B strip | |
#define | LED_WS2812B_SPI SPI1 |
SPI peripheral. | |
#define | LED_WS2812B_SPI_DR SPI1_DR |
SPI data register for the DMA. | |
#define | LED_WS2812B_SPI_RCC RCC_SPI1 |
SPI peripheral clock. | |
#define | LED_WS2812B_SPI_PORT_RCC RCC_GPIOA |
SPI I/O peripheral clock. | |
#define | LED_WS2812B_SPI_PORT GPIOA |
SPI port. | |
#define | LED_WS2812B_SPI_CLK GPIO_SPI1_SCK |
SPI clock pin (PA5), connect to PWM output. | |
#define | LED_WS2812B_SPI_DOUT GPIO_SPI1_MISO |
SPI data pin (PA6), connect to WS2812B DIN. | |
#define | LED_WS2812B_TIMER TIM3 |
timer peripheral | |
#define | LED_WS2812B_TIMER_RCC RCC_TIM3 |
timer peripheral clock | |
#define | LED_WS2812B_TIMER_OC TIM_OC3 |
timer output compare used to set PWM frequency | |
#define | LED_WS2812B_CLK_RCC RCC_GPIOB |
timer port peripheral clock | |
#define | LED_WS2812B_CLK_PORT GPIOB |
timer port | |
#define | LED_WS2812B_CLK_PIN GPIO_TIM3_CH3 |
timer pin to output PWM (PB0), connect to SPI clock input | |
#define | LED_WS2812B_DMA DMA1 |
DMA peripheral to put data for WS2812B LED in SPI queue (only DMA1 supports SPI1_TX interrupt) | |
#define | LED_WS2812B_DMA_RCC RCC_DMA1 |
DMA peripheral clock. | |
#define | LED_WS2812B_DMA_CH DMA_CHANNEL3 |
DMA channel (only DMA1 channel 3 supports SPI1_TX interrupt) | |
#define | LED_WS2812B_DMA_IRQ NVIC_DMA1_CHANNEL3_IRQ |
DMA channel interrupt signal. | |
#define | LED_WS2812B_DMA_ISR dma1_channel3_isr |
DMA channel interrupt service routine. | |
Functions | |
void | led_ws2812b_setup (void) |
setup WS2812B LED driver | |
void | led_ws2812b_set_rgb (uint16_t led, uint8_t red, uint8_t green, uint8_t blue) |
set color of a single LED More... | |
bool | led_ws2812b_transmit (void) |
transmit color values to WS2812B LEDs More... | |
library to drive a WS2812B LED chain (API)
Definition in file led_ws2812b.h.
void led_ws2812b_set_rgb | ( | uint16_t | led, |
uint8_t | red, | ||
uint8_t | green, | ||
uint8_t | blue | ||
) |
set color of a single LED
[in] | led | the LED number to set the color |
[in] | red | the red color value to set on the LED |
[in] | green | the green color value to set on the LED |
[in] | blue | the blue color value to set on the LED |
Definition at line 50 of file led_ws2812b.c.
bool led_ws2812b_transmit | ( | void | ) |
transmit color values to WS2812B LEDs
Definition at line 76 of file led_ws2812b.c.