利用RVB2601开发板实现基于LVGL库中文显示

本文来自:RISC-V大赛 - 清风飘雪

本文作者:赤火隐士

1. 前言

看到不少网友对于自带的LVGL库显示比较反感,遂产生编写此文想法:利用RVB2601板实现基于LVGL库中文显示。此文基于“RVB2601应用开发实战系列三: GUI图形显示”基础上修改。

2. 硬件配置

RVB2601开发板自带单彩色图形显示面板,屏幕分辨率128x64 pixel,通过4 wire SPI接口与主芯片连接,对应的pin引脚分别为PA27、PA28、PA29、PA30,引脚定义可以通过oled.c文件的“oled_gpio_init”函数查看。

3. 建立ch2601_lvgl_chinese工程

3.1 新建工程:

打开CDK,点击HOME图标,点击右上角新建工程。

利用RVB2601开发板实现基于LVGL库中文显示


3.2 搜索工程

搜索ch2601_gui_demo,然后点击创建工程,如下图所示:

利用RVB2601开发板实现基于LVGL库中文显示


3.3 输入工程名:

输入“ch2601_lvgl_chinese”,然后点击下载方案:

利用RVB2601开发板实现基于LVGL库中文显示


3.4、激活工程:

在ch2601_lvgl_chinese上右击,选择“Set As Active”,激活。

4、修改工程

4.1、制作Chinese_font.c字体文件:

字体文件制作可以使用“阿里兄”设计的免费软件“LvglFontTool字体工具”制作,字体文件制作方法如图所示:

利用RVB2601开发板实现基于LVGL库中文显示


4.2 将字体文件“Chinese_font.c”添加到工程:

利用RVB2601开发板实现基于LVGL库中文显示


4.3、修改“main.c”文件:

将main.c中的gui_label_create函数修改如下:

static void gui_label_create(void)
{
    LV_FONT_DECLARE(Chinese_font);
    static lv_style_t font_style;
    
    lv_style_init(&font_style);
    lv_style_set_text_font(&font_style, LV_STATE_DEFAULT, &Chinese_font);
    lv_obj_t* font_label =  lv_label_create(lv_scr_act(), NULL);
    lv_obj_add_style(font_label, LV_LABEL_PART_MAIN, &font_style);
    lv_label_set_text(font_label, "\uF004中国我爱你\uF004");
    lv_obj_align(font_label, NULL, LV_ALIGN_CENTER, 0, 0);
    
}


4.4、编译,下载、运行:

利用RVB2601开发板实现基于LVGL库中文显示


利用RVB2601开发板实现基于LVGL库中文显示


5、小结:

初次使用,有不到之处还请各位大佬指正、海涵!

上一篇:RVB2601 开箱测试-裸奔Oled+定时器+按键测试


下一篇:RVB2601应用开发实战系列五: 网络播放器设计(一)