Zephyr API Documentation 4.0.0
A Scalable Open Source RTOS
|
Display Interface . More...
Topics | |
LCD Interface | |
LCD Interface . | |
Data Structures | |
struct | display_capabilities |
Structure holding display capabilities. More... | |
struct | display_buffer_descriptor |
Structure to describe display data buffer layout. More... | |
struct | display_driver_api |
Display driver API API which a display driver should expose. More... | |
Macros | |
#define | DISPLAY_BITS_PER_PIXEL(fmt) |
Bits required per pixel for display format. | |
Typedefs | |
typedef int(* | display_blanking_on_api) (const struct device *dev) |
Callback API to turn on display blanking See display_blanking_on() for argument description. | |
typedef int(* | display_blanking_off_api) (const struct device *dev) |
Callback API to turn off display blanking See display_blanking_off() for argument description. | |
typedef int(* | display_write_api) (const struct device *dev, const uint16_t x, const uint16_t y, const struct display_buffer_descriptor *desc, const void *buf) |
Callback API for writing data to the display See display_write() for argument description. | |
typedef int(* | display_read_api) (const struct device *dev, const uint16_t x, const uint16_t y, const struct display_buffer_descriptor *desc, void *buf) |
Callback API for reading data from the display See display_read() for argument description. | |
typedef void *(* | display_get_framebuffer_api) (const struct device *dev) |
Callback API to get framebuffer pointer See display_get_framebuffer() for argument description. | |
typedef int(* | display_set_brightness_api) (const struct device *dev, const uint8_t brightness) |
Callback API to set display brightness See display_set_brightness() for argument description. | |
typedef int(* | display_set_contrast_api) (const struct device *dev, const uint8_t contrast) |
Callback API to set display contrast See display_set_contrast() for argument description. | |
typedef void(* | display_get_capabilities_api) (const struct device *dev, struct display_capabilities *capabilities) |
Callback API to get display capabilities See display_get_capabilities() for argument description. | |
typedef int(* | display_set_pixel_format_api) (const struct device *dev, const enum display_pixel_format pixel_format) |
Callback API to set pixel format used by the display See display_set_pixel_format() for argument description. | |
typedef int(* | display_set_orientation_api) (const struct device *dev, const enum display_orientation orientation) |
Callback API to set orientation used by the display See display_set_orientation() for argument description. | |
Enumerations | |
enum | display_pixel_format { PIXEL_FORMAT_RGB_888 = BIT(0) , PIXEL_FORMAT_MONO01 = BIT(1) , PIXEL_FORMAT_MONO10 = BIT(2) , PIXEL_FORMAT_ARGB_8888 = BIT(3) , PIXEL_FORMAT_RGB_565 = BIT(4) , PIXEL_FORMAT_BGR_565 = BIT(5) } |
Display pixel formats. More... | |
enum | display_screen_info { SCREEN_INFO_MONO_VTILED = BIT(0) , SCREEN_INFO_MONO_MSB_FIRST = BIT(1) , SCREEN_INFO_EPD = BIT(2) , SCREEN_INFO_DOUBLE_BUFFER = BIT(3) , SCREEN_INFO_X_ALIGNMENT_WIDTH = BIT(4) } |
Display screen information. More... | |
enum | display_orientation { DISPLAY_ORIENTATION_NORMAL , DISPLAY_ORIENTATION_ROTATED_90 , DISPLAY_ORIENTATION_ROTATED_180 , DISPLAY_ORIENTATION_ROTATED_270 } |
Enumeration with possible display orientation. More... | |
Functions | |
static int | display_write (const struct device *dev, const uint16_t x, const uint16_t y, const struct display_buffer_descriptor *desc, const void *buf) |
Write data to display. | |
static int | display_read (const struct device *dev, const uint16_t x, const uint16_t y, const struct display_buffer_descriptor *desc, void *buf) |
Read data from display. | |
static void * | display_get_framebuffer (const struct device *dev) |
Get pointer to framebuffer for direct access. | |
static int | display_blanking_on (const struct device *dev) |
Turn display blanking on. | |
static int | display_blanking_off (const struct device *dev) |
Turn display blanking off. | |
static int | display_set_brightness (const struct device *dev, uint8_t brightness) |
Set the brightness of the display. | |
static int | display_set_contrast (const struct device *dev, uint8_t contrast) |
Set the contrast of the display. | |
static void | display_get_capabilities (const struct device *dev, struct display_capabilities *capabilities) |
Get display capabilities. | |
static int | display_set_pixel_format (const struct device *dev, const enum display_pixel_format pixel_format) |
Set pixel format used by the display. | |
static int | display_set_orientation (const struct device *dev, const enum display_orientation orientation) |
Set display orientation. | |
Display Interface .
#define DISPLAY_BITS_PER_PIXEL | ( | fmt | ) |
#include <zephyr/drivers/display.h>
Bits required per pixel for display format.
This macro expands to the number of bits required for a given display format. It can be used to allocate a framebuffer based on a given display format type
typedef int(* display_blanking_off_api) (const struct device *dev) |
#include <zephyr/drivers/display.h>
Callback API to turn off display blanking See display_blanking_off() for argument description.
typedef int(* display_blanking_on_api) (const struct device *dev) |
#include <zephyr/drivers/display.h>
Callback API to turn on display blanking See display_blanking_on() for argument description.
typedef void(* display_get_capabilities_api) (const struct device *dev, struct display_capabilities *capabilities) |
#include <zephyr/drivers/display.h>
Callback API to get display capabilities See display_get_capabilities() for argument description.
typedef void *(* display_get_framebuffer_api) (const struct device *dev) |
#include <zephyr/drivers/display.h>
Callback API to get framebuffer pointer See display_get_framebuffer() for argument description.
typedef int(* display_read_api) (const struct device *dev, const uint16_t x, const uint16_t y, const struct display_buffer_descriptor *desc, void *buf) |
#include <zephyr/drivers/display.h>
Callback API for reading data from the display See display_read() for argument description.
#include <zephyr/drivers/display.h>
Callback API to set display brightness See display_set_brightness() for argument description.
#include <zephyr/drivers/display.h>
Callback API to set display contrast See display_set_contrast() for argument description.
typedef int(* display_set_orientation_api) (const struct device *dev, const enum display_orientation orientation) |
#include <zephyr/drivers/display.h>
Callback API to set orientation used by the display See display_set_orientation() for argument description.
typedef int(* display_set_pixel_format_api) (const struct device *dev, const enum display_pixel_format pixel_format) |
#include <zephyr/drivers/display.h>
Callback API to set pixel format used by the display See display_set_pixel_format() for argument description.
typedef int(* display_write_api) (const struct device *dev, const uint16_t x, const uint16_t y, const struct display_buffer_descriptor *desc, const void *buf) |
#include <zephyr/drivers/display.h>
Callback API for writing data to the display See display_write() for argument description.
enum display_orientation |
#include <zephyr/drivers/display.h>
Enumeration with possible display orientation.
enum display_pixel_format |
#include <zephyr/drivers/display.h>
Display pixel formats.
Display pixel format enumeration.
In case a pixel format consists out of multiple bytes the byte order is big endian.
enum display_screen_info |
#include <zephyr/drivers/display.h>
Display screen information.
|
inlinestatic |
#include <zephyr/drivers/display.h>
Turn display blanking off.
Restore the frame buffer content to the display. In case backlight control is supported by the driver the backlight configuration is restored.
dev | Pointer to device structure |
0 | on success else negative errno code. |
-ENOSYS | if not implemented. |
|
inlinestatic |
#include <zephyr/drivers/display.h>
Turn display blanking on.
This function blanks the complete display. The content of the frame buffer will be retained while blanking is enabled and the frame buffer will be accessible for read and write operations.
In case backlight control is supported by the driver the backlight is turned off. The backlight configuration is retained and accessible for configuration.
In case the driver supports display blanking the initial state of the driver would be the same as if this function was called.
dev | Pointer to device structure |
0 | on success else negative errno code. |
-ENOSYS | if not implemented. |
|
inlinestatic |
#include <zephyr/drivers/display.h>
Get display capabilities.
dev | Pointer to device structure |
capabilities | Pointer to capabilities structure to populate |
|
inlinestatic |
#include <zephyr/drivers/display.h>
Get pointer to framebuffer for direct access.
dev | Pointer to device structure |
Pointer | to frame buffer or NULL if direct framebuffer access is not supported |
|
inlinestatic |
#include <zephyr/drivers/display.h>
Read data from display.
dev | Pointer to device structure |
x | x Coordinate of the upper left corner where to read from |
y | y Coordinate of the upper left corner where to read from |
desc | Pointer to a structure describing the buffer layout |
buf | Pointer to buffer array |
0 | on success else negative errno code. |
-ENOSYS | if not implemented. |
#include <zephyr/drivers/display.h>
Set the brightness of the display.
Set the brightness of the display in steps of 1/256, where 255 is full brightness and 0 is minimal.
dev | Pointer to device structure |
brightness | Brightness in steps of 1/256 |
0 | on success else negative errno code. |
-ENOSYS | if not implemented. |
#include <zephyr/drivers/display.h>
Set the contrast of the display.
Set the contrast of the display in steps of 1/256, where 255 is maximum difference and 0 is minimal.
dev | Pointer to device structure |
contrast | Contrast in steps of 1/256 |
0 | on success else negative errno code. |
-ENOSYS | if not implemented. |
|
inlinestatic |
#include <zephyr/drivers/display.h>
Set display orientation.
dev | Pointer to device structure |
orientation | Orientation to be used by display |
0 | on success else negative errno code. |
-ENOSYS | if not implemented. |
|
inlinestatic |
#include <zephyr/drivers/display.h>
Set pixel format used by the display.
dev | Pointer to device structure |
pixel_format | Pixel format to be used by display |
0 | on success else negative errno code. |
-ENOSYS | if not implemented. |
|
inlinestatic |
#include <zephyr/drivers/display.h>
Write data to display.
dev | Pointer to device structure |
x | x Coordinate of the upper left corner where to write the buffer |
y | y Coordinate of the upper left corner where to write the buffer |
desc | Pointer to a structure describing the buffer layout |
buf | Pointer to buffer array |
0 | on success else negative errno code. |