1
1
/**
2
2
* @file lv_conf.h
3
- * Configuration file for v9.0 .0
3
+ * Configuration file for v9.1 .0
4
4
*/
5
5
6
6
/*
17
17
#ifndef LV_CONF_H
18
18
#define LV_CONF_H
19
19
20
+ /*If you need to include anything here, do it inside the `__ASSEMBLY__` guard */
21
+ #if 0 && defined(__ASSEMBLY__ )
22
+ #include "my_include.h"
23
+ #endif
24
+
20
25
/*====================
21
26
COLOR SETTINGS
22
27
*====================*/
39
44
#define LV_USE_STDLIB_STRING LV_STDLIB_BUILTIN
40
45
#define LV_USE_STDLIB_SPRINTF LV_STDLIB_BUILTIN
41
46
47
+ #define LV_STDINT_INCLUDE <stdint.h>
48
+ #define LV_STDDEF_INCLUDE <stddef.h>
49
+ #define LV_STDBOOL_INCLUDE <stdbool.h>
50
+ #define LV_INTTYPES_INCLUDE <inttypes.h>
51
+ #define LV_LIMITS_INCLUDE <limits.h>
52
+ #define LV_STDARG_INCLUDE <stdarg.h>
42
53
43
54
#if LV_USE_STDLIB_MALLOC == LV_STDLIB_BUILTIN
44
55
/*Size of the memory available for `lv_malloc()` in bytes (>= 2kB)*/
45
- #define LV_MEM_SIZE (256 * 1024U) /*[bytes]*/
56
+ #define LV_MEM_SIZE (64 * 1024U) /*[bytes]*/
46
57
47
58
/*Size of the memory expand for `lv_malloc()` in bytes*/
48
59
#define LV_MEM_POOL_EXPAND_SIZE 0
54
65
#undef LV_MEM_POOL_INCLUDE
55
66
#undef LV_MEM_POOL_ALLOC
56
67
#endif
57
- #endif /*LV_USE_MALLOC == LV_STDLIB_BUILTIN*/
68
+ #endif /*LV_USE_STDLIB_MALLOC == LV_STDLIB_BUILTIN*/
58
69
59
70
/*====================
60
71
HAL SETTINGS
94
105
/*Align the start address of draw_buf addresses to this bytes*/
95
106
#define LV_DRAW_BUF_ALIGN 4
96
107
108
+ /* If a widget has `style_opa < 255` (not `bg_opa`, `text_opa` etc) or not NORMAL blend mode
109
+ * it is buffered into a "simple" layer before rendering. The widget can be buffered in smaller chunks.
110
+ * "Transformed layers" (if `transform_angle/zoom` are set) use larger buffers
111
+ * and can't be drawn in chunks. */
112
+
113
+ /*The target buffer size for simple layer chunks.*/
114
+ #define LV_DRAW_LAYER_SIMPLE_BUF_SIZE (24 * 1024) /*[bytes]*/
115
+
97
116
#define LV_USE_DRAW_SW 1
98
117
#if LV_USE_DRAW_SW == 1
99
118
/* Set the number of draw unit.
104
123
/* Use Arm-2D to accelerate the sw render */
105
124
#define LV_USE_DRAW_ARM2D_SYNC 0
106
125
107
- /* If a widget has `style_opa < 255` (not `bg_opa`, `text_opa` etc) or not NORMAL blend mode
108
- * it is buffered into a "simple" layer before rendering. The widget can be buffered in smaller chunks.
109
- * "Transformed layers" (if `transform_angle/zoom` are set) use larger buffers
110
- * and can't be drawn in chunks. */
111
-
112
- /*The target buffer size for simple layer chunks.*/
113
- #define LV_DRAW_SW_LAYER_SIMPLE_BUF_SIZE (24 * 1024) /*[bytes]*/
126
+ /* Enable native helium assembly to be compiled */
127
+ #define LV_USE_NATIVE_HELIUM_ASM 0
114
128
115
129
/* 0: use a simple renderer capable of drawing only simple rectangles with gradient, images, texts, and straight lines only
116
130
* 1: use a complex renderer capable of drawing rounded corners, shadow, skew lines, and arcs too */
176
190
/* Enable VG-Lite assert. */
177
191
#define LV_VG_LITE_USE_ASSERT 0
178
192
193
+ /* VG-Lite flush commit trigger threshold. GPU will try to batch these many draw tasks. */
194
+ #define LV_VG_LITE_FLUSH_MAX_COUNT 8
195
+
196
+ /* Enable border to simulate shadow
197
+ * NOTE: which usually improves performance,
198
+ * but does not guarantee the same rendering quality as the software. */
199
+ #define LV_VG_LITE_USE_BOX_SHADOW 0
200
+
201
+ /* VG-Lite linear gradient image maximum cache number.
202
+ * NOTE: The memory usage of a single gradient image is 4K bytes.
203
+ */
204
+ #define LV_VG_LITE_LINEAER_GRAD_CACHE_CNT 32
205
+
206
+ /* VG-Lite radial gradient image maximum cache size.
207
+ * NOTE: The memory usage of a single gradient image is radial grad radius * 4 bytes.
208
+ */
209
+ #define LV_VG_LITE_RADIAL_GRAD_CACHE_CNT 32
210
+
179
211
#endif
180
212
181
213
/*=======================
@@ -328,6 +360,9 @@ extern void mp_lv_init_gc();
328
360
/*Enable 16 pixels alignment*/
329
361
#define LV_VG_LITE_THORVG_16PIXELS_ALIGN 1
330
362
363
+ /*Buffer address alignment*/
364
+ #define LV_VG_LITE_THORVG_BUF_ADDR_ALIGN 64
365
+
331
366
/*Enable multi-thread render*/
332
367
#define LV_VG_LITE_THORVG_THREAD_RENDER 0
333
368
@@ -645,6 +680,18 @@ extern void mp_lv_init_gc();
645
680
#define LV_FS_MEMFS_LETTER 'M' /*Set an upper cased letter on which the drive will accessible (e.g. 'A')*/
646
681
#endif
647
682
683
+ /*API for LittleFs. */
684
+ #define LV_USE_FS_LITTLEFS 0
685
+ #if LV_USE_FS_LITTLEFS
686
+ #define LV_FS_LITTLEFS_LETTER '\0' /*Set an upper cased letter on which the drive will accessible (e.g. 'A')*/
687
+ #endif
688
+
689
+ /*API for Arduino LittleFs. */
690
+ #define LV_USE_FS_ARDUINO_ESP_LITTLEFS 0
691
+ #if LV_USE_FS_ARDUINO_ESP_LITTLEFS
692
+ #define LV_FS_ARDUINO_ESP_LITTLEFS_LETTER '\0' /*Set an upper cased letter on which the drive will accessible (e.g. 'A')*/
693
+ #endif
694
+
648
695
/*LODEPNG decoder library*/
649
696
#define LV_USE_LODEPNG 1
650
697
@@ -688,16 +735,11 @@ extern void mp_lv_init_gc();
688
735
#define LV_USE_FREETYPE 0
689
736
#endif
690
737
#if LV_USE_FREETYPE
691
- /*Memory used by FreeType to cache characters in kilobytes*/
692
- #define LV_FREETYPE_CACHE_SIZE 768
693
-
694
738
/*Let FreeType to use LVGL memory and file porting*/
695
739
#define LV_FREETYPE_USE_LVGL_PORT 0
696
740
697
- /* Maximum number of opened FT_Face/FT_Size objects managed by this cache instance. */
698
- /* (0:use system defaults) */
699
- #define LV_FREETYPE_CACHE_FT_FACES 8
700
- #define LV_FREETYPE_CACHE_FT_SIZES 8
741
+ /*Cache count of the glyphs in FreeType. It means the number of glyphs that can be cached.
742
+ *The higher the value, the more memory will be used.*/
701
743
#define LV_FREETYPE_CACHE_FT_GLYPH_CNT 256
702
744
#endif
703
745
@@ -726,9 +768,6 @@ extern void mp_lv_init_gc();
726
768
/* Enable ThorVG by assuming that its installed and linked to the project */
727
769
#define LV_USE_THORVG_EXTERNAL 0
728
770
729
- /*Enable LZ4 compress/decompress lib*/
730
- #define LV_USE_LZ4 0
731
-
732
771
/*Use lvgl built-in LZ4 lib*/
733
772
#define LV_USE_LZ4_INTERNAL 0
734
773
@@ -756,7 +795,6 @@ extern void mp_lv_init_gc();
756
795
757
796
/*1: Enable system monitor component*/
758
797
#define LV_USE_SYSMON 0
759
-
760
798
#if LV_USE_SYSMON
761
799
/*Get the idle percentage. E.g. uint32_t my_get_idle(void);*/
762
800
#define LV_SYSMON_GET_IDLE lv_timer_get_idle
@@ -772,7 +810,7 @@ extern void mp_lv_init_gc();
772
810
#endif
773
811
774
812
/*1: Show the used memory and the memory fragmentation
775
- * Requires `LV_USE_BUILTIN_MALLOC = 1 `
813
+ * Requires `LV_USE_STDLIB_MALLOC = LV_STDLIB_BUILTIN `
776
814
* Requires `LV_USE_SYSMON = 1`*/
777
815
#define LV_USE_MEM_MONITOR 0
778
816
#if LV_USE_MEM_MONITOR
@@ -851,10 +889,10 @@ extern void mp_lv_init_gc();
851
889
#endif
852
890
#if LV_USE_FILE_EXPLORER
853
891
/*Maximum length of path*/
854
- #define LV_FILE_EXPLORER_PATH_MAX_LEN (128)
892
+ #define LV_FILE_EXPLORER_PATH_MAX_LEN (128)
855
893
/*Quick access bar, 1:use, 0:not use*/
856
894
/*Requires: lv_list*/
857
- #define LV_FILE_EXPLORER_QUICK_ACCESS 1
895
+ #define LV_FILE_EXPLORER_QUICK_ACCESS 1
858
896
#endif
859
897
860
898
/*==================
@@ -868,11 +906,12 @@ extern void mp_lv_init_gc();
868
906
#define LV_USE_SDL 0
869
907
#endif
870
908
#if LV_USE_SDL
871
- #define LV_SDL_INCLUDE_PATH <SDL2/SDL.h>
872
- #define LV_SDL_RENDER_MODE LV_DISPLAY_RENDER_MODE_DIRECT /*LV_DISPLAY_RENDER_MODE_DIRECT is recommended for best performance*/
873
- #define LV_SDL_BUF_COUNT 1 /*1 or 2*/
874
- #define LV_SDL_FULLSCREEN 0 /*1: Make the window full screen by default*/
875
- #define LV_SDL_DIRECT_EXIT 1 /*1: Exit the application when all SDL windows are closed*/
909
+ #define LV_SDL_INCLUDE_PATH <SDL2/SDL.h>
910
+ #define LV_SDL_RENDER_MODE LV_DISPLAY_RENDER_MODE_DIRECT /*LV_DISPLAY_RENDER_MODE_DIRECT is recommended for best performance*/
911
+ #define LV_SDL_BUF_COUNT 1 /*1 or 2*/
912
+ #define LV_SDL_FULLSCREEN 0 /*1: Make the window full screen by default*/
913
+ #define LV_SDL_DIRECT_EXIT 1 /*1: Exit the application when all SDL windows are closed*/
914
+ #define LV_SDL_MOUSEWHEEL_MODE LV_SDL_MOUSEWHEEL_MODE_ENCODER /*LV_SDL_MOUSEWHEEL_MODE_ENCODER/CROWN*/
876
915
#endif
877
916
878
917
/*Use X11 to open window on Linux desktop and handle mouse and keyboard*/
@@ -928,6 +967,19 @@ extern void mp_lv_init_gc();
928
967
/*Driver for evdev input devices*/
929
968
#define LV_USE_EVDEV 0
930
969
970
+ /*Driver for libinput input devices*/
971
+ #define LV_USE_LIBINPUT 0
972
+ #if LV_USE_LIBINPUT
973
+ #define LV_LIBINPUT_BSD 0
974
+
975
+ /*Full keyboard support*/
976
+ #define LV_LIBINPUT_XKB 0
977
+ #if LV_LIBINPUT_XKB
978
+ /*"setxkbmap -query" can help find the right values for your keyboard*/
979
+ #define LV_LIBINPUT_XKB_KEY_MAP { .rules = NULL, .model = "pc101", .layout = "us", .variant = NULL, .options = NULL }
980
+ #endif
981
+ #endif
982
+
931
983
/*Drivers for LCD devices connected via SPI/parallel port*/
932
984
#define LV_USE_ST7735 0
933
985
#define LV_USE_ST7789 0
@@ -954,9 +1006,6 @@ extern void mp_lv_init_gc();
954
1006
955
1007
/*Show some widget. It might be required to increase `LV_MEM_SIZE` */
956
1008
#define LV_USE_DEMO_WIDGETS 0
957
- #if LV_USE_DEMO_WIDGETS
958
- #define LV_DEMO_WIDGETS_SLIDESHOW 0
959
- #endif
960
1009
961
1010
/*Demonstrate the usage of encoder and keyboard*/
962
1011
#define LV_USE_DEMO_KEYPAD_AND_ENCODER 0
0 commit comments