跳到主要内容

LVGL 与 SPI TFT GUI

本次使用的是 Dshan_Display Module,如下图:

引脚配置如下:

R128 DevkitTFT 模块
PA12CS
PA13SCK
PA18MOSI
PA9PWM
PA20RESET
PA19RS
3V33.3V
GNDGND

载入方案

我们使用的开发板是 R128-Devkit,需要开发 C906 核心的应用程序,所以载入方案选择 r128s2_module_c906

$ source envsetup.sh 
$ lunch_rtos 1

配置 SPI LCD 驱动

驱动配置请参照 《SPI 驱动 TFT LCD 屏》文章进行配置。

配置 LVGL 软件包

运行 mrtos_menuconfig 进入配置页面。在如下地址找到勾选相关软件包。

System components  --->
thirdparty components --->
[*] Littlevgl-8 --->
[*] lvgl examples
[*] lvgl-8.1.0 use sunxifb double buffer
[*] lvgl-8.1.0 use sunxifb cache

注意,lv_exampleslv_g2d_test 不能同时勾选,否则会报错重复定义错误。

论坛提问:想给R128移植上LVGL按照教程结果失败

错误如下:

如果出现 update_mbr_failed,请参照常见问题修改分区表增大分区容量

修改 LVGL 显示配置

进入 lichee/rtos-components/thirdparty/littlevgl-8/lv_examples/src/lv_conf.h 找到 LV_COLOR_DEPTH 并修改为 16 位,LV_COLOR_16_SWAP 置为 1 进行红蓝颜色交换。

测试

编译打包刷写后,在控制台输入 lv_examples 可以查看相关命令。

运行 lv_examples 1 即可在屏幕显示 LVGL 界面。