LVGL v7移植到ARM平台

本次移植的是LVGL v7.110

硬件平台:野火IMX6ULL

参考博客:

实践分享 | 基于framebuffer的lvgl的移植使用_嵌入式大杂烩-CSDN博客

⭐建立一个lvgl项目 — 百问网LVGL系列教程 1.0 文档 (gitee.io)

1 下载所需要的仓库

git clone git://github.com/lvgl/lvgl.git -b v7.11.0 #官方图形库
git clone git://github.com/lvgl/lv_drivers.git -b v7.11.0 #输入输出设备驱动官方示例配置
git clone git://github.com/lvgl/lv_demos.git -b v7.11.0 #官方demo,可选
  • lvgl:官方图形库

  • lv_drivers:输入输出设备驱动官方示例配置

  • lv_demos:官方demo,可选

2 设置相关文件

将lv_demos文件夹改名为lv_examples。

当前处于工程根目录

cp lvgl/lv_conf_template.h ./lv_conf.h
cp lv_examples/lv_ex_conf_template.h ./lv_ex_conf.h
cp lv_drivers/lv_drv_conf_template.h ./lv_drv_conf.h

lv_conf.h

#if 0 改为#if 1

#define LV_HOR_RES_MAX          (800)#设置屏幕分辨率
#define LV_VER_RES_MAX          (480)

#define LV_COLOR_DEPTH     16#设置颜色深度

lv_drv_conf.h

#if 0 改为#if 1

#  define USE_FBDEV           1 #改为1 使用framebuffer为/dev/fb0
#  define USE_EVDEV           1 #改为1 打开输入,使用/dev/input/event2

你的板子的输入事件可能不是event1,根据实际进行修改。可以使用cat命令来测试一下你板子的触摸屏输入对应的是哪一个event,如:

在这里插入图片描述

此时,触摸一下屏幕,则终端会有信息(乱码信息)输出,则说明当前板子的触摸输入对应的就是这个event。


lv_ex_conf.h

#if 0 改为#if 1

主函数调用哪个demo,就把哪个demo的宏定义设置为1,例如

/*Printer demo, optimized for 800x480*/
#define LV_USE_DEMO_PRINTER     1

3 编译

出现如下错误

LVGL v7移植到ARM平台_第1张图片

将lv_conf.h对应的宏定义设置为1

#define LV_FONT_MONTSERRAT_22    1
#define LV_FONT_MONTSERRAT_28    1
#define LV_FONT_MONTSERRAT_32    1

LVGL v7移植到ARM平台_第2张图片
github

你可能感兴趣的:(LVGL,嵌入式)