/**
* @file lv_conf.h
* LVGL图形库配置文件 v8.0.0-dev 版本
* 此文件包含LVGL库的核心配置参数,用户可根据具体需求调整各项设置
*/
/*
* 请将本文件复制并重命名为`lv_conf.h`,放置在`lvgl`库文件夹同级目录下
*/
#if 1 /* 设置为1启用本配置文件内容 */
#ifndef LV_CONF_H
#define LV_CONF_H
/*clang-format off*/
#include <stdint.h>
/*================================
颜色设置 COLOR SETTINGS
*================================*/
/* 颜色深度(每个像素的字节数):
1: 1字节/像素(单色), 8: RGB332, 16: RGB565, 32: ARGB8888 */
#define LV_COLOR_DEPTH 32
/* 交换RGB565颜色的高8位和低8位,适用于8位接口(如SPI)的显示屏 */
#define LV_COLOR_16_SWAP 0
/* 启用屏幕透明度支持(需要颜色深度为32且屏幕背景透明度非LV_OPA_COVER)*/
#define LV_COLOR_SCREEN_TRANSP 0
/* 设置色度键颜色(用于图像透明色处理)*/
#define LV_COLOR_CHROMA_KEY lv_color_hex(0x00ff00) /* 纯绿色作为透明色 */
/*================================
内存设置 MEMORY SETTINGS
*================================*/
/* 内存管理配置:1使用自定义malloc/free,0使用LVGL内置内存管理 */
#define LV_MEM_CUSTOM 1
#if LV_MEM_CUSTOM == 0
/* 内置内存池大小(建议至少2KB) */
#define LV_MEM_SIZE (64U * 1024U) /* 64KB */
/* 指定内存池地址(0表示自动分配) */
#define LV_MEM_ADR 0
#else
/* 自定义内存函数头文件 */
#define LV_MEM_CUSTOM_INCLUDE <stdlib.h>
#define LV_MEM_CUSTOM_ALLOC malloc /* 内存分配函数 */
#define LV_MEM_CUSTOM_FREE free /* 内存释放函数 */
#define LV_MEM_CUSTOM_REALLOC realloc /* 内存重分配函数 */
#endif
/* 使用标准memcpy/memset替代LVGL内部实现(可能提升性能)*/
#define LV_MEMCPY_MEMSET_STD 0
/*================================
硬件抽象层 HAL SETTINGS
*================================*/
/* 默认屏幕刷新周期(单位:毫秒)*/
#define LV_DISP_DEF_REFR_PERIOD 30 /* 30ms刷新一次 */
/* 输入设备读取周期 */
#define LV_INDEV_DEF_READ_PERIOD 30 /* 30ms读取一次输入 */
/* 使用系统滴答定时器(自动管理时间,无需手动调用lv_tick_inc())*/
#define LV_TICK_CUSTOM 1
#if LV_TICK_CUSTOM
#define LV_TICK_CUSTOM_INCLUDE <sysinfoapi.h> /* Windows系统时间头文件 */
#define LV_TICK_CUSTOM_SYS_TIME_EXPR (GetTickCount()) /* 获取系统启动毫秒数 */
#endif
/* 默认DPI(影响控件默认尺寸和间距)*/
#define LV_DPI_DEF 130 /* 130像素/英寸 */
/*================================
功能特性配置 FEATURE CONFIGURATION
*================================*/
/*--------------
绘图功能
*-------------*/
/* 启用高级绘图功能(阴影、渐变、圆角等)*/
#define LV_DRAW_COMPLEX 1
#if LV_DRAW_COMPLEX
/* 阴影缓存大小(提升阴影渲染性能,0表示禁用)*/
#define LV_SHADOW_CACHE_SIZE 0
#endif
/* 图像缓存大小(0表示禁用,使用外部解码器时建议启用)*/
#define LV_IMG_CACHE_DEF_SIZE 0
/* 屏幕旋转最大缓冲区(启用软件旋转时使用)*/
#define LV_DISP_ROT_MAX_BUF (10*1024) /* 10KB */
/*--------------
GPU加速
*-------------*/
/* 启用STM32 DMA2D硬件加速 */
#define LV_USE_GPU_STM32_DMA2D 0
/*--------------
日志系统
*-------------*/
#define LV_USE_LOG 1 /* 启用日志模块 */
#if LV_USE_LOG
/* 日志级别(TRACE, INFO, WARN, ERROR, USER, NONE)*/
#define LV_LOG_LEVEL LV_LOG_LEVEL_USER
/* 使用printf输出日志 */
#define LV_LOG_PRINTF 1
/* 各模块日志跟踪开关 */
#define LV_LOG_TRACE_MEM 1 /* 内存操作跟踪 */
#define LV_LOG_TRACE_TIMER 1 /* 定时器跟踪 */
#define LV_LOG_TRACE_INDEV 1 /* 输入设备跟踪 */
#endif
/*--------------
断言检查
*-------------*/
#define LV_USE_ASSERT_NULL 1 /* 空指针检查(推荐启用) */
#define LV_USE_ASSERT_MALLOC 1 /* 内存分配检查(推荐启用) */
/* 自定义断言处理(例如系统复位)*/
#define LV_ASSERT_HANDLER_INCLUDE <stdint.h>
#define LV_ASSERT_HANDLER while(1); /* 断言失败时死循环 */
/*--------------
其他功能
*-------------*/
#define LV_USE_PERF_MONITOR 1 /* 启用性能监视器(显示CPU和FPS)*/
#define LV_USE_MEM_MONITOR 1 /* 启用内存监视器(显示内存使用情况)*/
/* 调试绘图(红色区域重绘标记)*/
#define LV_USE_REFR_DEBUG 0
/* 国际化支持 */
#define LV_USE_BIDI 0 /* 双向文本(阿拉伯语/希伯来语)*/
#define LV_USE_ARABIC_PERSIAN_CHARS 0 /* 阿拉伯/波斯字符支持 */
/*================================
控件配置 WIDGET USAGE
*================================*/
#define LV_USE_ARC 1 /* 圆弧控件 */
#define
LVGL配置文件lv_conf.h详解
于 2025-04-01 20:25:29 首次发布

最低0.47元/天 解锁文章
1409

被折叠的 条评论
为什么被折叠?



