oveRTOS C API
Embedded RTOS framework — build system, configuration, and portable C API
Loading...
Searching...
No Matches
Functions
LVGL Internal Helpers

Internal oveRTOS abstraction layer for LVGL display integration. More...

Functions

int ove_lvgl_init (void)
 Initialise the LVGL library and register the board's display driver.
 
void ove_lvgl_lock (void)
 Acquire the LVGL mutex before calling any LVGL API.
 
void ove_lvgl_unlock (void)
 Release the LVGL mutex after calling LVGL APIs.
 
void ove_lvgl_tick (uint32_t ms)
 Advance the LVGL internal tick counter.
 
void ove_lvgl_handler (void)
 Process pending LVGL tasks (rendering, input, animations).
 

Detailed Description

Internal oveRTOS abstraction layer for LVGL display integration.

This header declares the oveRTOS-specific LVGL lifecycle functions. Application code should include ove/lvgl.h instead, which provides both this API and the upstream LVGL headers in one include.

The backend is responsible for registering display and input drivers with LVGL during ove_lvgl_init(); the application only needs to call ove_lvgl_tick() and ove_lvgl_handler() periodically.

Note
Requires CONFIG_OVE_LVGL. When the option is disabled every function is replaced by a no-op stub.

Function Documentation

◆ ove_lvgl_init()

int ove_lvgl_init ( void  )

Initialise the LVGL library and register the board's display driver.

Calls lv_init(), registers the backend display and (if present) the touch input driver, and starts any required background tasks.

Returns
OVE_OK on success, negative error code on failure.

◆ ove_lvgl_lock()

void ove_lvgl_lock ( void  )

Acquire the LVGL mutex before calling any LVGL API.

Must be paired with ove_lvgl_unlock(). Nesting is not supported.

◆ ove_lvgl_unlock()

void ove_lvgl_unlock ( void  )

Release the LVGL mutex after calling LVGL APIs.

Must be called after every ove_lvgl_lock().

◆ ove_lvgl_tick()

void ove_lvgl_tick ( uint32_t  ms)

Advance the LVGL internal tick counter.

Call this from a periodic timer or task every ms milliseconds. LVGL uses this counter for animations, transitions, and input debouncing.

Parameters
[in]msNumber of milliseconds elapsed since the last call.

◆ ove_lvgl_handler()

void ove_lvgl_handler ( void  )

Process pending LVGL tasks (rendering, input, animations).

Must be called regularly from the UI task — typically every LV_DISP_DEF_REFR_PERIOD milliseconds. Call ove_lvgl_lock() and ove_lvgl_unlock() around this call when sharing LVGL with other tasks.