梁光勝,秦 菁,陳世宏,陳志勇
(華北電力大學 電氣與電子工程學院,北京 102206)
LED屏已得到廣泛應用。現在隨處可見的LED屏多是由大量LED組成的顯示點陣平板,通常采用循環掃描方法,逐行點亮LED;人眼對動態頻次分辨率為1/16~1/24s,由于視覺滯后效應,所以屏幕上單行LED會連成一幅靜態畫面。但是這種顯示有一些不足,首先整屏LED數量巨大,成本高,而且極易壞掉,一定面積LED的非正常工作使得整屏顯示都受到影響,更換或者維修工作量較大;其次由于正常LED屏為平板,可視角度非常有限,再加上通常采用單色LED屏,能吸引注意卻無美感可言。
本文設計的旋轉彩色LED顯示屏,則能完美解決傳統LED顯示屏的各種問題。它以機械轉動方式代替逐行掃描,利用視覺暫留(POV:Persistence of vision)原理[1],通過電機帶動單列顯示器件旋轉,精確同步旋轉位置和LED亮滅,產生一系列運動軌跡的殘留影像。旋轉顯示屏是在支架上安裝了一列32個三色七彩LED,支架由電機帶動旋轉,單片機控制這一列LED在不同位置的亮或滅,在合適的旋轉頻率下,就可以看到完整顯示的彩色文字或圖形。此系統不僅成本低廉,而且可視范圍擴展到了360°,更重要的是,此系統根據色彩學原理,用RGB三色LED顯示七色彩圖,達到神奇夢幻般效果。
圖1為旋轉顯示的LED彩屏系統整體設計框圖。帶動LED屏轉動的為直流電機,并配置合適的電機驅動電路;核心控制模塊選用凌陽SPCE061A單片機,采用電刷供電方式;光電傳感器用來感知系統運行狀況;外部存儲器用于存儲圖片數據以方便后續擴展。

圖1 硬件系統總體設計框圖Fig.1 Design diagrams of hardware system
彩色LED顯示屏作為系統的關鍵部件,在設計時需要考慮諸多因素,如發光體的選擇、發光體運動方式、發光體引腳數量簡化方式等。為了達到彩色顯示的目的,發光體選擇共陰RGB三色七彩直插封裝LED,這種LED高亮度、壽命長、色彩豐富、耐沖擊、功耗小、驅動簡單、工作電壓低。這種封裝的LED包含了紅(Red)、綠(Green)、藍(Blue)3個發光二極管,每個LED都可以單獨驅動,因此RGB三色可搭配出的顏色如表1所示。

表1 R、G、B三色產生的七彩配表Tab.1 Rainbow of colors created by R、G、B
對于七彩LED,內部無控制電路,外部四引腳,配四線控制器,因此只能做出上表中的顏色變化。對于炫彩LED,外部十引腳,配專用十線控制器,內部控制電路可以控制256級灰度變化,理論上可以搭配出上萬種顏色。
在LED顯示組件中,將發光體排成一列做柱面式旋轉運動。如果保持恒定的旋轉速度,則可以產生穩定的圓柱面,使顯示效果更均勻,也使制作調試時振動現象易于控制。由“視覺暫留”原理可知,人眼的暫留時間在0.05~0.2s之間,因此彩色LED屏必須保證至少0.2s轉一周。在合適的轉速下,利用單片機精確控制LED在固定位置上的亮滅,就可以看到穩定顯示的整幅彩色圖片。旋轉顯示屏顯示原理示意圖如圖2所示,深色的一列代表LED屏在某個特定時刻的位置,而淺色表示在其他位置的影響殘留,轉速足夠快時,影像穩定顯示,無閃爍或漂移等。

圖2 旋轉顯示屏顯示原理示意圖Fig.2 Diagram of rotating display
旋轉彩色顯示屏是由1列32[2]只RGB三色LED組成的矩形框。32個LED共計需要32×3=96個引腳來控制其亮滅或者顏色,此三引腳主要用以RGB色彩輸入,而三色LED的第4個引腳統一連接到地。為了緩解單片機引腳的壓力,選用八進制3態非反轉透明鎖存器74HC573來進行擴展,一個74HC573可控制8個單色LED,因此共需要12個74HC573芯片。考慮到單片機引腳資源緊缺,與單片機的接口引線要盡量少,故選用一片4-16譯碼器CD4514作為片選信號的轉換。
LED顯示屏驅動電路結構示意圖如圖3所示,其中前8個LED連接及其驅動電路原理圖如圖4所示。32個LED被分為8個一組,每8個LED需要3片74HC573分別控制R、G、B端口,其接法均與圖4類似。12個74HC573芯片的LE1~LE12引腳接CD4514的譯碼輸出;而每個74HC573的D1~D8接單片機I/O口,單片機所給數據經74HC573鎖存并輸出至彩色LED的RGB端口,從而控制RGB燈的亮滅。第1片74HC573的Q1~Q8引腳控制LED1~LED8的R端口,第2片74HC573的Q1~Q8引腳控制LED1~LED8的G端口,第3片74HC573的Q1~Q8引腳控制LED1~LED8的B端口,后面的情況以此類推。

圖3 LED顯示屏驅動電路結構示意圖Fig.3 Diagram of LED Display driving circuit

圖4 8個LED及其驅動電路原理圖Fig.4 Schematic of eight LED driving circuit
在設計時,為了使顯示屏在高速轉動過程中不發生震動,顯示屏PCB布局遵從嚴格對稱的原則[4]。
在七彩旋轉LED顯示屏系統中,為了實現有效控制并簡化接線,一般都讓主控電路和發光體一起運動。如何給彩色LED顯示屏和主控電路供電,就成為系統設計時必須考慮的關鍵問題之一,有以下幾種供電方案可供參考。
1.電池供電。簡單易攜,但不適合長時間運動,常見的搖搖棒就采用此方案。
2.柔性導線。常用于需要過度彎曲的頻繁移動的場合,適用范圍單一,如搖擺式運動。由于LED顯示屏一直處于高速旋轉狀態,使用柔性導線會纏繞顯示屏。
3.電刷送電。在底座的電機轉軸上安裝電刷,并通過電動機軸上或主控顯示板上的金屬環傳輸電能,能夠提供較大電流強度的電能,保證系統長時間運行。這種方式結構簡單,成本低。
4.發電機供電。在中心軸上面放一個小型發電機,發電機的定子為磁鐵,固定在軸上,線圈為轉子,直接連接在電路上,高速旋轉時即可產生電流,對主電路進行供電。這種方法可克服由電刷產生的干擾[3]。
通過比較,本系統采用電刷供電方式。電機的作用是帶動電路部分進行旋轉,其關鍵在于電機的轉速要均勻,這樣才能保證圖像在水平方向不會被局部伸展或者壓縮,為此我們要使用勻速直流電機。因作品外形較大,故而選用較大的無刷直流電機進行驅動,電機驅動模塊電路原理圖如圖5所示。由于人眼的暫留時間在0.05~0.2s之間,所以旋轉的LED至少0.2s轉一周,即每分鐘至少300轉。設計時電機轉速為5r/s左右,可大大增強旋轉穩定性和精確性,可保證清晰的顯示效果。

圖5 電機驅動模塊電路原理圖Fig.5 Schematic of motor driving circuit
在彩色LED顯示屏高速旋轉時,顯示內容的穩定與否取決于轉動的角度和LED亮滅及色彩的配合,要使運動的發光體形成正常和穩定的顯示效果,系統大多需要通過傳感器來感知發光體的運動位置或狀態,以確定顯示的起始位置,并對系統進行校正。本系統采用光電傳感器來確定第一列LED顯示位置,并與合適的計數器配合來控制列數據更新頻率,以合適的電機轉速來確保顯示內容的完整性。與傳統顯示器相比,此處傳感器的作用類似于場同步信號發生器,保證旋轉彩色LED屏在固定位置產生同一內容,確保圖像不會產生漂移。
顯示一幅同樣大小的畫面,七彩圖案的數據量是普通單色圖案的3倍。另外考慮到單片機內存非常有限,為了顯示功能的實用和擴展,故圖案的數據采用外部存儲方式,存儲芯片選擇512k位紫外線擦除存儲器和OTP存儲器 M27C512[5]。以我們選取的圖片為例,其大致為32×150像素,一幅圖片大小為1.8KB,M27C512大致可存儲284張同大小的圖片數據,以傳統電影放映機每秒24幀的放映速度,視頻數據可持續11s。

圖6 原始圖片與R、G、B三通道圖Fig.6 Original picture and RGB channel graph
本文設計的彩色LED顯示屏,有一項最重要的任務是提取出彩色圖片的顯示數據。首先要選取大小合適的圖片。因為所設計的LED顯示屏只有32個LED,所以需要調整圖片的寬度為32像素。然后將彩色圖像分離出R、G、B三通道圖,存為.bmp格式,如圖6所示。
由于沒有現成的直接提取圖案數據的取模軟件,因此只能手工提取。利用凌陽“DM Tool字模提取工具”,分別對R、G、B三通道的圖像提取二進制數據。圖7為提取R通道二進制數據示例。

圖7 取模軟件對圖像的處理過程Fig.7 Processing of image by DM Tool

圖8 主程序流程圖Fig.8 Main program flow diagram
為了保證顯示畫面的穩定性,系統運用了光電傳感器,在特定位置設置反光點,記為初始位置;光電傳感器隨著顯示屏一起轉動。當每次轉動到初始位置時,傳感器將位置數據傳遞給單片機,單片機接收到外部中斷信號后,從內存中讀取第一列應該顯示的數據,并傳遞給LED控制電路;在轉動當圈的其他位置,采用定時器計時方式來決定在哪個位置顯示下一列數據。這樣的顯示方式能保證圖片無形變,但是定時器的計數初值需要與電機轉速嚴格匹配[6]。為了更精確地顯示或者滿足某些變速系統實時顯示的要求,可以引入速度傳感器來實時測定當前轉速,根據特定算法得到當前定時器的計數初值。
在硬件電路制作完成后,我們編寫C語言程序,經過測試、調試程序查看電路是否能正常工作;然后用專用的燒錄器,手工編程將數據寫入外部存儲器;最后將系統的主控程序下載至單片機,其實際運行效果如圖9所示。從圖中可以看出,旋轉掃描使圖像在橫向上發生了點陣粘連,這是由于掃描LED時點亮的時間稍長導致的,如果要達到傳統顯示屏類似效果,需要在顯示數據時序上增加LED滅的時間。所以顯示的圖像大小與顯示圖片質量與掃描速度有關,如果采用時鐘速度更高的控制芯片,如ARM、FPGA等快速單片機顯示的效果會更好,顯示的精度控制可以更加準確。今后我們會通過一定的改進,提高硬件時鐘或進一步進行程序調試,采用電影放映原理,在旋轉顯示屏上不但可以放映一張彩色的圖片,還可以放映一段彩色動漫。

圖9 彩色LED屏實際運行效果圖Fig.9 Practical tests of colorful LED display
本系統以凌陽單片機為核心,通過控制LED顯示組件的旋轉,顯示了一幅彩色圖案。設計的新型旋轉柱式顯示屏,以機械轉動掃描方式替代逐行掃描,同時采用32個RGB三色七彩LED,實現了32pixel×150pixel像素彩色圖像顯示,經過長時間測試運行該系統穩定可靠,實現360°全方位顯示、灰度實現256級調節。旋轉彩色LED顯示屏設計新穎,成本低廉,尤其是360°觀看角度使之非常適合展廳一類的場合。
[1]張勇,金保華.一種無線旋轉柱式圖文顯示屏的設計[J].鄭州輕工業學院學報:自然科學版,2005,20(4):82-84.Zhang Y,Jin B H.Design of wireless rotate pole scanning display screen[J].Journal of Zhengzhou University of Light Industry:Natural Science,2005,20(4):82-84.(in Chinese)
[2]趙梓權,王瑞光,鄭喜鳳,等.基于視覺感受的LED顯示屏系統精度分析[J].液晶與顯示,2012,27(3):324-231.Zhao Z Q,Wang R G,Zheng X F,et al.Systemic accuracy analysis of LED displays based on visual perception[J].Chinese Journal of Liquid Crystals and Displays,2012,27(3):324-231.(in Chinese)
[3]周正華.51單片機POV趣味制作詳解[M].北京:北京航空航天大學出版社,2011:21-97.
[4]雷鑑銘,范文,鄒雪城,等.圖像硬件旋轉顯示功能的研究與實現[J].微電子學與計算機,2007,24(5):4-6.Lei J M,Fan W,Zou X C,et al.The Study and Implement of hardware rotation of an image[J].Microelectronics& Computer,2007,24(5):4-6.(in Chinese)
[5]魏天兵,劉錦高.立體旋轉顯示屏中數據傳輸問題的研究與實現[J].信息技術,2011(8):227-229.Wei T B,Liu J G.Study and realization of data transmission in three-dimensional rotating screen[J].Information Technology,2011(8):227-229.(in Chinese)
[6]鄧宏貴,李志堅,吳讓亮,等.基于步進電機細分驅動技術的旋轉LED顯示屏設計[J].液晶與顯示,2008,23(5):595-598.Deng H G,Li Z J,Wu R L,et al.Design of rotating LED display screen based on micro-stepping of moto[J].Chinese Journal of Liquid Crystals and Displays,2008,23(5):595-598.(in Chinese)