中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

設(shè)計(jì)廣告圖用什么軟件好用有利于seo優(yōu)化的是

設(shè)計(jì)廣告圖用什么軟件好用,有利于seo優(yōu)化的是,做外貿(mào)有哪些網(wǎng)站,網(wǎng)絡(luò)營(yíng)銷(xiāo)思路LVGL (Light and Versatile Graphics Library) 是最流行的免費(fèi)開(kāi)源嵌入式圖形庫(kù),可為任何 MCU、MPU 和顯示類(lèi)型創(chuàng)建漂亮的 UI 嵌入式GUI框架對(duì)比 Features/框架LVGLFlutter-elinuxArkUI(鴻蒙OS)AWTKQTMIniGUIemWinuC/GUI柿餅UI跨平臺(tái)是是鴻蒙OS平臺(tái)是是是是是是設(shè)備…

LVGL?(Light and Versatile Graphics Library) 是最流行的免費(fèi)開(kāi)源嵌入式圖形庫(kù),可為任何 MCU、MPU 和顯示類(lèi)型創(chuàng)建漂亮的 UI

嵌入式GUI框架對(duì)比

Features/框架LVGLFlutter-elinuxArkUI(鴻蒙OS)AWTKQTMIniGUIemWinuC/GUI柿餅UI
跨平臺(tái)鴻蒙OS平臺(tái)
設(shè)備驅(qū)動(dòng)兼容性多種支持強(qiáng)大強(qiáng)大良好良好容易擴(kuò)展強(qiáng)大強(qiáng)大強(qiáng)大
體積大小較大適中適中較大
開(kāi)發(fā)環(huán)境C/C++DartC/C++C/C++C++C/C++C/C++C/C++C/C++
2D/3D圖形2D3D渲染引擎2D/3D2D和3D2D和3D2D2D2D2D
社區(qū)支持與文檔良好非常強(qiáng)大良好良好強(qiáng)大一般良好一般一般
多媒體支持部分部分,可能需額外實(shí)現(xiàn)部分部分部分部分部分部分部分
開(kāi)發(fā)工具鏈支持支持Flutter提供的工具鏈支持支持支持支持支持支持支持
應(yīng)用場(chǎng)景嵌入式設(shè)備、小屏幕設(shè)備設(shè)計(jì)獨(dú)立于硬件需求鴻蒙OS平臺(tái)相關(guān)應(yīng)用嵌入式設(shè)備、大屏幕設(shè)備多平臺(tái)多設(shè)備應(yīng)用嵌入式設(shè)備嵌入式系統(tǒng)等嵌入式設(shè)備嵌入式設(shè)備
許可證/licenseMITBSD-style licenseApache License 2.0私有商業(yè)(需要購(gòu)買(mǎi))、開(kāi)源(GPL/LGPL)私有,部分LGPL商業(yè)(需要購(gòu)買(mǎi))商業(yè)(需要購(gòu)買(mǎi))私有
費(fèi)用/cost免費(fèi)免費(fèi)(開(kāi)源)免費(fèi)(開(kāi)源)收費(fèi)社區(qū)版免費(fèi)、商業(yè)版收費(fèi)部分免費(fèi)/商業(yè)收費(fèi)收費(fèi)收費(fèi)

在嵌入式設(shè)備場(chǎng)景,資源比較受限的情況,從渲染性能、許可費(fèi)用、社區(qū)活躍度等做綜合對(duì)比,LVGL是目前相對(duì)較好的選擇。

LVGL是如何渲染UI的?

LVGL最低配置要求

  • 16、32 或 64 位微控制器或處理器
  • 建議使用 >16 MHz 時(shí)鐘速度
  • 閃存/ROM: > 64 kB 用于非常重要的組件 (> 建議使用 180 kB)
  • RAM:
    • 靜態(tài) RAM 使用量:~2 kB,取決于使用的功能和對(duì)象類(lèi)型
    • 堆: > 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è)幀緩沖區(qū)
  • C99 或更新的編譯器
https://docs.lvgl.io/master/intro/index.html

LVGL 架構(gòu)

在這里插入圖片描述

應(yīng)用程序可以與庫(kù)通信以創(chuàng)建 GUI。它包含一個(gè) HAL(硬件抽象層)接口來(lái)注冊(cè)您的顯示和輸入設(shè)備驅(qū)動(dòng)程序。

LVGL初始化流程

在這里插入圖片描述

  • 調(diào)用lv_init(), 初始化LVGL
  • 實(shí)現(xiàn)顯示設(shè)備驅(qū)動(dòng)的注冊(cè)
  • 實(shí)現(xiàn)輸入設(shè)備驅(qū)動(dòng)的注冊(cè)
  • 實(shí)現(xiàn)tick_thread 和 handler_thread
具體參考: https://docs.lvgl.io/master/get-started/quick-overview.html#add-lvgl-into-your-project

LVGL 渲染鏈路解析

在這里插入圖片描述

在嵌入式系統(tǒng)中,CPU 是控制整個(gè)系統(tǒng)的核心,FrameBuffer 是用于存儲(chǔ)屏幕上的圖像信息的緩沖區(qū),LCD 屏是用于顯示圖像的硬件設(shè)備。LVGL 庫(kù)的底層原理是通過(guò) CPU、FrameBuffer 和 LCD 屏之間的協(xié)作實(shí)現(xiàn)圖形界面的顯示和交互。

具體來(lái)說(shuō),當(dāng)應(yīng)用程序需要顯示圖形界面時(shí),LVGL 庫(kù)會(huì)調(diào)用底層驅(qū)動(dòng)程序來(lái)初始化 FrameBuffer 緩沖區(qū),并將緩沖區(qū)中的圖像信息傳遞給 LCD 屏進(jìn)行顯示。此時(shí),CPU 會(huì)持續(xù)不斷地將應(yīng)用程序中的圖形繪制指令傳遞給 LVGL 庫(kù),LVGL 庫(kù)則將這些指令轉(zhuǎn)換為對(duì) FrameBuffer 緩沖區(qū)的操作,并通過(guò)底層驅(qū)動(dòng)程序?qū)⒉僮鱾鬟f給 LCD 屏進(jìn)行顯示。

同時(shí),LVGL 庫(kù)還會(huì)通過(guò)底層驅(qū)動(dòng)程序來(lái)監(jiān)測(cè)設(shè)備上的事件,如按鍵事件、觸摸事件等,并將事件信息傳遞給 LVGL 庫(kù)中的事件處理函數(shù)進(jìn)行處理。在事件處理函數(shù)中,LVGL 庫(kù)會(huì)根據(jù)事件類(lèi)型和事件發(fā)生的位置等信息來(lái)進(jìn)行相應(yīng)的操作,如改變窗口的位置、更新按鈕的狀態(tài)等。這些操作也是通過(guò)對(duì) FrameBuffer 緩沖區(qū)的操作來(lái)實(shí)現(xiàn)的。

此外,LVGL 庫(kù)中的對(duì)象(如窗口、按鈕等)需要?jiǎng)討B(tài)分配內(nèi)存來(lái)存儲(chǔ)其屬性和狀態(tài)信息。LVGL 庫(kù)通過(guò)內(nèi)存池的方式來(lái)管理對(duì)象的內(nèi)存分配和釋放,提高了內(nèi)存的使用效率。

CPU、FrameBuffer 和 LCD 屏之間的協(xié)作是 LVGL 庫(kù)實(shí)現(xiàn)圖形界面的關(guān)鍵。CPU 通過(guò)調(diào)用 LVGL 庫(kù)中的函數(shù)來(lái)操作 FrameBuffer 緩沖區(qū),而 LVGL 庫(kù)則通過(guò)底層驅(qū)動(dòng)程序來(lái)將緩沖區(qū)中的圖像信息傳遞給 LCD 屏進(jìn)行顯示。

補(bǔ)充知識(shí):Linux FrameBuffer驅(qū)動(dòng)框架

LCD控制鏈路

在這里插入圖片描述

FrameBuffer驅(qū)動(dòng)框架

在這里插入圖片描述

幀緩沖實(shí)際上是內(nèi)存中的一塊物理內(nèi)存,驅(qū)動(dòng)程序控制顯示控制器將這塊內(nèi)存中的數(shù)據(jù)傳輸?shù)斤@示設(shè)備上,應(yīng)用程序只需要向這塊內(nèi)存寫(xiě)入圖像數(shù)據(jù),顯示控制器就會(huì)將圖像數(shù)據(jù)傳輸?shù)斤@示設(shè)備上,完成圖像的顯示。

總結(jié)

LVGL 是目前主流的嵌入式GUI框架,可以通過(guò)它很便捷的開(kāi)發(fā)應(yīng)用層的交互頁(yè)面,通過(guò)深入學(xué)習(xí)底層原理能夠更好的理解LCD屏幕和FrameBuffer和驅(qū)動(dòng)之間的關(guān)系,可以為我們后續(xù)優(yōu)化LVGL顯示性能打下基礎(chǔ)。

淺析嵌入式GUI框架-LVGL - 知乎 (zhihu.com)

http://m.risenshineclean.com/news/64409.html

相關(guān)文章:

  • 網(wǎng)站的站內(nèi)結(jié)構(gòu)錨文本是如何做的seo指什么
  • 做電影網(wǎng)站模板教學(xué)設(shè)計(jì)免費(fèi)注冊(cè)個(gè)人網(wǎng)站不花錢(qián)
  • java網(wǎng)站開(kāi)發(fā)是干什么安徽網(wǎng)絡(luò)關(guān)鍵詞優(yōu)化
  • 工信局網(wǎng)站備案查詢溫州seo網(wǎng)站推廣
  • 中國(guó)企業(yè)網(wǎng)銀怎么轉(zhuǎn)賬seo推廣軟
  • 石家莊專(zhuān)業(yè)網(wǎng)站設(shè)計(jì)電話搜狗競(jìng)價(jià)推廣效果怎么樣
  • 網(wǎng)站做下載功能網(wǎng)站代搭建維護(hù)
  • 滄州有沒(méi)有做網(wǎng)站的國(guó)外網(wǎng)站制作
  • 怎樣進(jìn)行站點(diǎn)優(yōu)化seo高端培訓(xùn)
  • 什么做網(wǎng)站做個(gè)多少錢(qián)啊排名優(yōu)化seo
  • wordpress用windows會(huì)慢寧波seo關(guān)鍵詞優(yōu)化報(bào)價(jià)
  • 自己做的網(wǎng)站做登錄網(wǎng)店運(yùn)營(yíng)與推廣
  • 做競(jìng)彩網(wǎng)站代理犯法么站長(zhǎng)統(tǒng)計(jì)app軟件下載
  • 個(gè)人網(wǎng)站可以做企業(yè)宣傳個(gè)人如何做seo推廣
  • 吉林seo刷關(guān)鍵詞排名優(yōu)化進(jìn)一步優(yōu)化
  • 想做程序員需要學(xué)什么黑帽seo技術(shù)
  • 廈門(mén)建設(shè)局網(wǎng)站改到哪網(wǎng)站優(yōu)化軟件
  • 網(wǎng)站的服務(wù)器選擇seo品牌優(yōu)化百度資源網(wǎng)站推廣關(guān)鍵詞排名
  • ui設(shè)計(jì)技術(shù)培訓(xùn)學(xué)校手機(jī)管家一鍵優(yōu)化
  • 網(wǎng)站頁(yè)面建議seo優(yōu)化是什么職業(yè)
  • 做網(wǎng)站建設(shè)需要多少錢(qián)網(wǎng)絡(luò)營(yíng)銷(xiāo)模式
  • 優(yōu)質(zhì)網(wǎng)站的衡量標(biāo)準(zhǔn)本地網(wǎng)絡(luò)seo公司
  • 烏審旗建設(shè)局網(wǎng)站seo咨詢價(jià)格找推推蛙
  • 福州做網(wǎng)站長(zhǎng)沙seo排名扣費(fèi)
  • wordpress 論壇模版南京seo按天計(jì)費(fèi)
  • 如果在網(wǎng)站做推廣連接公司關(guān)鍵詞seo
  • 陜西省人民政府網(wǎng)百度推廣關(guān)鍵詞優(yōu)化
  • 全功能電子商務(wù)網(wǎng)站建設(shè)百度推廣關(guān)鍵詞怎么優(yōu)化
  • 蘭州網(wǎng)站開(kāi)發(fā)百度推廣優(yōu)化工具
  • 長(zhǎng)沙 php企業(yè)網(wǎng)站系統(tǒng)銷(xiāo)售方案怎么做