lvgl模拟器使用教程

一、lvgl模拟器添加图片,编译提示无法解析的外部符号

1. v_img_set_src(obj, &img_cogwheel_argb);

编译一下,报以下错误
在这里插入图片描述

错误原因是img_cogwheel_argb.c 文件中的变量img_cogwheel_argb定义按C编译

const lv_img_dsc_t img_cogwheel_argb = {
  .header.always_zero = 0,
  .header.w = 100,
  .header.h = 100,
  .data_size = 10000 * LV_IMG_PX_SIZE_ALPHA_BYTE,
  .header.cf = LV_IMG_CF_TRUE_COLOR_ALPHA,
  .data = img_cogwheel_argb_map,
};

而lvgl_similator.cpp中引用的img_cogwheel_argb变量按C++编译,造成名字引用找不到错误,解决方法如下:
在需要引用的

#ifndef MYFUNCTIONS_H
#define MYFUNCTIONS_H

#ifdef __cplusplus
extern "C" {
#endif

LV_IMG_DECLARE(ui_img_anim_spring_wreath_0_png);  // 声明 C

#ifdef __cplusplus
}
#endif

#endif // MYFUNCTIONS_H

2.

二、模拟器版本选择V8 V9

模拟器也是可以选择版本的,直接切换到想要的分支,再更新子模块即可
https://zhuanlan.zhihu.com/p/695194026

### 如何在 VSCode 中使用 LVGL 模拟器 对于希望在 Visual Studio Code (VSCode) 上运行和调试基于 Littlev Graphics Library (LVGL) 的图形界面应用的开发者来说,设置合适的开发环境至关重要。推荐的方式是在 Linux 和 Mac 系统上配置带有 SDL 驱动的支持[^1]。 #### 安装依赖项 为了使 LVGL 模拟器正常工作,在开始之前需安装必要的软件包: ```bash sudo apt-get install libsdl2-dev libfreetype6-dev libglu1-mesa-dev ``` 这些命令适用于 Debian/Ubuntu 类系统;其他发行版可能有不同的包管理工具指令。 #### 创建项目结构并初始化 CMakeLists.txt 文件 创建一个新的文件夹作为项目的根目录,并在此基础上建立 `CMakeLists.txt` 来定义构建过程: ```cmake cmake_minimum_required(VERSION 3.10) project(LVGL_SDL) set(CMAKE_C_STANDARD 99) find_package(SDL2 REQUIRED) include_directories(${SDL2_INCLUDE_DIRS}) add_subdirectory(lv_drivers/src/lv_drv_conf) add_library(lv_sdl STATIC lv_drivers/src/sdl/sdl.c) target_link_libraries(lv_sdl ${SDL2_LIBRARIES}) ``` 此脚本假设已经下载了 `lv_drivers` 库并且放置于合适的位置以便被上述路径访问到。 #### 编写主程序代码 编写一个简单的应用程序来测试模拟器是否可以成功启动: ```c #include "lvgl/lvgl.h" #include "lv_drivers/display/sdl_window.h" int main(void){ /* Initialize the LVGL library */ lv_init(); /* Create a window to display content */ sdl_win_create(NULL, NULL); while(1){ /* Periodically call this function to process events from SDL */ if(!sdl_win_is_running()) break; /* Call lv_task_handler periodically (e.g., every 5 ms)*/ lv_task_handler(); usleep(5 * 1000); } return 0; } ``` 这段代码实现了最基本的循环逻辑,用于持续更新屏幕上的图像帧直到窗口关闭为止。 #### 使用 VSCode 进行编译与调试 通过扩展如 C/C++ 或者 PlatformIO 可以为 VSCode 添加强大的功能支持,从而简化整个流程中的编码体验。确保已安装好对应的插件之后按照提示完成剩余步骤即可享受流畅的操作感受。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值