免費瀏覽器網(wǎng)站品牌營銷推廣公司
LVGL簡介
LVGL( Light and Versatile Graphics Library )是一個輕量、多功能的開源圖形庫。
1、豐富且強大的模塊化圖形組件:按鈕 、圖表 、列表、滑動條、圖片等
2、高級的圖形引擎:動畫、抗鋸齒、透明度、平滑滾動、圖層混合等效果
3、支持多種輸入設(shè)備:觸摸屏、 鍵盤、編碼器、按鍵等
4、不依賴特定的硬件平臺
5、配置可裁剪,最低資源占用:64 kB Flash,16 kB RAM
6、基于UTF-8的多語種支持,例如中文、日文、韓文、阿拉伯文等
7、可以通過類CSS的方式來設(shè)計、布局圖形界面(例如:Flexbox、Grid)
8、支持操作系統(tǒng)、外置內(nèi)存、以及硬件加速(已內(nèi)建支持STM32 DMA2D)
9、即便僅有單緩沖區(qū)(frame buffer)的情況下,也可保證渲染如絲般順滑
10、支持模擬器仿真,可以無硬件依托進行開發(fā)......

LVGL移植要求
(注意:此要求僅針對V8版本的LVGL)
1、MCU?
1、16、32 或 64 位微控制器或處理器
2、主控頻率:>16Mhz
3、Flash/ROM:> 64kb,建議180kb以上?
4、RAM:>8kb,建議24kb以上
5、圖形緩沖區(qū):>水平分辨率像素,建議大于1/10屏幕總像素
6、C99或更新的版本的編譯器
?我這里講解使用的是STM32F407ZGT6,讀者可以使用和我不一樣,比如ESP32、其他系列的STM32單片機......,只要主控和編譯器以及屏幕驅(qū)動滿足要求,都是可以移植LVGL的。
?2、顯示屏
① 具有 8/16 /24/ 32 位色深的顯示屏。② HDMI 端口的顯示器。③ 小型單色顯示器。④ LED 矩陣。⑤ 其他可以控制像素顏色 / 狀態(tài)的顯示器。?
LVGL 源碼下載 ?
LVGL 相關(guān)的源碼和工程都是存放在 GitHub 遠程倉庫中,該 GitHub 遠程倉庫地址為https://github.com/lvgl/lvgl/ ,用戶可以該倉庫中下載 LVGL 圖形庫的源碼。
1、選擇版本
2、下載
3、下載后,解壓縮得到文件夾:lvgl-release-v8.3?
LVGL 源碼介紹


?上表中,與 LVGL 移植相關(guān)的有 examples文件夾、src 文件夾、lv_conf_template.h 和 lvgl.h 文件,其他的部分均與移植無關(guān),用戶可以選擇忽略。接下來我們分別看一下 examples、src 這兩個文件夾的文件結(jié)構(gòu):
1. examples 文件夾
該文件夾主要包含 LVGL 部件實例、動畫實例、其他第三方庫實例以及輸入設(shè)備和顯示器驅(qū)動文件等內(nèi)容,具體如表 1.3.2 所示:
上表中,只有 porting 文件夾與移植相關(guān),其他文件夾中存放的是各種實例。 ?
2. src 文件夾
該文件夾主要包含 LVGL 源文件(部件源碼、多種解碼庫)
?
總結(jié)
本篇主要介紹了LVGL大概功能以及資料獲取方式和源碼文件的大概介紹,讀者開始只需要有個大概的了解,在不斷的學(xué)習(xí)之后,讀者自然而然的就明白LVGL內(nèi)部的實現(xiàn)流程和掌握LVGL的使用方式。