摘 要:提出了一種基于FPGA和SOPC技術實現旋轉LED屏控制系統設計的新方法。該設計以Altera公司的EP2C20為核心,通過在單片FPGA中集成NIOS軟核處理器,SDRAM控制器和EPCS控制器等外圍控制器件,配合紅外接收模塊,LED控制模塊等自定義的Avalon接口模塊實現旋轉位置感應,紅外無線控制,彩色LED控制等功能。這種設計方案的主要優勢在與集成化和可擴展性,只需要對該方案進行少量修改,便可以實現具有更多功能的控制系統,以適應不同的旋轉LED屏設計的需要。
一、引言
LED(1ight emitting diode)顯示屏由發光二極管陣列構成。發光二極管(LED)是一種電流控制器件,具有亮度高、體積小、單色性好、響應速度快、驅動簡單、壽命長等優點,能勝任各種場合實時性、多樣性、動態性的信息發布任務,因此得到了廣泛的應用。LED大屏幕是通過一定的控制方式,用于顯示文字、圖像行情等各種信息以及電視、錄像信號,并由LED器件陣列組成的顯示屏幕。LED大屏幕作為現代信息發布的重要媒體,正受到社會各界尤其是商業界、廣告界的極大重視,被廣泛應用于上業、交通、商業、廣告、金融、體育比賽、電子景觀等。
目前市場上的LED屏基本上均為平板LED屏,這種屏具有顯示穩定,顯示內容易修改的優點。但是平板顯示屏的原理決定了顯示屏上的每一像素點均與單獨的LED一一對應,這必然造成平板顯示系統造價過高顯示控制系統龐大的等缺點,而且由于幾何機構的限制,決定了平板顯示屏的視場較小。而新型的旋轉柱式LED屏可以克服平板LED屏的上述不足-它以機械轉動掃描方式代替逐行掃描,使用的LED數量大大減少,這使成本大大減低,而且可是屏幕范圍達到了360°。
SOPC是嵌入式設計的一個新的方向,利用SOPC技術可以將多個功能模塊集成到一塊可編程芯片上構成可編程芯片上。將SOPC技術和旋轉LED控制有機結合起來可以實現結構緊湊,功能穩定的旋轉LED控制系統,同時也有利于控制系統的功能升級和維護。
二、旋轉LED屏基本原理及關鍵技術
2.1 LED陣列旋轉顯示
旋轉LED顯示屏是一種通過同步控制發光二極管(LED)位置和點亮狀態來實現圖文顯示的新型顯示屏,因其結構新穎,成本低廉,可視范圍達360°而得到了迅速的發展,其核心技術在于精確控制LED位置與發光狀態的同步。旋轉LED屏的顯示器件只有一列,并且這一列LED由轉速恒定的LED帶動進行旋轉, 同時由控制電路對LED的點亮狀態進行同步控制,使電機每轉過一定角度,這一列LED的顯示內容就改變一次,在旋轉到任何一個位置都有唯一確定的顯示內容,也就是說旋轉LED屏是采用逐列顯示的,并且采用了機械轉動來替代替代掃描顯示,下圖中a,b,c,d是旋轉LED屏在不同時刻的顯示狀態,d是人眼視覺看到的完整的畫面“3”。
2.2 三基色LED的顏色灰度控制
本設計采用了三基色LED來實現彩色像素的顯示,為了能實現豐富多彩的顏色顯示,需要對LED的顏色灰度進行控制。這主要有兩種即驅動電流控制法和驅動脈沖占空比控制法,但前一種方法實現難度較大成本較高,而后者原理簡單,容易采用數字設計方法實現,因此本文的LED灰度控制采用了占空比控制法。
占空比控制法控制LED的亮度實際上是控制LED點亮的時間。周期性地改變LED在一個周期內的點亮時間的長短,從而實現LED的亮度變化。在工作狀態下連續地改變LED在循環周期中的點亮時間就可以實現LED亮度灰度等級的連續變化。對于256色顯示,只需要采用8bit色度數據來控制LED的灰度,列數據位與占空比關系如下圖2所示:
2.3 旋轉LED屏設計的關鍵
旋轉LED屏的原理并不復雜,其硬件結構也相對簡單,但是要使旋轉LED屏能夠穩定的顯示設定的圖像或文字,需要克服三個技術難點:
1.旋轉屏控制控制電路的供電。在系統工作時,控制電路隨著電機的轉子轉動,因此給旋轉著的控制電路和LED提供一個穩定的供電電源具有一定的難度。
2.旋轉屏橫向顯示拖影問題。由于旋轉屏采用了單列LED旋轉掃描實現柱面圖像顯示,這使得像數點顯示在橫向上出現了粘滯,形成拖影現象。
3.解決顯示亮度不足,由于旋轉LED屏的工作原理決定了相比于普通的平面LED屏,顯示每一列的時間要少許多,因此亮度也會大大減小。
要使設計的旋轉LED屏具有較好的顯示效果,需要在設計解決好這三個問題。對于旋轉LED屏的供電來說,采用固定在底座的電刷片和旋轉的金屬導軌或者金屬輪軸接觸的方式給系統供電,是比較簡單而可靠的方法。本文的設計就是通過電刷提供一個恒定的12V直流電壓,再由DC-DC芯片轉換成2.5V、3.3V、5V等電壓來維持控制系統工作。解決旋轉屏的橫向拖影,主要是根據旋轉掃描的特點,在兩列像素點之間插入一個全黑時隙,這樣就可消除兩列圖像顯示點的粘滯感。而對于解決亮度顯示不足的問題,本文的設計在不繼續加大LED燈亮度的情況下,采用的是用四列LED燈來輪流顯示每個旋轉屏上的每個象素點,這樣亮度在旋轉速率不變的情況下就變為原來的四倍。
三、總體方案系統設計
本文的設計是以FPGA為核心,利用霍爾傳感器,紅外遙控以及三基色LED顯示陣列搭建的柱式旋轉LED屏系統。該系統主要由電機,控制電路,LED顯示陣列三部分組成。
電機的作用就是帶動電路部分進行旋轉,這個部分的關鍵就在于電機的轉速要均勻,這樣才能保證圖像在水平方向不會被局部伸展或者壓縮。為了使LED轉速保持穩定,一般在設計時,都是使用勻速的直流電機,或者是步進電機。
LED整列是旋轉屏的顯示主體,為了實現較好的顯示效果,本文的設計采用了三基色的LED燈,通過電路的控制LED的顏色灰度等級,LED屏可以顯示出復雜多變的色彩,雖然這樣在控制電路的設計上更為復雜,但是具有更好的顯示效果。
LED顯示控制電路的作用是將存儲在RAM內圖像或符號,在旋轉位置感應信號的同步下,根據旋轉的位置按列掃描顯示在LED陣列上。這部分是整個系統的核心。
四、旋轉LED控制電路的SOPC設計
本設計硬件平臺采用Altera公司的CycloneⅡ系列中EP2C20Q204C8作為FPGA為平臺,通過使用Quartus II軟件搭建的采用Nios軟核處理、DMA、SDRAM控制器等外圍模塊以及自定義的LED驅動控制模塊等搭建了旋轉LED屏的控制系統。
4.1控制電路的結構
作為旋轉LED屏的核心部分,本文所設計的旋轉LED屏控制系統電路主要由以下一個部分組成,如圖3所示。
電源供電模塊,主要功能是為旋轉LED屏控制系統以及LED顯示陣列提供連續穩定的電源。
FPGA及其配置電路,FPGA電路整個控制系統的核心,是實現Nios II處理器及相關功能模塊的載體。
彩色LED陣列驅動控制電路,主要由LED的驅動芯片及相關器件組成。LED驅動芯片在控制器的控制下按照相應的順序、顏色和亮度顯示圖形文字內容。
外圍存儲電路,包括SDRAM和CF卡。SDRAM作為Nios II處理器的程序運行空間,而大容量的CF卡則用于存儲LED屏要顯示的圖像或者文字內容。
旋轉位置感應電路,由一片集成的霍爾感應器件及相關器件組成,用于感應LED屏旋轉的位置,使得輸出內容與旋轉位置相對應。
無線控制電路,由紅外(irDA)接收芯片和手持式紅外遙控器組成,主要實現對旋轉LED顯示內容的切換紅外遙控。
實時時鐘電路(RTC),由外接實時時鐘芯片組成,實現顯示時鐘的功能。
4.2 LED驅動控制模塊設計
LED驅動控制模塊是旋轉LED屏控制系統的最重要部分,主要分為Avalon接口子模塊,雙口RAM子模塊,串行移位輸出子模塊,輸出同步子模塊,灰度控制子模塊等組成,其結構圖如下圖4所示。
在設計中,雙口RAM子模塊可以使系統可以在輸出顯示圖像的同時,可以同步更新顯示內容數據。旋轉LED屏有四個顯示LED列陣,整個顯示柱面分為四個區,每個區占1/4個柱面。為了實現四個區的同步掃描,需要有四個獨立的雙口RAM,其位寬為24bit,剛好可以存儲一個像素數據,使R、G、B各占8bit,以滿足256顯示的需要。雙口RAM使用QuartusII 軟件內嵌的MegaCore生成,每個RAM的大小為768x24bit.
串行移位輸出子模塊和輸出同步控制子模塊是用于將并行的圖像數據從RAM中取出,并在霍爾感應器輸入的位置信號的同步控制下把數據串行化輸出的。圖像灰度控制的方法是采用前文提到的占空比控制法來實現的,灰度控制子模塊主要由計數器和比較器組成,計數器在灰度時鐘GRY_CLK上升沿計數,當計數值》=0并小于比較器的值時,灰度控制輸出信號GRY為高,否者為低,該信號送往驅動芯片74HC595的使能端EN用于控制LED燈的點亮時間,可控制色彩灰度和在兩列圖像顯示列中增加黑的時隙。
五、系統軟件設計
整個旋轉LED屏的控制電路的控制核心是Nios處理器,圖像數據的讀取,旋轉位置的感應,以及LED的顯示驅動都是由Nios處理器來實現控制調度的。對于Nios軟核處理器來說,其軟件開發是在SOPC Builder下的Nios IDE集成開發環境下完成的。Nios處理器軟件的流程結構如下圖5所示:
六、總結
旋轉LED屏作為一種新型的LED顯示屏以其成本低,可視范圍大等獨特優點,也越來越受到人們的重視。本文根據旋轉LED屏的工作原理以及設計要求,將基于Nios軟核的SOPC技術引入到設計中來,實現了基于SOPC的彩色旋轉LED屏的設計。該設計把微處理器和用戶邏輯接口都集成在一塊FPGA芯片上,其接口可以靈活地被編程人員定義,用戶能根據顯示屏的大小靈活調整硬件邏輯設計以實現對屏的控制,而不需要改變其原有硬件構成,因此具有很大的靈活性,是旋轉LED屏控制電路設計的一個新方向。
評論
查看更多