LittlevGL - Open-Source Embedded GUI Library

LittlevGL package for RIOT. More...

Detailed Description

LittlevGL package for RIOT.

See also
https://github.com/littlevgl/lvgl

Configuration options

The package can be configured with using several variables. These variables can either be passed directly to build command line or set in the application Makefile.

Graphical settings

Memory settings

LVGL_MEM_SIZE: configure the maximum memory size used by lvgl. This depends on the number of lvgl widgets and objects used by the interface (default: 5U*1024U, 5KiB). Must be greater than 2KiB.

Engine settings

Example of command line for changing the max activity period to 5s:

LVGL_ACTIVITY_PERIOD=5000 make -C tests/pkg_lvgl

Files

file  lvgl_riot.h
 Definition for the LittlevGL engine initialization.
 
#define LV_HOR_RES_MAX   (320)
 LittlevGL configuration macros. More...
 
#define LV_VER_RES_MAX   (240)
 
#define LV_COLOR_DEPTH   16
 
#define LV_COLOR_16_SWAP   1
 
#define LV_COLOR_SCREEN_TRANSP   0
 
#define LV_COLOR_TRANSP   LV_COLOR_LIME /*LV_COLOR_LIME: pure green*/
 
#define LV_ANTIALIAS   1
 
#define LV_DISP_DEF_REFR_PERIOD   10 /*[ms]*/
 
#define LV_DPI   100 /*[px]*/
 
#define LV_DISP_SMALL_LIMIT   30
 
#define LV_DISP_MEDIUM_LIMIT   50
 
#define LV_DISP_LARGE_LIMIT   70
 
#define LV_MEM_CUSTOM   0
 
#define LV_MEM_SIZE   (5U * 1024U)
 
#define LV_MEM_ATTR
 
#define LV_MEM_ADR   0
 
#define LV_MEM_AUTO_DEFRAG   1
 
#define LV_MEMCPY_MEMSET_STD   0
 
#define LV_ENABLE_GC   0
 
#define LV_INDEV_DEF_READ_PERIOD   30
 
#define LV_INDEV_DEF_DRAG_LIMIT   10
 
#define LV_INDEV_DEF_DRAG_THROW   20
 
#define LV_INDEV_DEF_LONG_PRESS_TIME   400
 
#define LV_INDEV_DEF_LONG_PRESS_REP_TIME   100
 
#define LV_INDEV_DEF_GESTURE_LIMIT   50
 
#define LV_INDEV_DEF_GESTURE_MIN_VELOCITY   3
 
#define LV_USE_ANIMATION   1
 
#define LV_USE_SHADOW   0
 
#define LV_USE_OUTLINE   0
 
#define LV_USE_PATTERN   0
 
#define LV_USE_VALUE_STR   0
 
#define LV_USE_BLEND_MODES   0
 
#define LV_USE_OPA_SCALE   0
 
#define LV_USE_IMG_TRANSFORM   0
 
#define LV_USE_GROUP   1
 
#define LV_USE_GPU   0 /*Only enables `gpu_fill_cb` and `gpu_blend_cb` in the disp. drv- */
 
#define LV_USE_GPU_STM32_DMA2D   0
 
#define LV_USE_FILESYSTEM   0
 
#define LV_USE_USER_DATA   0
 
#define LV_USE_PERF_MONITOR   0
 
#define LV_USE_API_EXTENSION_V6   1
 
#define LV_USE_API_EXTENSION_V7   1
 
#define LV_IMG_CF_INDEXED   1
 
#define LV_IMG_CF_ALPHA   1
 
#define LV_IMG_CACHE_DEF_SIZE   1
 
#define LV_BIG_ENDIAN_SYSTEM   0
 
#define LV_ATTRIBUTE_TICK_INC
 
#define LV_ATTRIBUTE_TASK_HANDLER
 
#define LV_ATTRIBUTE_FLUSH_READY
 
#define LV_ATTRIBUTE_MEM_ALIGN_SIZE
 
#define LV_ATTRIBUTE_MEM_ALIGN
 
#define LV_ATTRIBUTE_LARGE_CONST
 
#define LV_ATTRIBUTE_FAST_MEM
 
#define LV_EXPORT_CONST_INT(int_value)   struct _silence_gcc_warning
 
#define LV_ATTRIBUTE_DMA
 
#define LV_TICK_CUSTOM   1
 
#define LV_TICK_CUSTOM_INCLUDE   "xtimer.h" /*Header for the sys time function*/
 
#define LV_TICK_CUSTOM_SYS_TIME_EXPR   (xtimer_now_usec() / US_PER_MS) /*Expression evaluating to current systime in ms*/
 
#define LV_USE_LOG   0
 
#define LV_USE_DEBUG   0
 
#define LV_FONT_MONTSERRAT_12   0
 
#define LV_FONT_MONTSERRAT_14   1
 
#define LV_FONT_MONTSERRAT_16   0
 
#define LV_FONT_MONTSERRAT_18   0
 
#define LV_FONT_MONTSERRAT_20   0
 
#define LV_FONT_MONTSERRAT_22   0
 
#define LV_FONT_MONTSERRAT_24   0
 
#define LV_FONT_MONTSERRAT_26   0
 
#define LV_FONT_MONTSERRAT_28   0
 
#define LV_FONT_MONTSERRAT_30   0
 
#define LV_FONT_MONTSERRAT_32   0
 
#define LV_FONT_MONTSERRAT_34   0
 
#define LV_FONT_MONTSERRAT_36   0
 
#define LV_FONT_MONTSERRAT_38   0
 
#define LV_FONT_MONTSERRAT_40   0
 
#define LV_FONT_MONTSERRAT_42   0
 
#define LV_FONT_MONTSERRAT_44   0
 
#define LV_FONT_MONTSERRAT_46   0
 
#define LV_FONT_MONTSERRAT_48   0
 
#define LV_FONT_MONTSERRAT_12_SUBPX   0
 
#define LV_FONT_MONTSERRAT_28_COMPRESSED   0 /*bpp = 3*/
 
#define LV_FONT_DEJAVU_16_PERSIAN_HEBREW   0 /*Hebrew, Arabic, PErisan letters and all their forms*/
 
#define LV_FONT_SIMSUN_16_CJK   0 /*1000 most common CJK radicals*/
 
#define LV_FONT_UNSCII_8   0
 
#define LV_FONT_CUSTOM_DECLARE
 
#define LV_FONT_FMT_TXT_LARGE   0
 
#define LV_USE_FONT_COMPRESSED   0
 
#define LV_USE_FONT_SUBPX   1
 
#define LV_FONT_SUBPX_BGR   0
 
#define LV_USE_THEME_EMPTY   1
 
#define LV_USE_THEME_TEMPLATE   1
 
#define LV_USE_THEME_MATERIAL   1
 
#define LV_USE_THEME_MONO   1
 
#define LV_THEME_DEFAULT_INCLUDE   <stdint.h> /*Include a header for the init. function*/
 
#define LV_THEME_DEFAULT_INIT   lv_theme_material_init
 
#define LV_THEME_DEFAULT_COLOR_PRIMARY   lv_color_hex(0x01a2b1)
 
#define LV_THEME_DEFAULT_COLOR_SECONDARY   lv_color_hex(0x44d1b6)
 
#define LV_THEME_DEFAULT_FLAG   LV_THEME_MATERIAL_FLAG_DARK
 
#define LV_THEME_DEFAULT_FONT_SMALL   &lv_font_montserrat_14
 
#define LV_THEME_DEFAULT_FONT_NORMAL   &lv_font_montserrat_14
 
#define LV_THEME_DEFAULT_FONT_SUBTITLE   &lv_font_montserrat_14
 
#define LV_THEME_DEFAULT_FONT_TITLE   &lv_font_montserrat_14
 
#define LV_TXT_ENC   LV_TXT_ENC_UTF8
 
#define LV_TXT_BREAK_CHARS   " ,.;:-_"
 
#define LV_TXT_LINE_BREAK_LONG_LEN   0
 
#define LV_TXT_LINE_BREAK_LONG_PRE_MIN_LEN   3
 
#define LV_TXT_LINE_BREAK_LONG_POST_MIN_LEN   3
 
#define LV_TXT_COLOR_CMD   "#"
 
#define LV_USE_BIDI   0
 
#define LV_USE_ARABIC_PERSIAN_CHARS   0
 
#define LV_SPRINTF_CUSTOM   0
 
#define LV_SPRINTF_DISABLE_FLOAT   1
 
#define LV_USE_OBJ_REALIGN   1
 
#define LV_USE_EXT_CLICK_AREA   LV_EXT_CLICK_AREA_TINY
 
#define LV_USE_ARC   1
 
#define LV_USE_BAR   1
 
#define LV_USE_BTN   1
 
#define LV_USE_BTNMATRIX   1
 
#define LV_USE_CALENDAR   1
 
#define LV_CALENDAR_WEEK_STARTS_MONDAY   0
 
#define LV_USE_CANVAS   1
 
#define LV_USE_CHECKBOX   1
 
#define LV_USE_CHART   1
 
#define LV_CHART_AXIS_TICK_LABEL_MAX_LEN   256
 
#define LV_USE_CONT   1
 
#define LV_USE_CPICKER   1
 
#define LV_USE_DROPDOWN   1
 
#define LV_DROPDOWN_DEF_ANIM_TIME   200
 
#define LV_USE_GAUGE   1
 
#define LV_USE_IMG   1
 
#define LV_USE_IMGBTN   1
 
#define LV_IMGBTN_TILED   0
 
#define LV_USE_KEYBOARD   1
 
#define LV_USE_LABEL   1
 
#define LV_LABEL_DEF_SCROLL_SPEED   25
 
#define LV_LABEL_WAIT_CHAR_COUNT   3
 
#define LV_LABEL_TEXT_SEL   0
 
#define LV_LABEL_LONG_TXT_HINT   0
 
#define LV_USE_LED   1
 
#define LV_LED_BRIGHT_MIN   120 /*Minimal brightness*/
 
#define LV_LED_BRIGHT_MAX   255 /*Maximal brightness*/
 
#define LV_USE_LINE   1
 
#define LV_USE_LIST   1
 
#define LV_LIST_DEF_ANIM_TIME   100
 
#define LV_USE_LINEMETER   1
 
#define LV_LINEMETER_PRECISE   0
 
#define LV_USE_OBJMASK   1
 
#define LV_USE_MSGBOX   1
 
#define LV_USE_PAGE   1
 
#define LV_PAGE_DEF_ANIM_TIME   400
 
#define LV_USE_SPINNER   1
 
#define LV_SPINNER_DEF_ARC_LENGTH   60 /*[deg]*/
 
#define LV_SPINNER_DEF_SPIN_TIME   1000 /*[ms]*/
 
#define LV_SPINNER_DEF_ANIM   LV_SPINNER_TYPE_SPINNING_ARC
 
#define LV_USE_ROLLER   1
 
#define LV_ROLLER_DEF_ANIM_TIME   200
 
#define LV_ROLLER_INF_PAGES   7
 
#define LV_USE_SLIDER   1
 
#define LV_USE_SPINBOX   1
 
#define LV_USE_SWITCH   1
 
#define LV_USE_TEXTAREA   1
 
#define LV_TEXTAREA_DEF_CURSOR_BLINK_TIME   400 /*ms*/
 
#define LV_TEXTAREA_DEF_PWD_SHOW_TIME   1500 /*ms*/
 
#define LV_USE_TABLE   1
 
#define LV_TABLE_COL_MAX   12
 
#define LV_TABLE_CELL_STYLE_CNT   4
 
#define LV_USE_TABVIEW   1
 
#define LV_TABVIEW_DEF_ANIM_TIME   300
 
#define LV_USE_TILEVIEW   1
 
#define LV_TILEVIEW_DEF_ANIM_TIME   300
 
#define LV_USE_WIN   1
 
typedef int16_t lv_coord_t
 
typedef void * lv_anim_user_data_t
 
typedef void * lv_group_user_data_t
 
typedef void * lv_img_decoder_user_data_t
 
typedef void * lv_disp_drv_user_data_t
 
typedef void * lv_indev_drv_user_data_t
 
typedef void * lv_font_user_data_t
 

Macro Definition Documentation

◆ LV_HOR_RES_MAX

#define LV_HOR_RES_MAX   (320)

LittlevGL configuration macros.

Author
Alexandre Abadie alexa.nosp@m.ndre.nosp@m..abad.nosp@m.ie@i.nosp@m.nria..nosp@m.fr

Definition at line 32 of file lv_conf.h.

◆ LV_SPRINTF_DISABLE_FLOAT

#define LV_SPRINTF_DISABLE_FLOAT   1

LV_SPRINTF_CUSTOM

Definition at line 539 of file lv_conf.h.