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

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

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

采用FPGA控制實(shí)現(xiàn)全彩LED顯示系統(tǒng)的設(shè)計(jì)

電子設(shè)計(jì) ? 來源:郭婷 ? 作者:電子設(shè)計(jì) ? 2018-12-30 10:20 ? 次閱讀

1 引言

LED 的發(fā)展已過了幾十年了,它現(xiàn)在的技術(shù)也相當(dāng)成熟了。它有很寬的可視角,并且能夠 顯示圖像、數(shù)字、視頻,還能夠通過紅綠籃三種LED 組合成任一顏色系統(tǒng),但是不推薦在 小顯示屏上顯示視頻。典型應(yīng)用是在商場(chǎng)、高速公路、大型體育場(chǎng)和白天日照下的舞臺(tái)。

我們都知道,由PN 結(jié)構(gòu)成的LED 需要用直流電源驅(qū)動(dòng)發(fā)出其顏色,改變通過PN 結(jié)上 的電流達(dá)到顯示顏色亮度的變化。每個(gè)顯示板上的LED 都是被恒流源產(chǎn)生的可控電流單獨(dú) 直接控制,雖然一個(gè)LED 顏色灰度容易產(chǎn)生,但是大量LED 組成的LED 顯示屏就需要一個(gè) 非常復(fù)雜的控制系統(tǒng)來控制。本文的目的是實(shí)現(xiàn)這個(gè)基于FPGA 的具有高刷新率的全彩LED 顯示控制系統(tǒng)。本文介紹了LED 顯示系統(tǒng)中三基色發(fā)光管同時(shí)產(chǎn)生灰度的工作原理,也描述 了基于FPGA 的 LED 顯示系統(tǒng)模型在細(xì)節(jié)上的實(shí)現(xiàn)。

2 LED 顯示面板的工作原理

根據(jù)驅(qū)動(dòng) LED 的工作原理LED 顯示屏有靜態(tài)、虛擬、掃描之分,那么對(duì)應(yīng)的LED 顯示控制系統(tǒng)也不同。本文介紹的是適合掃描屏的LED 控制系統(tǒng)。

目前,許多LED 顯示面陣板是利用8*8 的LED 矩陣塊拼接起來,這有益于PCB 的設(shè) 計(jì)和節(jié)省空間,在本文的研究中就是使用這樣的LED 面陣板[3]。如圖1 所示,由8 塊8*8 的矩陣塊組成,三色LED 點(diǎn)陣?yán)妹啃械年帢O作為公共端,行的選通是通過3-8 譯碼器驅(qū) 動(dòng)NPN 三極管來控制的,并且任一時(shí)刻只有一行被Ri 選通;每列有3 路輸入信號(hào)Rc、Gc、 Bc 分別單獨(dú)控制每列的紅、綠、藍(lán)LED,每種顏色有8 個(gè)8 位移位寄存器(74HC595)提 供恒流去控制列。為了便于讀圖,在圖中沒畫出LED 和驅(qū)動(dòng)芯片間的限流電阻

采用FPGA控制實(shí)現(xiàn)全彩LED顯示系統(tǒng)的設(shè)計(jì)

很明顯,能得到的顏色值僅僅是紅、綠、藍(lán)三種顏色組成的,顏色灰度實(shí)際上是依靠改 變顏色亮度值產(chǎn)生的,顏色亮度的控制是通過驅(qū)動(dòng)LED 像素點(diǎn)在一周期內(nèi)總的導(dǎo)通時(shí)間來 決定的。為了產(chǎn)生顏色灰度需要對(duì)LED 像素值進(jìn)行重新分配,這需要在控制系統(tǒng)里實(shí)現(xiàn)對(duì) 同一位面的數(shù)據(jù)進(jìn)行組合,然后發(fā)送到LED 面陣板。

3 基于可編程邏輯器件的LED 顯示控制器

LED 顯示屏為了獲得更高的亮度等級(jí),顯示控制器必須能夠在一個(gè)可接受的周期內(nèi)刷 新整個(gè)LED 屏,如果這個(gè)不能達(dá)到,閃變效應(yīng)就會(huì)影響觀眾。微處理器微控制器在普通 的控制方面是很強(qiáng)的芯片,但是它不太適合控制帶合適亮度等級(jí)和高刷新率的LED 顯示屏。 所以使用基于可編程邏輯器件的控制器來實(shí)現(xiàn)是一個(gè)很好的選擇 [4]。

如圖 2 所示的結(jié)構(gòu),LED 顯示控制由器由LEDINTERFACE、BUFFERUPDATA 和 VIDEORAM 模塊組成[5]。LEDINTERFACE 和BUFFERUPDATA 兩個(gè)模塊共用一個(gè)SRAM 存儲(chǔ)器,它類似于一雙通道存儲(chǔ)器。以下幾個(gè)部分詳細(xì)說明這幾個(gè)模塊。

采用FPGA控制實(shí)現(xiàn)全彩LED顯示系統(tǒng)的設(shè)計(jì)

3.1 LEDINTERFACE 模塊

LEDINTERFACE 模塊是負(fù)責(zé)控制圖1 所示的LED 點(diǎn)陣的顏色顯示,如圖3 所示為 LEDINTERFACE 模塊的狀態(tài)機(jī)的狀態(tài)圖。它能夠很方便的表現(xiàn)狀態(tài)轉(zhuǎn)換和數(shù)據(jù)流動(dòng),最重 要的是一個(gè)狀態(tài)圖能夠簡(jiǎn)單的修改成VHDL 程序。

采用FPGA控制實(shí)現(xiàn)全彩LED顯示系統(tǒng)的設(shè)計(jì)

從這圖中看出,LEDINTERFACE 模塊的初始化狀態(tài)是INIT_SIGNALS,它初始化所有 涉及到LED 顯示屏上的信號(hào),然后準(zhǔn)備轉(zhuǎn)換到SET_PIXEL_ADDRESS 狀態(tài),這個(gè)狀態(tài)計(jì) 算輸出數(shù)據(jù)緩沖器中的地址(VIDEORAM 的地址),在READ_PIXEL 狀態(tài)讀出數(shù)據(jù)。注意, READ_PIXEL 不僅是取數(shù)據(jù)而且決定當(dāng)前的LED 狀態(tài)是否需要去置位或清除有關(guān)像素?cái)?shù)據(jù) 的亮度值和當(dāng)前位面。READ_PIXEL 狀態(tài)利用一個(gè)PIXCOLOR 表,如表1 所示,這個(gè)表存 儲(chǔ)的是像素顏色值和亮度的關(guān)聯(lián)數(shù)據(jù)。用作重新得到LED 狀態(tài)的參量是像素?cái)?shù)據(jù)DataR、 DataG、DataB、Plane,在不增加顯示緩沖區(qū)的情況下,把一個(gè)像素的顏色值直接轉(zhuǎn)換成LED 的亮度等級(jí),不僅是一個(gè)簡(jiǎn)單的方法,而且相比較以前的方法能減少硬件復(fù)雜度和存儲(chǔ)器的 使用。

下面舉一像素顏色轉(zhuǎn)換的例子,說明這個(gè)方法的工作過程。例如首先位面值是‘0’,1 個(gè)點(diǎn)的像素值是是(4,0,2),分別是RED,GREEN,BLUE,在READ_PIXEL 期間,這 些像素值同時(shí)從VIDEORAM 中取出存到DataInR,DataInG,DataInB,再通過查表1 可以 得到,位面值為‘0’時(shí)的LED 狀態(tài)(RI,GI,BI)即第PIXCOLORE 第一位(1,0,1); 位面值是‘1’時(shí)即第二位(1,0,1);位面值‘3’時(shí)即第三位(1,0,0)。很顯然,32 個(gè)位面值都取完后,這個(gè)像素點(diǎn)的RGB 發(fā)光管在這個(gè)周期的導(dǎo)通時(shí)間分別是4/32,0/32, 2/32,實(shí)際上由于LED 面板是1/8 掃描的,RGB 發(fā)光管的導(dǎo)通時(shí)間分別是4/256,0/256, 2/256,這個(gè)過程產(chǎn)生了LED 的不同灰度[6]。

采用FPGA控制實(shí)現(xiàn)全彩LED顯示系統(tǒng)的設(shè)計(jì)

一旦 R、G、B 狀態(tài)定下來,狀態(tài)機(jī)的下兩個(gè)狀態(tài)ACTIVE_CLK 和INACTIVE_CLK 把 RDi、GDi、BDi 里的數(shù)據(jù)移位到LED 面板上,這些操作被重復(fù)直到當(dāng)前所有LED 數(shù)據(jù)分 配完,重復(fù)次數(shù)由一個(gè)計(jì)數(shù)器控制,計(jì)數(shù)器的最大值是LED 面板每行的LED 數(shù)。

當(dāng)一行所有的 LED 數(shù)據(jù)分配完成后,狀態(tài)機(jī)進(jìn)入OUT_ROW_BUS 狀態(tài),激活LED 顯 示面板的當(dāng)前行,并更新cROW 指向下一行,DELAY 狀態(tài)是為了能夠在退出更新狀態(tài)以前, 在掃描延時(shí)的控制下使能行一段周期。多路掃描速率由SCAN_DELAY 控制,在更新行期間 (cROW=cROW+1),如果cROW 小于8,則繼續(xù)回到SET_PIXEL_ADDRESS 狀態(tài)開始掃描 下一行。另外,,如果8 行全部掃描完成,它將進(jìn)到ADVANCE_PLANE 狀態(tài)。從這個(gè)狀態(tài) 圖可以看出,顏色位面是32 個(gè),總共能夠顯示的顏色是32*32*32=32768 色。

3.2 BUFFERUPDATA 模塊

BUFFERUPDATA 模塊是作視頻源信號(hào)和VIDEOSRAM 的接口部分。BUFFERUPDATA 設(shè)計(jì)了只接收24 位RGB 數(shù)據(jù)格式的信號(hào),這種格式的信號(hào)可以很容易的從標(biāo)準(zhǔn)的視頻源 信號(hào)轉(zhuǎn)換過來,且這種轉(zhuǎn)換模塊需要帶數(shù)據(jù)緩沖區(qū)。

除了24 位顏色數(shù)據(jù)總線,BUFFERUPDATA 模塊還增加了2 個(gè)信號(hào):RDB_FULL 和 RGB_RD。RGB_FULL 是指示RGB 視頻源緩沖區(qū)中至少有一個(gè)像素值可以讀取, BUFFERUPDATA 模塊去使能RGB_RD 信號(hào),然后通過24 位數(shù)據(jù)總線去讀取視頻源緩沖區(qū) 中的值。如圖3 所示,用有限狀態(tài)機(jī)來描述這個(gè)模塊。

采用FPGA控制實(shí)現(xiàn)全彩LED顯示系統(tǒng)的設(shè)計(jì)

從圖 3 可以看出,這個(gè)BUFFERUPDATA 模塊的初始狀態(tài)是IDLE,所有有關(guān)信號(hào)都在 這個(gè)狀態(tài)被初始化,并且檢測(cè)RGB_FULL 信號(hào)狀態(tài);從IDLE 狀態(tài)到ACF_RD 是通過 RGB-FULL 信號(hào)來激勵(lì)的;在ACT_RD 和INACT_RD 狀態(tài)為了得到RGB 數(shù)據(jù)強(qiáng)制 BUFFERUPDATA 模塊產(chǎn)生RGB-RD 信號(hào)。RGB-RD 有效的時(shí)間是DELAY 的值來控制的, DELAY 的值是在ACD-RD 狀態(tài)重復(fù)的時(shí)鐘周期數(shù)。

采用FPGA控制實(shí)現(xiàn)全彩LED顯示系統(tǒng)的設(shè)計(jì)

接收完數(shù)據(jù)后,BUFFERUPDATA 模塊沒有立即把數(shù)據(jù)存到VIDEORAM 中,而是檢查 MemBusy 信號(hào)的狀態(tài),為了保證VIDEORAM 模塊可操作,即沒有被LEDINTERFACE 模 塊占用;當(dāng)MemBusy 信號(hào)無效時(shí),BUFFERUPDATA 模塊就把得到的RGB 數(shù)據(jù)存到相應(yīng) 的VIDEORAM 地址中,每個(gè)像素值的讀取/存儲(chǔ)過程的最終狀態(tài)是回到IDLE 狀態(tài)。

3.3 VIDEORAM 模塊的結(jié)構(gòu)

前面提到,VIEDORAM 模塊是LEDINTERFACE 模塊和BUFFERUPDATA 模塊和共用 模塊。實(shí)際上一個(gè)雙端口RAM 是很容易得到的,這個(gè)模塊可能使用一個(gè)靜態(tài)RAM 來實(shí)現(xiàn)。

在FPGA 里只需綜合相對(duì)簡(jiǎn)單的SRAM 的接口模塊和另外兩個(gè)模塊,這個(gè)接口模塊即 VIDEORAM 模塊,事實(shí)上這不是一個(gè)真正的雙端口模塊。如圖4 所示為VIDEORAM 內(nèi)部 結(jié)構(gòu)圖。很容易看出,這個(gè)模塊由以下幾個(gè)部分組成:一個(gè)2 選1 的8 位地址選擇器、一個(gè) 24 位雙向三態(tài)數(shù)據(jù)總線,一個(gè)2 選1 的Wr 信號(hào)選擇器。

4 FPGA 的功能實(shí)現(xiàn)

FPGA內(nèi)部寄存器資源比較豐富,適合做同步時(shí)序電路較多的設(shè)計(jì)。FPGA是選用Xilinx 公司的有5萬門的XC2S50,它有1728個(gè)邏輯單元(LC),384 個(gè)可配置邏輯快( CLB) , 32Kbit 的塊RAM, 176 個(gè)可用的I/O 口。以上的幾個(gè)功能模塊都是在Xilinx 的ISE 平臺(tái)上實(shí)現(xiàn)的, 三個(gè)模塊共消耗62%的資源[7]。

5 結(jié)束語

提出了一種基于FPGA 的LED 掃描屏控制系統(tǒng)的實(shí)現(xiàn)方案,通過 硬件和軟件的輔助設(shè)計(jì),完全實(shí)現(xiàn)了對(duì)LED 顯示屏的掃描控制?;贔PGA 的硬件設(shè)計(jì)大 大降低了電路系統(tǒng)的復(fù)雜性,提高了整個(gè)系統(tǒng)的開發(fā)效率。


聲明:本文內(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)投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1629

    文章

    21738

    瀏覽量

    603459
  • led
    led
    +關(guān)注

    關(guān)注

    242

    文章

    23278

    瀏覽量

    660938
  • 芯片
    +關(guān)注

    關(guān)注

    455

    文章

    50818

    瀏覽量

    423714
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    低功耗全彩LED顯示系統(tǒng)的節(jié)能設(shè)計(jì)

     LED全彩顯示屏,由于面積大、播放時(shí)間長(zhǎng),其耗電量是客戶關(guān)注的一項(xiàng)關(guān)鍵指標(biāo)。降低顯示屏能耗是LED顯示屏技術(shù)一個(gè)重要的發(fā)展方向。   
    發(fā)表于 06-22 11:45 ?1922次閱讀
    低功耗<b class='flag-5'>全彩</b><b class='flag-5'>LED</b><b class='flag-5'>顯示</b>屏<b class='flag-5'>系統(tǒng)</b>的節(jié)能設(shè)計(jì)

    基于網(wǎng)口傳輸?shù)?b class='flag-5'>LED同步屏控制系統(tǒng)及其FPGA實(shí)現(xiàn)

    【摘要】:介紹一種以FPGA為核心,基于網(wǎng)口傳輸?shù)?b class='flag-5'>全彩高灰度同步LED顯示控制系統(tǒng)的設(shè)計(jì)方法。該設(shè)計(jì)改變傳統(tǒng)設(shè)計(jì)中低效高成本的信號(hào)采集和傳
    發(fā)表于 04-24 10:04

    fpga控制***全彩rgb點(diǎn)陣LED

    fpga控制***全彩rgb點(diǎn)陣LED
    發(fā)表于 07-05 14:58

    全彩LED顯示控制器的FPGA設(shè)計(jì)的VHDL代碼

    全彩LED顯示控制器的FPGA設(shè)計(jì)的VHDL代碼,不勝感激?。?!
    發(fā)表于 11-14 01:57

    如何利用ARM和FPGA設(shè)計(jì)全彩獨(dú)立視頻LED系統(tǒng)?

    顯示內(nèi)容,靈活性高。此外,用一套嵌入式系統(tǒng)取代計(jì)算機(jī)來提供視頻源,既可以降低成本,又具有很高的可行性和靈活性,易于工程施工。因此,獨(dú)立視頻源LED顯示
    發(fā)表于 08-06 06:06

    基于FPGALED顯示控制系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)

    本文描述了一個(gè)基于可編程邏輯器件的全彩LED顯示系統(tǒng)的設(shè)計(jì)的過程,這個(gè)系統(tǒng)能夠基于硬件產(chǎn)生LED
    發(fā)表于 01-25 14:20 ?85次下載

    一種基于FPGA控制全彩大屏幕顯示的設(shè)計(jì)

    一種基于FPGA控制全彩大屏幕顯示的設(shè)計(jì) 隨著數(shù)字技術(shù)的飛速發(fā)展,各種數(shù)字顯示屏也隨即涌現(xiàn)出來有LED
    發(fā)表于 12-26 15:07 ?771次閱讀
    一種基于<b class='flag-5'>FPGA</b><b class='flag-5'>控制</b><b class='flag-5'>全彩</b>大屏幕<b class='flag-5'>顯示</b>的設(shè)計(jì)

    采用ARM和FPGA設(shè)計(jì)的全彩獨(dú)立視頻LED系統(tǒng)

    采用ARM和FPGA設(shè)計(jì)的全彩獨(dú)立視頻LED系統(tǒng)系統(tǒng)采用
    發(fā)表于 04-20 15:08 ?573次閱讀
    <b class='flag-5'>采用</b>ARM和<b class='flag-5'>FPGA</b>設(shè)計(jì)的<b class='flag-5'>全彩</b>獨(dú)立視頻<b class='flag-5'>LED</b><b class='flag-5'>系統(tǒng)</b>

    基于FPGALED視頻顯示控制系統(tǒng)的設(shè)計(jì)

    LED 顯示控制器作為控制LED顯示圖像、數(shù)據(jù)的關(guān)鍵,是整個(gè)
    發(fā)表于 02-01 15:53 ?53次下載
    基于<b class='flag-5'>FPGA</b>的<b class='flag-5'>LED</b>視頻<b class='flag-5'>顯示</b><b class='flag-5'>控制系統(tǒng)</b>的設(shè)計(jì)

    基于FPGA的大屏幕全彩LED掃描控制器設(shè)計(jì)

    本文介紹了一種以FPGA 可編程邏輯器件為設(shè)計(jì)平臺(tái)的、采用大屏幕全彩led 顯示屏進(jìn)行全彩灰度圖
    發(fā)表于 08-06 15:58 ?1985次閱讀
    基于<b class='flag-5'>FPGA</b>的大屏幕<b class='flag-5'>全彩</b><b class='flag-5'>LED</b>掃描<b class='flag-5'>控制</b>器設(shè)計(jì)

    LED顯示模塊工作原理及基于FPGALED顯示控制系統(tǒng)的設(shè)計(jì)

    的霓虹燈和部分傳統(tǒng)光源必將逐步被具有節(jié)能、環(huán)保、壽命長(zhǎng)、可靠性高及可實(shí)現(xiàn)全彩變化的LED 光源所取代。本:設(shè)計(jì)使用FPGA技術(shù)實(shí)現(xiàn)對(duì)
    發(fā)表于 11-07 16:08 ?7次下載
    <b class='flag-5'>LED</b><b class='flag-5'>顯示</b>模塊工作原理及基于<b class='flag-5'>FPGA</b>的<b class='flag-5'>LED</b><b class='flag-5'>顯示</b><b class='flag-5'>控制系統(tǒng)</b>的設(shè)計(jì)

    基于STM32+FPGA全彩LED顯示系統(tǒng)的設(shè)計(jì)

    本文主要介紹了一種基于STM32+FPGA全彩LED顯示系統(tǒng)的設(shè)計(jì),STM32作為主控芯片,通過以太網(wǎng)傳輸數(shù)據(jù),以FLASH作為存儲(chǔ)模塊
    發(fā)表于 12-28 13:59 ?1.4w次閱讀
    基于STM32+<b class='flag-5'>FPGA</b>的<b class='flag-5'>全彩</b><b class='flag-5'>LED</b><b class='flag-5'>顯示</b>屏<b class='flag-5'>系統(tǒng)</b>的設(shè)計(jì)

    一種基于FPGA控制全彩大屏幕顯示的設(shè)計(jì)

    +FPGA芯片聯(lián)機(jī)控制系統(tǒng),在這里我們講述一種不僅可以用于控制全彩LED大屏幕的顯示,而且還可以
    發(fā)表于 11-13 16:24 ?461次閱讀

    大屏幕全彩LED顯示屏的掃描控制設(shè)計(jì)

    經(jīng)過對(duì)“19 場(chǎng)掃描”理論灰度實(shí)現(xiàn)原理的分析,針對(duì)采用該方法實(shí)現(xiàn)全彩LED顯示屏刷新頻率受串行
    發(fā)表于 03-08 13:51 ?2682次閱讀
    大屏幕<b class='flag-5'>全彩</b><b class='flag-5'>LED</b><b class='flag-5'>顯示</b>屏的掃描<b class='flag-5'>控制</b>設(shè)計(jì)

    LED全彩控制器使用說明

    器,增加了藍(lán)牙連接功能,可實(shí)現(xiàn)15米范圍內(nèi)對(duì)控制器進(jìn)行無線控制。在微信小程序上可以控制全彩燈具的顯示
    的頭像 發(fā)表于 07-09 16:53 ?3269次閱讀