成人免费无码不卡毛片,亚洲AⅤ无码精品一区二区三区,国产尤物精品视频,久久精品日本亚洲,欧美成人一区三区无码乱码A片,中文字日产幕码一区二区色哟哟,亞洲日韓中文字幕網AV

  • 正文
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

如何使用 ESP32 開發(fā)圖形界面

03/26 13:45
1868
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

我是老溫,一名愛學習的嵌入式工程師關(guān)注我,一起變得更加優(yōu)秀!

LVGL是一款用C語言編寫的開源輕量級圖形顯示框架,LVGL集成了資源占用小,多平臺使用,移植簡單等一系列特點,特別適合在嵌入式設(shè)備上進行開發(fā)使用。

ESP32是一款強大的WiFi SOC,特別適合用在物聯(lián)網(wǎng)WiFi設(shè)備上,對于一些需要進行圖形界面開發(fā)的業(yè)務(wù)場景,ESP32+LVGL這個搭配,基本可以滿足需求了。

在LVGL的官方文檔上,已經(jīng)有一個章節(jié)簡單地描述了如何在ESP32上面移植LVGL,并且官方已經(jīng)幫開發(fā)者移植好了一個示例工程,開發(fā)者只需要作簡單的導(dǎo)入即可。LVGL關(guān)于ESP32的官方介紹頁面,如下圖所示。

https://docs.lvgl.io/latest/en/html/get-started/espressif.html

以下是詳細的導(dǎo)入過程。

1、從以上的文檔得知,LVGL官方創(chuàng)建了一個示例工程,lv_port_esp32,這個工程托管在github上面,但由于目前訪問github會出現(xiàn)不穩(wěn)定的情況,所以,我們可以把github上的工程導(dǎo)入到gitee上,再通過gitee來進行下載,如下圖所示。

2、工程導(dǎo)入gitee成功后,就可以使用git clone命令,把工程項目下載到本地,如下圖所示。

命令:git clone https://gitee.com/embediot/lv_port_esp32

3、下載成功后,這個工程還沒有導(dǎo)入LVGL相關(guān)的代碼,LVGL相關(guān)的源碼和例程,是以組件的形式提供的,因此,LVGL的源碼保存在lv_port_esp32/components文件夾里面,并且LVGL相關(guān)的源碼和例程,是使用git submodule的方式進行管理的,因此,我們需要更新submodule。

 

4、示例工程lv_port_esp32依賴三個submodule,分別是:

(1)lv_examples:這個是LVGL的示例demo,移植完之后可以使用這些demo驗證LVGL的運行。

(2)lvgl:這個是LVGL的源代碼,以C語言作為主要編程語言。

(3)lvgl_esp32_drivers:這個是一些移植和適配好的顯示屏觸摸板的驅(qū)動代碼,LVGL為了方便開發(fā)者,已經(jīng)幫我們適配好了一些比較常用的顯示屏和觸摸板。

5、這三個submodule的源碼是托管在github的,同樣由于github的訪問困難,需要把這三個submodule都同步到gitee,然后通過gitee進行更新,同步完之后,如下圖所示。

6、同步完成后,再修改lv_port_esp32/.gitmodules這個文件,把submodule的更新網(wǎng)址指向gitee,修改完成后,如下圖所示。

7、然后在 lv_port_esp32這個目錄下,執(zhí)行以下命令,進行子模塊的下載,下載完成后,如下圖所示。

命令:git submodule update --init --recursive

8、至此,整個LVGL的工程就成功導(dǎo)入到ESP32里面了,可以使用vscode打開進行開發(fā),如下圖所示。

9、導(dǎo)入完成后,需要根據(jù)自己的硬件板卡,來配置LVGL的工程參數(shù),主要是配置TFT-LCD的參數(shù),如TFT_LCD的引腳位號,驅(qū)動方式,以及顯示參數(shù);還有配置觸摸板的參數(shù),如觸摸板的引腳位號,驅(qū)動芯片,等等。

10、作者采用的TFT_LCD驅(qū)動芯片是ILI9341,SPI驅(qū)動接口,RGB565的工作方式,采用的觸摸板是電阻觸摸,觸摸芯片是XPT2046,接口是SPI,具體的配置,可以參考ESP32的menuconfig里面的內(nèi)容,如下圖所示。

11、編譯工程后,燒錄到硬件板卡上,即可運行LVGL官方提供的演示demo。

相關(guān)推薦

静安区| 永寿县| 康定县| 桃源县| 冕宁县| 社旗县| 枞阳县| 临朐县| 乐业县| 双牌县| 丁青县| 阿图什市| 南昌市| 南宫市| 临邑县| 承德市| 元江| 淮北市| 阿瓦提县| 灵宝市| 磴口县| 思南县| 教育| 庆城县| 鄂温| 永仁县| 昌图县| 河津市| 苍南县| 南陵县| 罗田县| 永泰县| 松溪县| 武平县| 河曲县| 壤塘县| 自贡市| 犍为县| 铅山县| 松溪县| 永定县|