一、LVGL简介
lvgl的官方网站:https://www.php.cn/link/46d09c503b30980ffc325cc243e1c0f5。
LVGL,即Light and Versatile Graphics Library,是一个轻量化且多功能的图形库,遵循MIT开源许可协议,具有以下功能特点(LVGL能为您做什么)。

-
硬件要求
- CPU:16、32、64位
- 主频:推荐16 MHz
- Flash/ROM空间:> 64 kB(推荐180 kB)
- RAM空间:8 kB(推荐24 kB)
- 1 Frame buffer(显存):可在内部SRAM和外部RAM中使用,显存大小至少要大于水平像素点(推荐1/10屏幕大小)
- C99语法
-
功能特性
- 控件:支持30多种控件
- 显示设备:支持任意分辨率屏幕
- 输入设备:在同一个屏幕上支持多个输入设备
-
在线演示 官方提供了丰富的demo在线演示,https://www.php.cn/link/46d09c503b30980ffc325cc243e1c0f5demos,例如下面的打印机界面demo:

-
入门教程和文档 官方提供了基于多种开发板的入门教程:https://www.php.cn/link/46d09c503b30980ffc325cc243e1c0f5developers,包括NXP、STM32、ESP32等。
LVGL的教程和文档:https://www.php.cn/link/7b71cd05d1201966672ed91687adaa03。
韦东山老师提供了LVGL中文文档,非常丰富:https://www.php.cn/link/9f62c81d7b48e146423f79c9e151510d
二、PC模拟器
LVGL支持多种模拟器,如下:
- Eclipse with SDL driver: 推荐在Linux和Mac上使用
- CodeBlocks: 推荐在Windows上使用
- VisualStudio with SDL driver: 适用于Windows
- VSCode with SDL driver: 推荐在Linux和Mac上使用
- PlatformIO with SDL driver: 推荐在Linux和Mac上使用
在Linux上使用VSCode是最佳选择,只需按照仓库的readme文档进行操作即可。
仓库地址:Simulator project for LVGL embedded GUI Library。
(1)需求
- gcc
- gdm
- make
- vscode
(2)安装 SDL
可以从官网下载(https://www.php.cn/link/561abb177528d5bf95d40838809a7cf6):
sudo apt-get update sudo apt-get install -y build-essential libsdl2-dev
(3)拉取源码
git clone --recursive https://github.com/lvgl/lv_sim_vscode_sdl
(4)编译源码
下载完成后,进入源码目录,使用VSCode打开(自带工作区):
code .
然后直接编译:
make
编译完成后,可执行文件位于build/bin目录下:
移动wap网站集成在线wap模拟器源码一款可以登陆wap模拟器,体验下吧本项目,必须先用VS2008打开,里面是html文件,不要直接打开哦,没用的。用VS2008打开以后,然后通过 Moni/default.html 进入浏览。

执行即可看到效果:
./demo



(5)更换示例
在main.c中可以选择不同的demo:

例如,这里我选择lv_demo_music的示例,重新编译并运行:

这个界面真是太漂亮了~
三、一个简单的示例
在main.c中选择lv_example_switch_1这个最简单的示例,运行看看效果:

再来看看其示例代码:

可以看到基于LVGL实现界面的代码还算简洁,这些API后续再深入学习。









