mirror of
https://github.com/lvgl/lvgl.git
synced 2025-01-14 06:42:58 +08:00
267 lines
9.1 KiB
C
267 lines
9.1 KiB
C
/**
|
|
* @file lv_conf.h
|
|
*
|
|
*/
|
|
|
|
#if 0 /*Remove this to enable the content (Delete the last #endif too!)*/
|
|
|
|
#ifndef LV_CONF_H
|
|
#define LV_CONF_H
|
|
|
|
/*----------------
|
|
* Dynamic memory
|
|
*----------------*/
|
|
#define LV_MEM_CUSTOM 0 /*1: use custom malloc/free, 0: use the built-in lv_mem_alloc/lv_mem_free*/
|
|
#if LV_MEM_CUSTOM == 0
|
|
#define LV_MEM_SIZE (32U * 1024U) /*Size memory used by mem_alloc (in bytes)*/
|
|
#define LV_MEM_ATTR /*Complier prefix for big array declaration*/
|
|
#else /*LV_MEM_CUSTOM*/
|
|
#define LV_MEM_CUSTOM_INCLUDE <stdlib.h> /*Header for the dynamic memory function*/
|
|
#define LV_MEM_CUSTOM_ALLOC malloc /*Wrapper to malloc*/
|
|
#define LV_MEM_CUSTOM_FREE free /*Wrapper to free*/
|
|
#endif /*DM_CUSTOM*/
|
|
|
|
/*===================
|
|
Graphical settings
|
|
*=====================*/
|
|
|
|
/* Horizontal and vertical resolution of the library.
|
|
* Screen resolution multiplied by LV_DOWN_SCALE*/
|
|
#define LV_HOR_RES (800 << LV_ANTIALIAS)
|
|
#define LV_VER_RES (480 << LV_ANTIALIAS)
|
|
#define LV_DPI (100 << LV_ANTIALIAS)
|
|
|
|
/* Buffered rendering: >= LV_HOR_RES or 0 to disable buffering*/
|
|
#define LV_VDB_SIZE (40 * LV_HOR_RES)
|
|
#define LV_VDB_ADR 0 /*Place VDB to a specific address (e.g. in external RAM) (0: allocate into RAM)*/
|
|
|
|
/* Use two Virtual Display buffers (VDB) parallelize rendering and flushing
|
|
* The flushing should use DMA to write the frame buffer in the background*/
|
|
#define LV_VDB_DOUBLE 0
|
|
#define LV_VDB2_ADR 0 /*Place VDB2 to a specific address (e.g. in external RAM) (0: allocate into RAM)*/
|
|
|
|
/* Enable anti aliasing
|
|
* If enabled everything will be rendered in double size and filtered to normal size */
|
|
#define LV_ANTIALIAS 0
|
|
|
|
/* Enable anti aliasing only for fonts (texts)
|
|
* It half the size of the letters so you should use double sized fonts
|
|
* Much faster then normal anti aliasing (don't use together with LV_ANTIALIAS) */
|
|
#define LV_FONT_ANTIALIAS 1
|
|
|
|
/*=================
|
|
Misc. setting
|
|
*=================*/
|
|
|
|
/*Screen refresh settings*/
|
|
#define LV_REFR_PERIOD 50 /*Screen refresh period in milliseconds*/
|
|
#define LV_INV_FIFO_SIZE 32 /*The average number of objects on a screen */
|
|
|
|
/*Input device settings*/
|
|
#define LV_INDEV_READ_PERIOD 50 /*Input device read period in milliseconds*/
|
|
#define LV_INDEV_POINT_MARKER 0 /*Mark the pressed points*/
|
|
#define LV_INDEV_DRAG_LIMIT (10 << LV_ANTIALIAS) /*Drag threshold in pixels */
|
|
#define LV_INDEV_DRAG_THROW 20 /*Drag throw slow-down in [%]. Greater value means faster slow-down */
|
|
#define LV_INDEV_LONG_PRESS_TIME 400 /*Long press time in milliseconds*/
|
|
#define LV_INDEV_LONG_PRESS_REP_TIME 100 /*Repeated trigger period in long press [ms] */
|
|
|
|
/*Color settings*/
|
|
#define LV_COLOR_DEPTH 16
|
|
#define LV_COLOR_TRANSP LV_COLOR_LIME /*Images pixels with this color will not be drawn*/
|
|
|
|
/*Text settings*/
|
|
#define LV_TXT_UTF8 1
|
|
#define LV_TXT_BREAK_CHARS " ,.;:-_" /*Can break texts on these chars*/
|
|
|
|
/*Group settings*/
|
|
#define LV_GROUP 1 /*Enable object groups (for keyboards)*/
|
|
|
|
/*Graphics feature usage*/
|
|
#define LV_NO_ANIM 0 /*1: disable all animations*/
|
|
#define LV_NO_SHADOW 0 /*1: disable shadows*/
|
|
|
|
/*==================
|
|
* THEME USAGE
|
|
*================*/
|
|
#define USE_LV_THEME_TEMPL 0 /*Just for test*/
|
|
#define USE_LV_THEME_DEFAULT 0 /*Built manly from the built-in styles. Consumes very few RAM*/
|
|
#define USE_LV_THEME_ALIEN 0 /*Dark futuristic theme*/
|
|
#define USE_LV_THEME_MATERIAL 0 /*Flat theme with bold colors and light shadows (Planned)*/
|
|
#define USE_LV_THEME_ZEN 0 /*Peaceful, mainly black and white theme (Planned)*/
|
|
#define USE_LV_THEME_NIGHT 0 /*Dark elegant theme*/
|
|
|
|
/*==================
|
|
* FONT USAGE
|
|
*===================*/
|
|
#define LV_FONT_DEFAULT &lv_font_dejavu_40 /*Always set a default font from the built-in fonts*/
|
|
|
|
#define USE_LV_FONT_DEJAVU_10 0
|
|
#define USE_LV_FONT_DEJAVU_10_SUP 0
|
|
#define USE_LV_FONT_DEJAVU_10_LATIN_EXT_A 0
|
|
#define USE_LV_FONT_DEJAVU_10_LATIN_EXT_B 0
|
|
#define USE_LV_FONT_DEJAVU_10_CYRILLIC 0
|
|
#define USE_LV_FONT_SYMBOL_10_BASIC 0
|
|
#define USE_LV_FONT_SYMBOL_10_FILE 0
|
|
#define USE_LV_FONT_SYMBOL_10_FEEDBACK 0
|
|
|
|
#define USE_LV_FONT_DEJAVU_20 0
|
|
#define USE_LV_FONT_DEJAVU_20_SUP 0
|
|
#define USE_LV_FONT_DEJAVU_20_LATIN_EXT_A 0
|
|
#define USE_LV_FONT_DEJAVU_20_LATIN_EXT_B 0
|
|
#define USE_LV_FONT_DEJAVU_20_CYRILLIC 0
|
|
#define USE_LV_FONT_SYMBOL_20_BASIC 0
|
|
#define USE_LV_FONT_SYMBOL_20_FILE 0
|
|
#define USE_LV_FONT_SYMBOL_20_FEEDBACK 0
|
|
|
|
#define USE_LV_FONT_DEJAVU_30 0
|
|
#define USE_LV_FONT_DEJAVU_30_SUP 0
|
|
#define USE_LV_FONT_DEJAVU_30_LATIN_EXT_A 0
|
|
#define USE_LV_FONT_DEJAVU_30_LATIN_EXT_B 0
|
|
#define USE_LV_FONT_DEJAVU_30_CYRILLIC 0
|
|
#define USE_LV_FONT_SYMBOL_30_BASIC 0
|
|
#define USE_LV_FONT_SYMBOL_30_FILE 0
|
|
#define USE_LV_FONT_SYMBOL_30_FEEDBACK 0
|
|
|
|
#define USE_LV_FONT_DEJAVU_40 1
|
|
#define USE_LV_FONT_DEJAVU_40_SUP 1
|
|
#define USE_LV_FONT_DEJAVU_40_LATIN_EXT_A 1
|
|
#define USE_LV_FONT_DEJAVU_40_LATIN_EXT_B 1
|
|
#define USE_LV_FONT_DEJAVU_40_CYRILLIC 1
|
|
#define USE_LV_FONT_SYMBOL_40_BASIC 1
|
|
#define USE_LV_FONT_SYMBOL_40_FILE 1
|
|
#define USE_LV_FONT_SYMBOL_40_FEEDBACK 1
|
|
|
|
#define USE_LV_FONT_DEJAVU_60 0
|
|
#define USE_LV_FONT_DEJAVU_60_SUP 0
|
|
#define USE_LV_FONT_DEJAVU_60_LATIN_EXT_A 0
|
|
#define USE_LV_FONT_DEJAVU_60_LATIN_EXT_B 0
|
|
#define USE_LV_FONT_DEJAVU_60_CYRILLIC 0
|
|
#define USE_LV_FONT_SYMBOL_60_BASIC 0
|
|
#define USE_LV_FONT_SYMBOL_60_FILE 0
|
|
#define USE_LV_FONT_SYMBOL_60_FEEDBACK 0
|
|
|
|
#define USE_LV_FONT_DEJAVU_80 0
|
|
#define USE_LV_FONT_DEJAVU_80_SUP 0
|
|
#define USE_LV_FONT_DEJAVU_80_LATIN_EXT_A 0
|
|
#define USE_LV_FONT_DEJAVU_80_LATIN_EXT_B 0
|
|
#define USE_LV_FONT_DEJAVU_80_CYRILLIC 0
|
|
#define USE_LV_FONT_SYMBOL_80_BASIC 0
|
|
#define USE_LV_FONT_SYMBOL_80_FILE 0
|
|
#define USE_LV_FONT_SYMBOL_80_FEEDBACK 0
|
|
|
|
/*==================
|
|
* LV_OBJ SETTINGS
|
|
*==================*/
|
|
#define LV_OBJ_FREE_NUM_TYPE uint32_t /*Type of free number attribute (comment out disable free number)*/
|
|
#define LV_OBJ_FREE_PTR 1 /*Enable the free pointer attribute*/
|
|
|
|
/*==================
|
|
* LV OBJ X USAGE
|
|
*================*/
|
|
|
|
/*****************
|
|
* Simple object
|
|
*****************/
|
|
|
|
/*Label (dependencies: -*/
|
|
#define USE_LV_LABEL 1
|
|
#if USE_LV_LABEL != 0
|
|
#define LV_LABEL_SCROLL_SPEED (25 << LV_ANTIALIAS) /*Hor, or ver. scroll speed (px/sec) in 'LV_LABEL_LONG_SCROLL/ROLL' mode*/
|
|
#endif
|
|
|
|
/*Image (dependencies: lv_label (if symbols are enabled) from misc: FSINT, UFS)*/
|
|
#define USE_LV_IMG 1
|
|
|
|
/*Line (dependencies: -*/
|
|
#define USE_LV_LINE 1
|
|
|
|
/*******************
|
|
* Container objects
|
|
*******************/
|
|
|
|
/*Container (dependencies: -*/
|
|
#define USE_LV_CONT 1
|
|
|
|
/*Page (dependencies: lv_cont)*/
|
|
#define USE_LV_PAGE 1
|
|
|
|
/*Window (dependencies: lv_cont, lv_btn, lv_label, lv_img, lv_page)*/
|
|
#define USE_LV_WIN 1
|
|
|
|
/*Tab (dependencies: lv_page, lv_btnm)*/
|
|
#define USE_LV_TABVIEW 1
|
|
#if USE_LV_TABVIEW != 0
|
|
#define LV_TABVIEW_ANIM_TIME 300 /*Time of slide animation [ms] (0: no animation)*/
|
|
#endif
|
|
|
|
/*************************
|
|
* Data visualizer objects
|
|
*************************/
|
|
|
|
/*Bar (dependencies: -)*/
|
|
#define USE_LV_BAR 1
|
|
|
|
/*Line meter (dependencies: bar; misc: trigo)*/
|
|
#define USE_LV_LMETER 1
|
|
|
|
/*Gauge (dependencies:bar, lmeter; misc: trigo)*/
|
|
#define USE_LV_GAUGE 1
|
|
|
|
/*Chart (dependencies: -)*/
|
|
#define USE_LV_CHART 1
|
|
|
|
/*LED (dependencies: -)*/
|
|
#define USE_LV_LED 1
|
|
|
|
/*Message box (dependencies: lv_rect, lv_btnm, lv_label)*/
|
|
#define USE_LV_MBOX 1
|
|
|
|
/*Text area (dependencies: lv_label, lv_page)*/
|
|
#define USE_LV_TA 1
|
|
#if USE_LV_TA != 0
|
|
#define LV_TA_CURSOR_BLINK_TIME 400 /*ms*/
|
|
#define LV_TA_PWD_SHOW_TIME 1500 /*ms*/
|
|
#endif
|
|
|
|
/*************************
|
|
* User input objects
|
|
*************************/
|
|
|
|
/*Button (dependencies: lv_cont*/
|
|
#define USE_LV_BTN 1
|
|
|
|
/*Button matrix (dependencies: -)*/
|
|
#define USE_LV_BTNM 1
|
|
|
|
/*Keyboard (dependencies: lv_btnm)*/
|
|
#define USE_LV_KB 1
|
|
|
|
/*Check box (dependencies: lv_btn, lv_label)*/
|
|
#define USE_LV_CB 1
|
|
|
|
/*Switch (dependencies: lv_slider)*/
|
|
#define USE_LV_SW 1
|
|
|
|
/*List (dependencies: lv_page, lv_btn, lv_label, (lv_img optionally for icons ))*/
|
|
#define USE_LV_LIST 1
|
|
#if USE_LV_LIST != 0
|
|
#define LV_LIST_FOCUS_TIME 100 /*Default animation time of focusing to a list element [ms] (0: no animation) */
|
|
#endif
|
|
|
|
/*Drop down list (dependencies: lv_page, lv_label)*/
|
|
#define USE_LV_DDLIST 1
|
|
#if USE_LV_DDLIST != 0
|
|
#define LV_DDLIST_DEF_ANIM_TIME 200 /*Open and close default animation time [ms] (0: no animation)*/
|
|
#endif
|
|
|
|
/*Drop down list (dependencies: lv_ddlist)*/
|
|
#define USE_LV_ROLLER 1
|
|
|
|
/*Slider (dependencies: lv_bar)*/
|
|
#define USE_LV_SLIDER 1
|
|
|
|
#endif /*LV_CONF_H*/
|
|
|
|
#endif /*Remove this to enable the content*/
|
|
|