LVGL 应用¶
示例工程使用 LVGL 9.5.0 的 Linux framebuffer 和 evdev 驱动,不依赖旧版 lv_drivers 仓库。
准备 LVGL 源码¶
将资料包中的 lvgl-v9.5.0.tar.gz 复制到 ~/v3s-workspace,再解压到工程目录:
cd ~/v3s-workspace/projects/lvgl-v9-demo
mkdir -p third_party
tar -xzf ~/v3s-workspace/lvgl-v9.5.0.tar.gz -C third_party
mv third_party/lvgl-9.5.0 third_party/lvgl
也可以联网获取:
make fetch LVGL_VERSION=v9.5.0
编译¶
cd ~/v3s-workspace/projects/lvgl-v9-demo
export BUILDROOT_OUTPUT="$HOME/v3s-workspace/buildroot-2023.02.3/output"
make
file build/lvgl-v9-demo
上传和运行¶
scp build/lvgl-v9-demo root@<开发板IP>:/root/
ssh root@<开发板IP>
在开发板停止系统自带版本,再运行新程序:
/etc/init.d/S20lvgl-v9-demo stop
chmod +x /root/lvgl-v9-demo
/root/lvgl-v9-demo --fb /dev/fb0 --input /dev/input/event1
没有连接触摸屏时:
/root/lvgl-v9-demo --fb /dev/fb0 --no-input
直接启动指定演示:
/root/lvgl-v9-demo --demo widgets
/root/lvgl-v9-demo --demo benchmark
/root/lvgl-v9-demo --demo stress
安装到根文件系统¶
cd ~/v3s-workspace/projects/lvgl-v9-demo
make ROOTFS_OVERLAY="$HOME/v3s-workspace/strongpi-v3s-support/rootfs_overlay" \
install-rootfs-overlay
重新编译 Buildroot 后,程序安装为 /usr/bin/lvgl-v9-demo。
开机配置位于:
/etc/default/lvgl-v9-demo
可设置 framebuffer、输入设备、默认演示和是否开机启动。
默认 INPUT_DEVICE="auto",启动脚本会按 sysfs 设备名称查找 Goodix 触摸屏。需要固定其他输入设备时,可改为实际的 /dev/input/eventN。