LVGL(轻便而多功能的图形库)是一个免费的开放源代码图形库,它提供创建具有易于使用的图形元素,精美的视觉效果和低内存占用的嵌入式GUI所需的一切。
1.官网https://lvgl.io
2.Gihub主页https://github.com/lvgl 在这里可以下载到lvgl的驱动和各板子上的demo。以及windows下和linux下的仿真工程
首先了解下目录构成,lvgl基本构成有lvgl库本身这个也是最核心的东西了,构建的时候也是必须要的了。然后就是lv_examples这个我们移植的时候可以加上,但实际自己的项目中是不需要存在的。lv_drivers这个目录是驱动目录,理论上来说也不是必要的,但是没有驱动的话lvgl显示的东西就不知道在哪了,不可能只显示到内存上而不刷新到LCD或者显示设备上吧。而且ui通常都还需要配备输入设备。所以这个目录包含的就是显示驱动以及输入设备的驱动等。
啰嗦完了开始移植。
1.建个目录 mkdir my_lvgl cd my_lvgl
2.从github上下载lvgl到本地 https://github.com/lvgl/lvgl 上我们选择最新的释放版本release/v7 我们只下载当前版本来使用。
git clone -b release/v7 --depth 1 https://github.com/lvgl/lvgl.git 下载lvgl核心库
git clone -b release/v7 --depth 1 https://github.com/lvgl/lv_drivers.git 下载驱动
lvgl里面都用一个模板配置拷贝出来稍微修改下就行了。
lvgl模板拷贝出来修改 cp lvgl/lv_conf_template.h ./lv_conf.h
lv_conf.h中 if 0 改为 if 1
最重要的需要配置的有一下几个可以搜索并配置:
这几个就必须要根据板子实际情况修改了
#define LV_HOR_RES_MAX (480) //屏幕水平宽度 根据实际使用修改
#define LV_VER_RES_MAX (320) //屏幕垂直高度 根据实际使用修改
#define LV_COLOR_DEPTH 16 //LCD 屏幕的像素深度。一般的可能是rgb565 也有是rgb8888的就写 32 根据实际使用修改
#define LV_USE_GPU 1 //这个记得给他置0了一般的板子应该没有gpu
下面这几个可以不动
#define LV