Tiny-WS2812  1.0.0
A tiny cross-platform WS2812 LED Strip driver
Public Attributes | List of all members
ws2812_cfg Struct Reference

ALL PLATFORMS: Data structure to configure a WS2812 device struct. More...

#include <ws2812_avr.h>

Detailed Description

ALL PLATFORMS: Data structure to configure a WS2812 device struct.

The following struct is used to initialize/configure a WS2812 device struct It is passed to the ws2812_config() function along with a reference to a WS2812 device struct, and contains relevant information such as pins used to drive WS2812 devices, the device's reset time etc.

This struct vareies between platforms, and is defined in the platform specific header file (ws2812_PLATFORM.h).

Warning
All fields of the configuration object must be defined before passing it to ws2812_config()! Leaving a field undefined will result in undefined behaivor!

Definition at line 64 of file ws2812_avr.h.


Platforms


AVR

Public Attributes

volatile uint8_t * port
 PORT Register (ex. PORTB, PORTC, PORTD...)
 
volatile uint8_t * ddr
 Data Direction Register (ex. DDRB, DDRC, DDRD...)
 
uint8_t * pins
 Array of pins used to program WS2812 devices (Must share the same PORT! (ex. PB0, PB1, PB2))
 
uint8_t rst_time_us
 Time required for the WS2812 device(s) to reset in us.
 
ws2812_order order
 CoColor order of the WS2812 device(s) (ex. rgb, grb, bgr...)
 
uint8_t n_dev
 Number of WS2812 device to drive.
 

ARDUINO_AVR

Public Attributes

uint8_t * pins
 Array of pins used to program WS2812 devices (Must share the same PORT! (ex. pin 0-7), see https://www.arduino.cc/en/Reference/PortManipulation)
 
uint8_t rst_time_us
 Time required for the WS2812 device(s) to reset in us.
 
ws2812_order order
 CoColor order of the WS2812 device(s) (ex. rgb, grb, bgr...)
 
uint8_t n_dev
 Number of WS2812 device to drive.
 

STM8S

Public Attributes

uint8_t rst_time_us
 Time required for the WS2812 device(s) to reset in us.
 
ws2812_order order
 CoColor order of the WS2812 device(s) (ex. rgb, grb, bgr...) More...
 
uint8_t n_dev
 Number of WS2812 device to drive. More...
 
uint16_t port_baseaddr
 Base address of the port used to drive WS2812 devices (ex. GPIOA_BASE, GPIOB_BASE, etc...)
 
GPIO_Pin_TypeDef * pins
 Array of pins used to drive WS2812 devices (ex. GPIO_PIN_1, GPIO_PIN_2, etc...)
 

Detailed Description

ALL PLATFORMS: Data structure to configure a WS2812 device struct.

The following struct is used to initialize/configure a WS2812 device struct It is passed to the ws2812_config() function along with a reference to a WS2812 device struct, and contains relevant information such as pins used to drive WS2812 devices, the device's reset time etc.

This struct vareies between platforms, and is defined in the platform specific header file (ws2812_PLATFORM.h).

Warning
All fields of the configuration object must be defined before passing it to ws2812_config()! Leaving a field undefined will result in undefined behaivor!

Definition at line 64 of file ws2812_avr.h.

Member Data Documentation

◆ n_dev

uint8_t ws2812_cfg::n_dev

Number of WS2812 device to drive.

Number of WS2812 devices to drive.

Definition at line 78 of file ws2812_avr.h.

◆ order

ws2812_order ws2812_cfg::order

The documentation for this struct was generated from the following file: