91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

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

GUI xTurbo讓你可以只用片內(nèi)單緩沖驅動RGB LCD

恩智浦MCU加油站 ? 來源:恩智浦MCU加油站 ? 2026-02-09 09:35 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在當今MCU嵌入式系統(tǒng)中,需要高端GUI顯示的場景越來越多。當產(chǎn)品中使用較高分辨率的RGB LCD時,傳統(tǒng)的Ping-pong buffer方案使得對RAM空間的要求非常高。這時MCU 片內(nèi)RAM已經(jīng)不夠用,所以往往需要再搭配使用一個片外的RAM。不管是外掛PSRAM還是SDRAM,都會讓產(chǎn)品BOM高不少。尤其是當今SDRAM的價格已經(jīng)漲飛天,如果能只使用單緩沖放在片內(nèi)RAM,那實在是太棒了!我們開發(fā)了GUI xTurbo - eSingle Buffer,讓你拋棄SDRAM(或PSRAM),進一步降低BOM。在嵌入式系統(tǒng)中,圖形界面(GUI)的流暢度往往決定了產(chǎn)品的使用體驗。然而,許多開發(fā)者在實際項目中都會遇到一個常見問題:GUI 刷新速度看起來很慢,甚至出現(xiàn)明顯的畫面撕裂。造成這些現(xiàn)象的根本原因,通常并不是 MCU 性能不足,而是LCD 與顯存刷新機制之間的同步問題。

為了解決上述痛點,GUI xTurbo 提出了一個基于單緩沖的全新優(yōu)化思路,在避免撕裂的同時進一步降低資源占用,如下圖。傳統(tǒng)方案通常需要使用Ping-pong Buffer(雙緩沖)如圖1,或者Multi Buffer(一般是三緩沖)如圖2。從而在LCD完成當前幀刷新后再輸出下一幀。

Ping-pong Buffer : Buffer A作為顯示Buffer,Buffer B作為離屏Buffer。當Buffer B渲染完成,并且Buffer A已經(jīng)顯示完成之后。顯示Buffer切到Buffer B,離屏Buffer切到Buffer A。

2b24237a-022d-11f1-90a1-92fbcf53809c.png

圖1 Ping-pong Buffer在片外RAM

Multi Buffer:在Ping-pong Buffer的基礎上。Buffer A作為顯示Buffer,Buffer B和Buffer C都作為離屏buffer。

2b81591e-022d-11f1-90a1-92fbcf53809c.png

圖2 Multi Buffer在片外RAM

因此常規(guī)應用當中,MCU需要外擴一個片外RAM來存放幀緩沖。例如RGB565的800 x 480的屏,一個full-size buffer需要的RAM大小為800 x 480 x 2 = 768000 Bytes。所以,如果使用雙緩沖技術,則需要1.5 Mbytes大小的RAM。這時通常在IMXRT系列(如RT1040或RT1060)上可以外擴PSRAM或SDRAM。

那么為了降低BOM成本,能否僅僅使用單個Buffer放在片內(nèi)的RAM上如圖3,并且防止撕裂的產(chǎn)生?

2bdfe970-022d-11f1-90a1-92fbcf53809c.png

圖3 Single Buffer在OCRAM

先從TFT LCD顯示器本身的畫面掃描刷新原理說起。TFT LCD的圖像是由像素點組成的,這些像素點組成陣列。整個屏幕刷新一遍稱為一個“幀”。圖像的每一幀從屏幕的第一行開始刷新,然后依次向下刷新每一行。每一行的像素會在一個很短的時間內(nèi)被更新。

2c3a4dac-022d-11f1-90a1-92fbcf53809c.png

圖4 在800 x 480分辨率的屏幕上顯示2個“NXP”圖標

傳統(tǒng)方案使用ping-pong buffer防止撕裂,是讓畫面的顯示和渲染分別在不同的幀buffer上進行。顯示則是eLCDIF把RAM上的數(shù)據(jù)發(fā)送到LCD上,而渲染則是MCU往RAM寫數(shù)據(jù)。所以即使只使用Single Buffer,只要數(shù)據(jù)在當前像素刷新前寫入到RAM,就可以避免撕裂。

比如,在當前畫面中我們需要更新2個”NXP”的圖標,分別在0~240行和240行~480行。當eLCDIF刷新到240行后,把第一個圖標寫入RAM,如圖5。隨后當eLCDIF刷新到480行后,再把第二個圖標寫入RAM,如圖6。

2c93017c-022d-11f1-90a1-92fbcf53809c.png

圖5 當eLCDIF刷新到240行后,把第一個圖標寫入RAM

2ceba598-022d-11f1-90a1-92fbcf53809c.png

圖6 當eLCDIF刷新到480行后,把第二個圖標寫入RAM

我們基于LVGL實現(xiàn)了這個思路。在RT1060-EVK上,使用800 x 480分辨率的RGB LCD。我們把Single Buffer放在片內(nèi)的768KB OCRAM上。并且基于針對IMXRT的專門優(yōu)化,在LVGL9 Benchmark的測試如圖7:

2d4d2ca0-022d-11f1-90a1-92fbcf53809c.png

圖7 eSingle Buffer性能對比Ping-pong Buffer

通過圖7,基于同樣的代碼優(yōu)化,可以看到eSingle Buffer的渲染速度強于Ping-pong Buffer。得益于Single Buffer放置在片內(nèi)OCRAM,而OCRAM讀寫性能強于SDRAM。 并且不再需要像Ping-pong Buffer一樣,等待當前幀顯示完。并且在GUI-Guider-1.10.0中已經(jīng)集成該功能。

傳統(tǒng) GUI 系統(tǒng)為了避免 RGB LCD 刷新帶來的撕裂問題,普遍依賴雙緩沖或多緩沖機制。然而這些方案雖然有效,卻不可避免地帶來更高的顯存占用與帶寬壓力。GUI xTurbo 的單緩沖優(yōu)化方案,則從刷新機制本身入手,以更輕量的方式實現(xiàn)流暢顯示,不僅降低了資源需求,也為中低端 MCU 的 GUI 性能釋放了更大潛力。

隨著顯示分辨率不斷提升、用戶對界面流暢度的要求日益增長,如何在有限硬件條件下實現(xiàn)更高效的 GUI,將成為越來越重要的課題。基于單緩沖的創(chuàng)新方法,為業(yè)界提供了一條新的思路,也為未來嵌入式顯示技術的發(fā)展打開了更多可能性。

下篇會介紹如何在GUI-Guider中使用該功能。

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

    關注

    5198

    文章

    20434

    瀏覽量

    333883
  • SDRAM
    +關注

    關注

    7

    文章

    457

    瀏覽量

    57676
  • lcd
    lcd
    +關注

    關注

    36

    文章

    4615

    瀏覽量

    177179
  • RGB
    RGB
    +關注

    關注

    4

    文章

    831

    瀏覽量

    61914

原文標題:SDRAM價格漲飛天?GUI xTurbo 讓你可以只用片內(nèi)單緩沖驅動RGB LCD

文章出處:【微信號:NXP_SMART_HARDWARE,微信公眾號:恩智浦MCU加油站】歡迎添加關注!文章轉載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    GUI Guider全新優(yōu)化方案GUI xTurbo-VeloRender初體驗:基于i.MX RT平臺的LVGL渲染能力突破

    引言 在嵌入式GUI開發(fā)領域,圖形界面的渲染性能直接決定了用戶體驗的流暢度與產(chǎn)品競爭力。針對i.MX RT系列的開發(fā)需求,恩智浦在2025年隆重推出全新的性能優(yōu)化方案?- GUI xTurbo技術
    的頭像 發(fā)表于 07-10 09:21 ?3739次閱讀
    <b class='flag-5'>GUI</b> Guider全新優(yōu)化方案<b class='flag-5'>GUI</b> <b class='flag-5'>xTurbo</b>-VeloRender初體驗:基于i.MX RT平臺的LVGL渲染能力突破

    DLP4710LC只用UV光源,demo可以進行100%驅動么,該如何接?

    只用UV光源,demo可以進行100%驅動么,該如何接,demo上是rgb三顆光源。 另外,只用uv光源的話,固件應該用哪個,有鏈接么
    發(fā)表于 02-21 17:00

    請給一個430驅動蜂鳴器的程序,只用它叫就可以

    請給一個430驅動蜂鳴器的程序,只用它叫就可以了?。。。。。。。?!
    發(fā)表于 11-25 10:46

    移植gui替換lcd驅動怎么實現(xiàn)?

    是否就是我要編寫一個lcd驅動驅動的函數(shù) 要和原來的函數(shù)實現(xiàn)一模一樣的功能最好連參數(shù)都一樣 (如果不一樣就要修改gui的調用以及gui的聲明
    發(fā)表于 08-26 08:00

    iMXRT1064的TFT RGB LCD ESD問題如何處理?

    時,LCD 變?yōu)榘咨⒈3衷摖顟B(tài)。如果 LCDLCD 連接器上取下并再次插入,則無需重置電路板,ESD 問題就會消失,我們可以看到 GUI
    發(fā)表于 04-18 06:29

    基于嵌入式Linux的TFT LCD IP及驅動的設計

    基于嵌入式Linux 的TFT LCD IP 及驅動的設計:Nios II 處理器在SDRAM 中開辟幀緩沖(Frame buffer),可以
    發(fā)表于 03-18 17:48 ?4次下載

    大型LCD顯示緩沖驅動

    大型LCD顯示緩沖驅動
    發(fā)表于 09-15 11:54 ?776次閱讀
    大型<b class='flag-5'>LCD</b>顯示<b class='flag-5'>緩沖</b><b class='flag-5'>驅動</b>器

    RGB LED背光驅動電路實例

    美國國家半導體公司的LP5520 是一款針對小型尺寸的LCD RGB LED 背光驅動芯片。它可以直接驅動4 組~ 5組
    發(fā)表于 05-20 11:09 ?395次下載
    <b class='flag-5'>RGB</b> LED背光<b class='flag-5'>驅動</b>電路實例

    AD7760:24位、2.5 MSPS、100 dB,Σ-Δ ADC,內(nèi)置內(nèi)緩沖 數(shù)據(jù)手冊

    AD7760:24位、2.5 MSPS、100 dB,Σ-Δ ADC,內(nèi)置內(nèi)緩沖 數(shù)據(jù)手冊
    發(fā)表于 03-20 17:19 ?11次下載
    AD7760:24位、2.5 MSPS、100 dB,Σ-Δ ADC,內(nèi)置<b class='flag-5'>片</b><b class='flag-5'>內(nèi)</b><b class='flag-5'>緩沖</b> 數(shù)據(jù)手冊

    LCD MCU模式和RGB模式

    應用比較多的就是MUC模式和RGB模式,區(qū)別有以下幾點:1.MCU接口:會解碼命令,由timing generator產(chǎn)生時序信號,驅動COM和SEG驅器。RGB接口:在寫LCD re
    發(fā)表于 10-28 09:50 ?19次下載
    <b class='flag-5'>LCD</b> MCU模式和<b class='flag-5'>RGB</b>模式

    緩沖與雙緩沖有哪些不同之處呢

    一般用OpenGL繪圖都是用雙緩沖緩沖一般只用于顯示單獨的一副非動態(tài)的圖像。
    的頭像 發(fā)表于 02-02 08:48 ?5943次閱讀

    緩沖方案驅動大型LCD

    本應用筆記介紹了如何緩沖LCD驅動器(如MAX7231系列)的三層背板驅動輸出,以提高容性驅動能力。這使得大型
    的頭像 發(fā)表于 02-09 11:54 ?1473次閱讀
    <b class='flag-5'>緩沖</b>方案<b class='flag-5'>驅動</b>大型<b class='flag-5'>LCD</b>

    TFT-LCD電容觸摸屏模塊(RGB接口)驅動時序設計

    上兩篇已經(jīng)總結和分享了RGB接口TFT-LCD觸摸屏的相關內(nèi)容。本篇使用Verilog語言實現(xiàn)RGB驅動時序。
    的頭像 發(fā)表于 05-25 12:47 ?5290次閱讀
    TFT-<b class='flag-5'>LCD</b>電容觸摸屏模塊(<b class='flag-5'>RGB</b>接口)<b class='flag-5'>驅動</b>時序設計

    GD32470i-LVGL-WSVGA-LCD GUI解決方案

    GD32F470i-LVGL-WSVGA-LCD Demo Suites是MCU驅動高分辨率LCD(RGB接口,1024*600 WSVGA)進行設計
    的頭像 發(fā)表于 09-08 13:55 ?2331次閱讀
    GD32470i-LVGL-WSVGA-<b class='flag-5'>LCD</b> <b class='flag-5'>GUI</b>解決方案

    GUI GUIDER中如何啟用eSingle Buffer

    在嵌入式 GUI 開發(fā)中,“跑不快”“卡頓”“撕裂”幾乎是所有工程師都踩過的坑。尤其是在 RGB LCD 這種持續(xù)掃描的顯示接口下,當顯存刷新與 LCD 掃描不同步時,畫面撕裂幾乎不可
    的頭像 發(fā)表于 02-09 09:43 ?375次閱讀
    在<b class='flag-5'>GUI</b> GUIDER中如何啟用eSingle Buffer