Zephyr API Documentation 4.0.0
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
LED Strip Interface

LED Strip Interface . More...

Data Structures

struct  led_rgb
 Color value for a single RGB LED. More...
 
struct  led_strip_driver_api
 LED strip driver API. More...
 

Typedefs

typedef int(* led_api_update_rgb) (const struct device *dev, struct led_rgb *pixels, size_t num_pixels)
 Callback API for updating an RGB LED strip.
 
typedef int(* led_api_update_channels) (const struct device *dev, uint8_t *channels, size_t num_channels)
 Callback API for updating channels without an RGB interpretation.
 
typedef size_t(* led_api_length) (const struct device *dev)
 Callback API for getting length of an LED strip.
 

Functions

static int led_strip_update_rgb (const struct device *dev, struct led_rgb *pixels, size_t num_pixels)
 Mandatory function to update an LED strip with the given RGB array.
 
static int led_strip_update_channels (const struct device *dev, uint8_t *channels, size_t num_channels)
 Optional function to update an LED strip with the given channel array (each channel byte corresponding to an individually addressable color channel or LED.
 
static size_t led_strip_length (const struct device *dev)
 Mandatory function to get chain length (in pixels) of an LED strip device.
 

Detailed Description

LED Strip Interface .

Typedef Documentation

◆ led_api_length

typedef size_t(* led_api_length) (const struct device *dev)

#include <zephyr/drivers/led_strip.h>

Callback API for getting length of an LED strip.

See also
led_strip_length() for argument descriptions.

◆ led_api_update_channels

typedef int(* led_api_update_channels) (const struct device *dev, uint8_t *channels, size_t num_channels)

#include <zephyr/drivers/led_strip.h>

Callback API for updating channels without an RGB interpretation.

See also
led_strip_update_channels() for argument descriptions.

◆ led_api_update_rgb

typedef int(* led_api_update_rgb) (const struct device *dev, struct led_rgb *pixels, size_t num_pixels)

#include <zephyr/drivers/led_strip.h>

Callback API for updating an RGB LED strip.

See also
led_strip_update_rgb() for argument descriptions.

Function Documentation

◆ led_strip_length()

static size_t led_strip_length ( const struct device * dev)
inlinestatic

#include <zephyr/drivers/led_strip.h>

Mandatory function to get chain length (in pixels) of an LED strip device.

Parameters
devLED strip device.
Return values
Lengthof LED strip device.

◆ led_strip_update_channels()

static int led_strip_update_channels ( const struct device * dev,
uint8_t * channels,
size_t num_channels )
inlinestatic

#include <zephyr/drivers/led_strip.h>

Optional function to update an LED strip with the given channel array (each channel byte corresponding to an individually addressable color channel or LED.

Channels are updated linearly in strip order.

Parameters
devLED strip device.
channelsArray of per-channel data.
num_channelsLength of channels array.
Return values
0on success.
-ENOSYSif not implemented.
-errnonegative errno code on other failure.
Warning
This routine may overwrite channels.

◆ led_strip_update_rgb()

static int led_strip_update_rgb ( const struct device * dev,
struct led_rgb * pixels,
size_t num_pixels )
inlinestatic

#include <zephyr/drivers/led_strip.h>

Mandatory function to update an LED strip with the given RGB array.

Parameters
devLED strip device.
pixelsArray of pixel data.
num_pixelsLength of pixels array.
Return values
0on success.
-errnonegative errno code on failure.
Warning
This routine may overwrite pixels.