基于S3C44B0X的大型LED顯示系統設計
大型LED顯示系統已經廣泛應用于各種室內外場合,但由于其多采用多機系統,提高了系統成本和軟硬件設計復雜度。多機系統工作時,本質上相當于一個高總線寬度的計算機系統。其技術難點如下:
本文引用地址:http://www.j9360.com/article/168120.htm◆大型LED顯示屏上的像素數以萬計,隨著顯示面積增大,電路結構隨之增大。
◆為了保證一定的顯示質量,幀頻應在30幀/s以上。對于一個512×252的單色LED屏,每秒的數據傳輸量至少為480KB以上,對于彩屏及顯示質量高的場合,數據傳輸量還將按整數倍增長。
◆當LED屏位于室外時,上下位機通信可能在百米甚至千米以上,要求通信速度快且可靠。
鑒于上述前兩個技術難點,為能夠使用單CPU系統代替多機系統控制大型LED顯示系統,采取的應對策略如下:
◆大型的lED屏由通用的顯示模塊組成,顯示模塊具有良好的通用性和可嵌入性。
◆使用16位并行總線數據傳輸方式,要顯示相應位置的顯示模塊,模塊上的列鎖存單元能夠準確選通,使橫向級聯的LED顯示模塊能夠被視為一段連續的存儲單元。
◆使用S3C44BOX內部的DMA控制器進行數據的傳輸和控制,節省了使用指令傳輸數據的CPU取指和譯指時間以及使用指令傳輸數據附帶的計數、比較、跳轉等軟件開銷,從而能夠在連續的讀寫操作中完成數據的傳輸,提高了數據傳輸的速度和效率。
1硬件結構及原理
大型LED顯示系統一般分為主控板和顯示驅動模塊兩部分。
1.1顯示模塊
現今,大型LED顯示系統是利用人眼視覺特點采用逐行掃描和列驅動方式以節省硬件開支的,本系統采用1/16逐行掃描方式,所以整個大型LED屏被分為16行同名行,顯示模塊原理圖如圖1所示。

每個顯示模塊為1個64×32的小點陣屏,分為兩部分,上下各16行,每部分有8組列數據鎖存器。上下兩部分復用1個4—16譯碼器U1,選通驅動1/16逐行掃描顯示,并需要16組列驅動鎖存器鎖存列顯示數據。采用并行總線數據傳輸方式時,需要1個4—16譯碼器U2選通使能列鎖存器。在點陣刷新時,需要使用兩級鎖存器鎖存列顯示數據,否則會出現顯示拖尾現象。本次正在顯示的數據存在第二級鎖存器中,主控板對屏端第一級鎖存器寫下一行要顯示的數據進行列數據刷新,當下一行要顯示的數據傳輸完畢后,一起鎖存到第二級鎖存器輸出并選通驅動下一行顯示。采用并行總線方式下二級鎖存器仍比數據串行傳輸再轉成并行輸出的方案經濟。
顯示模塊與模塊之間橫向級聯時,運用錯位級聯的思想,使其具有良好的通用性和可嵌入性。如圖1所示,選通線每到一級時就會錯位一次并傳到下一級,總是使第一根選通線BLK_EN0作第一級列鎖存器譯碼器的使能控制線,這樣n根選通線就能依次選通n級橫向級聯模塊。這樣就可以用相同的顯示模塊任意組合成橫向級聯的條屏。
運用錯位級聯思想,使橫向級聯的顯示模塊上的第一級鎖存器的譯碼器U2能夠依次選通,該譯碼器又能依次選通第一級列數據鎖存器,這樣橫向級聯屏上的第一級列數據鎖存器就能看成一段連續的存儲單元,這是使用DMA并行數據傳輸控制的基礎。
1.2主控電路與LED屏的接口設計
本顯示系統選用基于ARM7TDMI內核并帶有內部DMA控制器的S3C44BOX作主控制器,使其工作在ARM狀態,并使用16位總線。由于把LED屏虛擬的視為一段連續的存儲單元,故為其分配地址空間0x2000000~Ox4000000。
主控電路與LED屏接口應能實現以下功能:
◆選通任意位置的顯示模塊及該模塊上的第一級列數據鎖存器。將該位置要顯示的點陣碼準確鎖存,并能在第一級列數據鎖存器數據刷新后,將刷新數據鎖存到第二級列數據鎖存器并輸出。
◆能控制選通驅動16行同名行中的一行進行逐行掃描顯示。
◆實現主控芯片3.3V到LED屏5V的邏輯電平轉換。
主控板與LED屏接口電路原理圖如圖2所示。

一個大型LED屏的結構可分為縱向級聯和橫向級聯,這種結構類似于一個三維數組。假設一個三維數組LED[i][j][k],其中:
i=0,1,2,…,m表示LED屏縱向級聯級的序號。
j=0,1,2,…,n表示LED屏橫向級聯級的序號。
k=O,1,2,…,16表示顯示模塊上16個第一級列數據鎖存器的序號。
由于系統使用16位并行總線數據傳輸方式,并將LED屏視為一段連續的存儲單元,故使用A[4:1]作顯示模塊上選通第一級列數據鎖存器譯碼器(圖1中U2)的譯碼輸入,即為三維數組的k變量;使用A[8:5]作選通橫向級聯顯示模塊的譯碼器(圖2中U7)譯碼輸入,即為三維數組的j變量;由于LED屏要具有良好的靈活性,又由于采用DMA傳輸數據要求點陣碼存放順序的技術要求,縱向級聯級選通不滿足使用地址總線譯碼選通的條件,所以使用S3C44BOX的PG[2:0]作縱向級聯級選通譯碼器的譯碼輸入,即三維數組的i變量。
由于地址和數據總線上的狀態不斷變化,所以在對LED屏進行寫操作時,地址和數據信號應進行鎖存,主控板上分別使用U2、U3和U4鎖存對LED寫操作時的地址和數據總線的狀態。LED屏分配首址為Ox2000000,當對其進行寫操作時,S3C44BOX的nGCSl和nWE腳會出現可編程控制時延的有效低電平。nGCSl經一個非門作U2、U3和U4的鎖存使能控制信號,保證僅在對LED屏訪問時,地址和數據總線上的信號才被鎖存。nWE經一個非門作屏端第一級列數據鎖存器(圖1中U3~U19)的鎖存使能控制信號,保證只有當刷新數據穩定出現在列數據鎖存其輸入端時才被鎖存。S3C44BOX的PCI0作所有屏端第二級鎖存器(圖1中U20~U35)的鎖存使能控制信號線;S3C44BOX的PC[3:O]作16行驅動譯碼器(圖1中U1)的譯碼輸入。由于數據傳輸時只需要主控板對LED屏輸出控制,不需要信號反饋,所以接口電路采用廉價的5V供電的HCT電路芯片方案,就可滿足主控芯片3.3V到LED屏5V的邏輯電平轉換。
在DMA傳輸數據時,更關心的是DMA的寫操作,時序如圖3所示。t1時刻DMA寫操作開始,地址和數據總線上出現LED屏相應位置的地址和刷新數據;t2時刻nGCS1引腳出現有效低電平,地址和數據總線上的數據被鎖存到U2~U4并輸出;t3時刻nWE引腳出現有效低電平,U2~U4的輸出數據被鎖存到屏端第一級列數據鎖存器并輸出。這樣主控制器就完成了一次列數據的刷新。
評論