前言
之前做项目的时候有了解到LVGL这个开源的gui库,趁着假期就想着把它移植到自己的开发板上看看能不能正常跑起来。虽说不难,但也花了一些功夫,因此也在这里做下总结。
一、LVGL是什么?
LVGL,全称Light and Versatile Graphics Library,以下是官网上的介绍。
LVGL is an open-source graphics library providing everything you need to create embedded GUI with easy-to-use graphical elements, beautiful visual effects and low memory footprint.
翻译过来就是说,LVGL是一个开源的图形库,提供了创建嵌入式GUI所需的一切,具有易于使用的图形元素、漂亮的视觉效果和低内存占用。

官网地址:https://lvgl.io/
二、LVGL的移植
1.库*载下**
前面介绍过,LVGL是一个开源的图形库,因此,我们可以在github上面找到它的开源库。下面是它的地址: LVGL核心库:https://github.com/lvgl/lvgl lvgl_drivers库:https://github.com/lvgl/lv_drivers *载下**后,我们可以得到以下两个tar包

依次解压缩并重新命名,最后我们得到的文件如下:

到这里我们的准备工作都做好了,下面就可以正式开始LVGL图形库的移植了。
2.LVGL核心库配置修改
首先,我们先进入到lvgl目录,在这个目录下,可以看到有一个lv_conf_template.h模板,我们复制一份这个.h文件。

将copy的lv_conf.h文件中的#if 0 改为#if 1接下来的一些配置需要根据板子的实际情况去修改

下面这几个可以不做改动

3.LVGL驱动库配置修改
在lv_drivers目录下,同样有一个lv_drv_conf_template.h配置模板,我们先copy一份出来。

将copy的lv_drv_conf.h文件中的#if 0 改为#if 1

到这里,配置修改已经差不多完成了,接下来,就是编译工作了。
4.编译LVGL
我们回到lvgl的根目录,即存放lvgl和lv_drivers文件夹的目录下编写Makefile文件

Makefile:

make all之后,我们可以在该目录下看到生成了一个__tmp__文件,里面存放的是我们所需要的编译好的目标文件,接下来,我们可以编写demo来测试。
三、编写demo测试
main.c

header.h

Makefile:

make all之后,同样在目录下会生成__tmp__文件

将player执行程序拷贝到开发板上运行

运行结果如下:
