chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【RISC-V & LVGL】現(xiàn)象級(jí)爆紅的開源顯示框架——LVGL究竟蘊(yùn)藏怎樣的魔力

深圳全志在線有限公司 ? 2022-03-15 09:50 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

#01 LVGL簡(jiǎn)介

pYYBAGIv7yCAJnePAAS4nPMF0YE782.png實(shí)用自行車碼表

pYYBAGIv7yKAJ73QAAgKcgwqkZg738.png具有科技感的獎(jiǎng)杯

實(shí)現(xiàn)這些DIY作品的背后,都有同樣一個(gè)功能強(qiáng)大的GUI——LVGL。

LVGL的作者是來自匈牙利的Gabor Kiss-Vamosikisvegabor,LVGL用C語(yǔ)言編寫,以實(shí)現(xiàn)最大的兼容性(與C ++兼容),模擬器可在沒有嵌入式硬件的PC上啟動(dòng)嵌入式GUI設(shè)計(jì),同時(shí)LVGL作為一個(gè)圖形庫(kù),它自帶著接近三十多種小工具可以供開發(fā)者使用。這些強(qiáng)大的構(gòu)建塊按鈕搭配上帶有非常絲滑的動(dòng)畫以及可以做到平滑滾動(dòng)的高級(jí)圖形,同時(shí)兼具著不高的配置要求以及開源屬性,顯著的優(yōu)勢(shì)使得LVGL蔚然成風(fēng),成為廣大開發(fā)者在選擇GUI時(shí)的第一選擇。

pYYBAGDzFMOAIAarAAkJeeJd_-M804.gif

-主要特性-

  • 強(qiáng)大的構(gòu)建塊,如按鈕,圖表,列表,滑塊,圖像等。
  • 高級(jí)圖形動(dòng)畫,抗鋸齒,不透明度,平滑滾動(dòng)
  • 各種輸入設(shè)備,如觸摸板、鼠標(biāo)、鍵盤、編碼器
  • 多語(yǔ)言支持與UTF-8編碼
  • 多顯示器支持,即使用更多的TFT,單色顯示器同時(shí)
  • 完全可定制的圖形元素與css類樣式
  • 硬件獨(dú)立與任何微控制器或顯示器使用
  • 可擴(kuò)展,使用少量?jī)?nèi)存(64kb Flash, 16kb RAM)
  • 支持操作系統(tǒng)、外部?jī)?nèi)存和GPU,但不是必需的
  • 單幀緩沖操作,甚至與高級(jí)圖形效果
  • 用C編寫的最大兼容性(c++兼容)
  • 模擬器在沒有嵌入式硬件的PC上開始嵌入式GUI設(shè)計(jì)
  • 綁定到MicroPython
  • 教程,例子,快速GUI設(shè)計(jì)的主題
  • 文檔可以在線和PDF格式獲取
  • 麻省理工學(xué)院許可下的免費(fèi)和開源
poYBAGIv7yGABgnpAARQiFuUCmQ969.png

-配置要求-

  • 基本上,每個(gè)能夠驅(qū)動(dòng)顯示器的現(xiàn)代控制器都適合運(yùn)行 LVGL。最低要求是:16、32 或 64 位微控制器或處理器
  • 建議使用 16 MHz 時(shí)鐘速度
  • 閃存/ROM:> 64 kB 用于非常重要的組件 (> 建議使用 180 kB) RAM:靜態(tài) RAM 使用量:0~2 kB,取決于使用的功能和對(duì)象類型 堆: > 2kB (> 建議使用 8 kB) 動(dòng)態(tài)數(shù)據(jù)(堆): > 2 KB (> 如果使用多個(gè)對(duì)象,建議使用 16 kB). 在 lv_conf.h 文件中配置 LV_MEM_SIZE 生效。 顯示緩沖區(qū):> “水平分辨率”像素(推薦> 10 × 10ד水平分辨率”) MCU 或外部顯示控制器中的一個(gè)幀緩沖器
  • C99 或更新的編譯器
  • 具備基本的 C(或 C++)知識(shí)

一塊能驅(qū)動(dòng)顯示屏且Flash大于64KB,RAM大于20KB的單片機(jī)都可以支持運(yùn)行LVGL。這樣也就說明只需要是我們經(jīng)常用于開發(fā)的單片機(jī)幾乎都可以支持(16bit及以上)LVGL,LVGL能夠同時(shí)被這么多平臺(tái)支持的主要原因是LVGL對(duì)硬件的要求并不算太高。

-系統(tǒng)框架-

LVGL本身是一個(gè)圖形庫(kù)。

我們的應(yīng)用程序通過調(diào)用LVGL庫(kù)來創(chuàng)建GUI。它包含一個(gè)HAL(硬件抽象層)接口,用于注冊(cè)顯示和輸入設(shè)備驅(qū)動(dòng)程序。驅(qū)動(dòng)程序除特定的驅(qū)動(dòng)程序外,它還有其他的功能,可驅(qū)動(dòng)顯示器GPU、讀取觸摸板或按鈕的輸入。

MCU有兩種典型的硬件設(shè)置。一個(gè)帶有內(nèi)置LCD/TFT驅(qū)動(dòng)器的外圍設(shè)備,而另一種是沒有內(nèi)置LCD/TFT驅(qū)動(dòng)器的外圍設(shè)備。相同的是,這兩種情況都需要一個(gè)幀緩沖區(qū)來存儲(chǔ)屏幕的當(dāng)前圖像。

集成了TFT/LCD驅(qū)動(dòng)器的MCU如果MCU集成了TFT/LCD驅(qū)動(dòng)器外圍設(shè)備,則可以直接通過RGB接口連接顯示器。在這種情況下,幀緩沖區(qū)可以位于內(nèi)部RAM(如果MCU有足夠的RAM)中,也可以位于外部RAM(如果MCU具有存儲(chǔ)器接口)中。

如果MCU沒有集成TFT/LCD驅(qū)動(dòng)程序接口,則必須使用外部顯示控制器(例如SSD1963、SSD1306、ILI9341 )。在這種情況下,MCU可以通過并行端口,SPI或通過I2C與顯示控制器進(jìn)行通信。幀緩沖區(qū)通常位于顯示控制器中,從而為MCU節(jié)省了大量RAM。

#02 常見GUI對(duì)比

早些年間大部分MCU的資源和處理能力有限,受制于資源以及處理能力的不足,很少有基于MCU通用的GUI。

現(xiàn)如今,隨著MCU技術(shù)的發(fā)展,MCU性能以及屬性有了很大改變,相較從前,現(xiàn)在MCU資源增加,處理能力增強(qiáng),市場(chǎng)需求增長(zhǎng),GUI的功能自然也越來越豐富了。

-LVGL-

LVGL集成了占用小、多平臺(tái)使用、移植簡(jiǎn)單、操作簡(jiǎn)單、開源免費(fèi)等一系列特點(diǎn)。對(duì)于使用者來說,LVGL擁有30多個(gè)可以隨時(shí)使用的小部件的同時(shí),甚至還可以自定義控件。

LVGL經(jīng)常被使用在MCU級(jí)別的設(shè)備上,因其可以在多平臺(tái)上移植使用以及在不同顯示器上,以C編寫,對(duì)于資源緊張的MCU來說十分適合。

poYBAGIv7yCAeWw1AALBJdCrTD4138.png

-MiniGUI-

MiniGUI 是一款面向嵌入式系統(tǒng)的高級(jí)窗口系統(tǒng)和圖形用戶界面支持系統(tǒng),遵循GPL協(xié)議。作為操作系統(tǒng)和應(yīng)用程序之間的一個(gè)中間件,MiniGUI 將底層操作系統(tǒng)和硬件平臺(tái)的細(xì)節(jié)隱藏起來,并為上層的應(yīng)用程序提供了一致接口。

MiniGUI同時(shí)具有多種技術(shù)特性,包括可在含有MMU的32位處理器架構(gòu)之上運(yùn)行;同時(shí)支持低端、高端顯示設(shè)備以及具備副屏支持的功能;方便為不同操作系統(tǒng)和環(huán)境應(yīng)運(yùn)而生的三種運(yùn)行模式以及內(nèi)建資源的支持;嵌入式應(yīng)用程序開發(fā)和調(diào)試的跨操作系統(tǒng)支持的屬性;完備的多窗口機(jī)制和消息傳遞機(jī)制。

pYYBAGIv7yGABCa0AAC4F193l-Q816.jpg

  • 優(yōu)點(diǎn)

支持多種嵌入式操作系統(tǒng),可移植性強(qiáng);

可伸縮的系統(tǒng)架構(gòu),易于擴(kuò)展;

功能豐富,可靈活剪裁;

輕型,資源占用少;

高性能,高可靠性。

  • 缺點(diǎn)

對(duì)圖形設(shè)備的抽象層次太高。

-Qt (Qt for MCUs) -

Qt for MCUs是一個(gè)完整的圖形框架和工具包,包含在微控制器上設(shè)置、開發(fā)和部署GUI所需要的一切。您可以在裸機(jī)或?qū)崟r(shí)操作系統(tǒng)上運(yùn)行應(yīng)用程序。

Qt for MCUs帶有三樣開發(fā)工具,包括一個(gè)配備了完善的代碼編輯器、版本控制等功能的IDE(Qt Creator);以Qt QML語(yǔ)言編寫的幫助從頭開始或基于咸亨UI空間快速設(shè)計(jì)和構(gòu)建應(yīng)用程序的組件WYS|WYG編輯器(Qt Quick Designer);Qt Quick Ultralite 圖形框架提供了豐富的 QML API 集,用于構(gòu)建流暢的 GUI 和渲染引擎。

poYBAGIv7yOAZU0EAAHD-LslCo0272.png
  • 優(yōu)點(diǎn)

復(fù)用您在微控制器上的現(xiàn)有技能; 通過跨設(shè)備(從高端到大眾設(shè)備)的技術(shù)一致性,來降低維護(hù)成本; 在不影響圖形性能的前提下,向微控制器演進(jìn)以降低硬件成本; 將傳統(tǒng)解決方案升級(jí)到現(xiàn)代的跨平臺(tái)圖形工具包。

-emWin-

emWin支持在任何嵌入式系統(tǒng)上創(chuàng)建高效、高質(zhì)量的圖形用戶界面,emWin支持資源受限的微控制器的系統(tǒng),運(yùn)行令人驚嘆的交互界面。

emWin與單任務(wù)和多任務(wù)環(huán)境兼容,可以使用專有的操作系統(tǒng),也可以與任何商業(yè)RTOS兼容。它以C語(yǔ)言源代碼提供,使其成為嵌入式市場(chǎng)的專業(yè)、通用GUI,可用于多種不同的場(chǎng)景。

poYBAGIv7yGAW_a4AAAU_94DCOE090.png
  • 優(yōu)點(diǎn)

創(chuàng)建驚人的圖形與功能強(qiáng)大,易于使用的API 適用于任何顯示器和微控制器 適用于任何ANSI C/C++開發(fā)環(huán)境 體驗(yàn)可靠的圖形解決方案 嵌入式圖形用戶界面解決方案

最后上一張對(duì)比圖,更直觀!

pYYBAGIv7yKAdF2BAABDzl3C9t8045.png

#03 D1哪吒 & LVGL

輕量 的屬性給LVGL帶來了無數(shù)粉絲,在使用各種低配置的小型開發(fā)板時(shí),大部分開發(fā)者都會(huì)第一時(shí)間想到LVGL,這同時(shí)又突出展現(xiàn)出了它的另一個(gè)特點(diǎn) 易移植 。

同樣是開源、精簡(jiǎn)、輕量級(jí),RISC-V和LVGL在設(shè)計(jì)理念上簡(jiǎn)直不謀而合,他們或許就代表著未來十年科技發(fā)展的主流。

目前,全志基于阿里平頭哥C906核設(shè)計(jì)的RISC-V芯片已經(jīng)支持LVGL。秉承著同樣設(shè)計(jì)理念的兩個(gè)網(wǎng)紅黑科技,在全志的芯片上綻放出了奇妙的花火。

在全志在線社區(qū)論壇上,有小伙伴發(fā)布了一篇將LVGL移植到哪吒D1上的帖子,一時(shí)也是引起廣泛討論。

話不多說,直接上鏈接?!?LVGL移植哪吒D1》-https://bbs.aw-ol.com/topic/294/

視頻中使用的是D1哪吒開發(fā)板,配上一塊帶觸摸的7寸MIPI屏幕。可以看到移植的LVGL DEMO在RISC-V指令集的芯片上絲滑運(yùn)行,毫無壓力。雙屏異顯

借助芯片的雙屏異顯功能,D1可以一邊用LVGL做UI交互,另一邊又在解碼播放視頻,很好的解決追劇星人在追劇時(shí)候就難以同時(shí)操作的問題,不會(huì)占用HDMI屏幕輸出需要太多資源的同時(shí),LVGL也很好的幫助了屏幕內(nèi)容在mipi上的絲滑輸出,成功實(shí)現(xiàn)雙屏異顯。

而要在哪吒上把LVGL玩起來也非常簡(jiǎn)單,只需要下載源碼后使用編譯命令編譯源碼:

CC=/xxxx/prebuilt/gcc/linux-x86/riscv/toolchain-thead-glibc/riscv64-glibc-gcc-thead_20200702/bin/riscv64-unknown-linux-gnu-gcc make

然后使用Tina Linux自帶的adb 將demo推到開發(fā)板里,就可以玩起來了。如果沒有MIPI屏幕,使用HDMI顯示器+鼠標(biāo)也是同樣支持的。

當(dāng)然,LVGL可以實(shí)現(xiàn)的遠(yuǎn)不止于此,快快開發(fā)你的腦洞,完成更多的大作吧?。?!

【帶git倉(cāng)庫(kù)的哪吒D1開發(fā)板 LVGL7 源碼】-https://bbs.aw-ol.com/topic/303/-

-End-

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • LVGL
    +關(guān)注

    關(guān)注

    2

    文章

    122

    瀏覽量

    4502
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    【瑞薩RA8D1 LWIP/LVGL評(píng)測(cè)】基于LVGL的JPEG網(wǎng)絡(luò)流播放

    ;g_uart_debug_ctrl, &g_uart_debug_cfg); } ... 3、編譯寫lvgl 線程代碼,具體如下 #include \"lvgl
    發(fā)表于 02-01 22:15

    快速上手!帶你用LVGL工具完成樂鑫科技ESP32-S3 2.8寸串口屏UI開發(fā)!代碼完全開源

    還在為嵌入式顯示界面的開發(fā)而煩惱嗎?配置環(huán)境復(fù)雜、移植LVGL困難、燒錄過程頻頻出錯(cuò)——這些問題我們都懂。今天,我們將手把手帶你走完啟明云端ESP32-S32.8寸串口屏的完整開發(fā)流程,讓你快速實(shí)現(xiàn)
    的頭像 發(fā)表于 10-30 18:04 ?1871次閱讀
    快速上手!帶你用<b class='flag-5'>LVGL</b>工具完成樂鑫科技ESP32-S3 2.8寸串口屏UI開發(fā)!代碼完全<b class='flag-5'>開源</b>!

    重大更新,LVGL有UI編輯器用了,2秒內(nèi)加載,快到飛起!

    憑借對(duì)平臺(tái)的深度適配與輕量化優(yōu)勢(shì),成為圖形界面開發(fā)的最優(yōu)解。LVGL與Linux系統(tǒng)的高度協(xié)同性,完美平衡了開發(fā)效率與硬件資源占用,適配從ARM到X86再到RISC
    的頭像 發(fā)表于 10-21 12:58 ?1584次閱讀
    重大更新,<b class='flag-5'>LVGL</b>有UI編輯器用了,2秒內(nèi)加載,快到飛起!

    睿擎SDK V1.5.0重磅升級(jí):EtherCAT低抖動(dòng),AMP虛擬網(wǎng)卡,LVGL硬件加速,多核調(diào)試等性能大幅提升|產(chǎn)品動(dòng)態(tài)

    )。AMP模式下虛擬網(wǎng)卡驅(qū)動(dòng)支持,雙系統(tǒng)通信更加便利,更完善的Perfetto多核性能調(diào)試工具,AIUVC人臉識(shí)別示例,優(yōu)化LVGL支持硬件加速等。并提供對(duì)應(yīng)的教
    的頭像 發(fā)表于 09-29 17:36 ?1w次閱讀
    睿擎SDK <b class='flag-5'>V</b>1.5.0重磅升級(jí):EtherCAT低抖動(dòng),<b class='flag-5'>AMP</b>虛擬網(wǎng)卡,<b class='flag-5'>LVGL</b>硬件加速,多核調(diào)試等性能大幅提升|產(chǎn)品動(dòng)態(tài)

    lvgl運(yùn)行卡頓,測(cè)試發(fā)現(xiàn)lv_task_handler執(zhí)行時(shí)間過長(zhǎng)是什么原因?

    != tick) { rt_kprintf(&amp;quot;[%d] lvgl : %dmsn&amp;quot;, tick_end, tick_end - tick
    發(fā)表于 09-18 07:20

    基于RTThread nano的LVGL線程卡頓怎么解決?

    ;// LVGL顯示支持 #include \"lv_port_indev.h\" // LVGL的觸屏支持 #include \"gui_guider.h\"
    發(fā)表于 09-09 06:04

    【RA-Eco-RA6M4開發(fā)板評(píng)測(cè)】移植LVGL

    【開發(fā)環(huán)境】 1、mdk 2、mdk下面的lvgl pak安裝包 【前提】 在前面的一篇文章中,我詳細(xì)介紹了如何驅(qū)動(dòng)st7796LCD屏,在其基礎(chǔ)之上進(jìn)行lvgl移植?!綬A-Eco-RA6M4
    發(fā)表于 08-05 12:38

    【創(chuàng)龍TL3562-MiniEVM開發(fā)板試用體驗(yàn)】5、基于幀緩存區(qū)fd的LVGL

    基于幀緩存區(qū)可以很容易實(shí)現(xiàn)數(shù)據(jù)通過顯示控制器(FBDEV)發(fā)送給屏幕。 所以就想進(jìn)行一步實(shí)現(xiàn)移植下LVGL,然后自己嘗試一下在TL3562上移植LVGL,然后發(fā)現(xiàn)Makefile還是挺難寫的,總是
    發(fā)表于 07-31 15:17

    普華基礎(chǔ)軟件亮相2025 RISC-V中國(guó)峰會(huì)

    此前,7月16日至18日,第五屆RISC-V中國(guó)峰會(huì)在上海盛大召開。普華基礎(chǔ)軟件副總經(jīng)理兼戰(zhàn)略研究院院長(zhǎng)張曉先受邀參會(huì),發(fā)表《開源小滿助力RISC-V軟硬協(xié)同生態(tài)發(fā)展》主題演講,分享了開源
    的頭像 發(fā)表于 07-28 16:51 ?1140次閱讀
    普華基礎(chǔ)軟件亮相2025 <b class='flag-5'>RISC-V</b>中國(guó)峰會(huì)

    FPGA與RISC-V淺談

    全球半導(dǎo)體產(chǎn)業(yè)競(jìng)爭(zhēng)格局正在經(jīng)歷深刻變革,物聯(lián)網(wǎng)、邊緣計(jì)算等新興技術(shù)的蓬勃發(fā)展,讓RISC-V憑借其開源、精簡(jiǎn)以及模塊化的靈活優(yōu)勢(shì),日益成為業(yè)界焦點(diǎn),也為全球半導(dǎo)體產(chǎn)業(yè)注入新的活力與挑戰(zhàn)
    發(fā)表于 04-11 13:53 ?661次閱讀
    FPGA與<b class='flag-5'>RISC-V</b>淺談

    觸覺智能RK3506核心板,工業(yè)應(yīng)用之LVGL顯示方案分享

    在如今工業(yè)智能化快速發(fā)展的時(shí)代,工業(yè)HMI的響應(yīng)速度、顯示效果與系統(tǒng)穩(wěn)定性已成為設(shè)備競(jìng)爭(zhēng)力的核心要素。觸覺智能RK3506核心板59元售價(jià),深度融合LVGL開源圖形框架,以2.5秒極速
    的頭像 發(fā)表于 04-02 15:11 ?1069次閱讀
    觸覺智能RK3506核心板,工業(yè)應(yīng)用之<b class='flag-5'>LVGL</b><b class='flag-5'>顯示</b>方案分享

    芯來科技攜手芯芒科技發(fā)布RISC-V CPU系統(tǒng)仿真平臺(tái)

    專業(yè)RISC-V處理器IP及解決方案公司芯來科技與杭州芯芒科技深入合作,共同研發(fā)推出芯來全系列RISC-V CPU系統(tǒng)仿真平臺(tái)。幫助下游SoC和產(chǎn)品開發(fā)團(tuán)隊(duì)基于該仿真平臺(tái)快速構(gòu)建從芯片核心架構(gòu)、整
    的頭像 發(fā)表于 03-19 14:36 ?1705次閱讀

    基于RTThread nano的LVGL線程卡頓是什么原因引起的?

    顯示支持 #include \"lv_port_indev.h\" // LVGL的觸屏支持 #include \"gui_guider.h\"
    發(fā)表于 03-07 06:00

    瑞芯微RK3568正式開放RISC-V核心啦,也支持非對(duì)稱AMP雙系統(tǒng)!

    ,通過ARM與RISC-V的協(xié)同工作,展現(xiàn)出了強(qiáng)大的性能優(yōu)勢(shì),下面一起來看看! “非對(duì)稱AMP”雙系統(tǒng) AMP(Asymmetric Multi-Processing),即非對(duì)稱多處理架構(gòu)?!胺菍?duì)稱
    的頭像 發(fā)表于 02-27 10:36 ?1236次閱讀
    瑞芯微RK3568正式開放<b class='flag-5'>RISC-V</b>核心啦,也支持非對(duì)稱<b class='flag-5'>AMP</b>雙系統(tǒng)!

    RK3506開發(fā)板2秒啟動(dòng)LVGL顯示方案

    LVGL(Light and Versatile Graphics Library)是一個(gè)免費(fèi)的開源圖形庫(kù),旨在為各種微控制器(MCU)和微處理器(MPU)創(chuàng)建美觀的用戶界面(UI)。LVGL可以在
    的頭像 發(fā)表于 02-25 16:53 ?1211次閱讀
    RK3506開發(fā)板2秒啟動(dòng)<b class='flag-5'>LVGL</b><b class='flag-5'>顯示</b>方案