触屏学习(二)——LVGL、Vscode模拟器搭建学习
0、序言
1、MSYS2安装
2、SDL、MingW、CMake安装
3、lvgl8
3.1、模拟器环境搭建
target_include_directories(main
PRIVATE
${CMAKE_SOURCE_DIR}/SDL2/include
)
# 链接库文件需要绝对路径,必须要加上 ${CMAKE_SOURCE_DIR}/
target_link_libraries(main
PRIVATE
${CMAKE_SOURCE_DIR}/SDL2/lib/libSDL2.dll.a
)
3.2、项目测试
lv_obj_t * obj = lv_obj_create(lv_scr_act()); // 基于主屏幕创建窗体对象
lv_obj_set_size(obj, LV_PCT(40), LV_PCT(20)); // 设置窗体大小为 40% 20%
lv_obj_align(obj, LV_ALIGN_CENTER, 0, 0); // 设置窗口位置居中偏移为0
lv_obj_t * label = lv_label_create(obj); // 创建标签对象
lv_label_set_text_fmt(label, "Hello, LVGL!\nLVGL V%d.%d.%d\n", \
lv_version_major(), lv_version_minor(), lv_version_patch()); // 格式化输入字符串
lv_obj_align(label, LV_ALIGN_CENTER, 0, 0); // 设置标签文字位置,在父对象基础上居中偏移0
3.2 lvgl移植stm32工程
file(GLOB_RECURSE LVGL_SOURCES "lvgl/src/*.c" )
target_sources(${CMAKE_PROJECT_NAME} PRIVATE
# Add user sources here
${LVGL_SOURCES}
)
# Add include paths
target_include_directories(${CMAKE_PROJECT_NAME} PRIVATE
# Add user defined include paths
${CMAKE_SOURCE_DIR}/lvgl/
${CMAKE_SOURCE_DIR}/
# Develop/
)
# Add project symbols (macros)
target_compile_definitions(${CMAKE_PROJECT_NAME} PRIVATE
# Add user defined symbols
LV_CONF_INCLUDE_SIMPLE # 可能不需要
)
问题:单独把几个初始化函数放到新的.c文件中,程序编译的RAM和FLASH改变,爆内存了导致生成失败

浙公网安备 33010602011771号