本文只针对当时的LVGL v7,LVGL迭代过程中变化较大,部分接口有可能做调整。本文仅供参考
LVGL介绍
官网 :https://lvgl.io/
官方在线文档:https://docs.lvgl.io/latest/en/html/intro/index.html
littleVGL是一个开源的嵌入式图形控件库,MIT协议, 图形美观,硬件无关,移植方便,可移植性强,占用资源少。
硬件要求:
- 16, 32 or 64 bit microcontroller or processor
- 16 MHz clock speed is recommended
- Flash/ROM: > 64 kB for the very essential components (> 180 kB is recommended)
- One frame buffer in the MCU or in external display controller
- C99 or newer compiler
- Basic C (or C++) knowledge: pointers, structs, callbacks
- RAM:
Static RAM usage: ~2 kB depending on the used features and objects types
Stack: > 2kB (> 8 kB is recommended)
Dynamic data (heap): > 2 KB (> 16 kB is recommended if using several objects). Set by LV_MEM_SIZE in lv_conf.h.
Display buffer: > “Horizontal resolution” pixels (> 10 × “Horizontal resolution” is recommended)
最重要的的是:它支持PC模拟,只用PC就可以直接运行你的界面,这就极大的方便了图形界面相关的的调试。
移植说明
常见的IDE都支持
本文以VS为例
资源下载
模拟器git仓库使用了submodule,可以直接递归克隆或者clone下来再运行git submodule update --init
这里包括以下四个:
- 模拟器 :https://github.com/lvgl/lv_sim_visual_studio_sdl
- LVGL库:https://github.com/lvgl/lvgl
- LVGL 演示demo:https://github.com/lvgl/lv_examples
- LVGL 驱动驱动:https://github.com/lvgl/lv_drivers
环境搭建编译运行
模拟器下载来目录如下, lv_drivers,lvgl,lv_examples都是空文件夹,将上面下载的另外三个资源分别放入对应的这三个文件,注意目录层级。
这个模拟器是vs2017的,如果是高版本的vs可能会报错,只要重新生成目标解决方案即可
这样没意外就可以直接运行各种例程了