天天看點

利用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、小結:

初次使用,有不到之處還請各位大佬指正、海涵!

繼續閱讀