摘 要: 設計了一種彩色點陣LED大屏幕的控制器,該控制器采用單片機讀取存儲在SD上的點陣數(shù)據(jù)文件,,按幀串行地輸出到LED控制芯片并刷新LED屏幕顯示,。該控制器能夠存儲并動態(tài)顯示靈活多樣的文字或者動畫,具有性價比高,、體積小等優(yōu)點,。
關鍵詞: 點陣LED屏幕;控制器,;ATmega644
0 引言
隨著國民經(jīng)濟的發(fā)展,,商品的廣告以多種多樣的方式呈現(xiàn)在消費者面前。其中,,戶外的點陣LED式廣告牌越來越受到商家的歡迎,,其樣式多種多樣,可任意顯示各種文字和圖形,,并具有高亮度,、防水、節(jié)能、壽命長等優(yōu)點,,用途越來越廣泛[1-3],。
點陣LED屏幕控制器負責對LED顯示內(nèi)容進行控制和實時更新,是LED屏幕工作的必需部分,。LED控制器的工作原理,、顯示內(nèi)容存儲或獲取方式、刷新速度等因素都關系到LED廣告牌的顯示效果和工作的便利性[4-5],??紤]到目前點陣LED屏幕控制器市場存在較多問題,本文基于單片機,、彩色點陣LED驅動控制芯片和SD卡,設計了一種彩色點陣LED屏幕控制器,。設計的彩色點陣LED屏幕控制器能夠選擇并循環(huán)顯示存儲在SD卡上的點陣數(shù)據(jù)文件,,能調節(jié)顯示速度,并能夠根據(jù)需求并聯(lián)工作,,實現(xiàn)對更大規(guī)模的點陣LED的控制,,具有調節(jié)和更換顯示內(nèi)容方便、結構簡單,、可擴展,、可靠性高等優(yōu)點。
1 系統(tǒng)概述
彩色點陣LED屏幕控制器主要由單片機,、SD卡,、電源及相應的輸出電路組成。另外在點陣LED驅動部分,,采用與LED集成在一起的控制芯片進行控制,,專用的橫流電源為其供電。其結構框圖如圖1所示,。
單片機主要負責讀取SD卡內(nèi)存儲的點陣數(shù)據(jù),,讀取完一幀數(shù)據(jù)后,通過驅動電路串行地發(fā)送給LED控制芯片,。此LED控制芯片能夠接收并存儲9 B的點陣數(shù)據(jù),,分別對應相鄰3個像素點的RGB亮度數(shù)據(jù)。當單片機發(fā)送過來的數(shù)據(jù)超過9 B時,,LED控制芯片會把數(shù)據(jù)串行地發(fā)送給相鄰的下一級控制芯片,,直至所有的控制芯片都接收到點陣數(shù)據(jù),就可以進行一次顯示,。
2 硬件設計
在彩色點陣LED控制器的硬件上,,主要設計了基于ATmega644單片機、SD卡最小系統(tǒng)及其驅動電路等。而在LED控制芯片上則選用Titan Micro公司生產(chǎn)的TM1809的具有9通道LED驅動控制專用芯片,。
以下將分別介紹ATmega644單片機及SD卡最小系統(tǒng),、驅動電路和LED控制電路。
2.1 ATmega644最小系統(tǒng)
ATmega644單片機是美國ATMEL公司生產(chǎn)的8位RISC結構的單片機,,具有64 KB的閃存,、4 KB的內(nèi)存,最高運行頻率為20 MHz,。該單片機的指令為單周期指令,,執(zhí)行效率很高,支持在線下載,。ATmega644單片機及SD卡最小系統(tǒng)的原理圖如圖2所示,。
ATMega644單片機最小系統(tǒng)由5 V供電電源、晶振,、復位電路和程序在線下載電路組成,。ATMega644的復位電路由電阻、電容,、二極管和一個微動開關組成,,能起到延時啟動,按下開關瞬時重啟的作用,。單片機系統(tǒng)的晶振采用的是11.059 2 MHz的晶振,,也可根據(jù)需要更換為20 MHz的晶振以提高運行速度。與ISP在線下載電路相連的是單片機的SPI接口和復位接口,。單片機的供電電源為5 V,,還需要額外的電源芯片轉換為3.3 V電源供給SD使用。
SD與單片機相連接的電路也是SPI接口,,可以用單片機的SPI接口方便地與SD卡進行數(shù)據(jù)的讀寫操作,。單片機的在線編程接口和SD卡與單片機通信用到的都是SPI接口,但是由于在線編程是SPI接口與復位接口配合使用的,,因此并不會產(chǎn)生沖突,。另外,由于單片機接口與SD卡接口的電源電壓分別為5 V和3.3 V,,并不兼容,,因此在線路上串接有100 Ω的電阻,以達到可靠通信的目的,。另外在靠近SD卡端的所有數(shù)據(jù)線上都加上了上拉電阻,,以提高通信的可靠性。
2.2 驅動電路
由于單片機接口的負載能力有限,,很難驅動距離較遠的芯片,,因而需要提高其驅動能力后再連接后續(xù)電路,,以便達到信號可靠傳輸?shù)哪康摹1疚牟捎玫尿寗与娐吩韴D如圖3所示,。
該驅動電路采用的芯片為74HC245,,是一種三態(tài)輸出、八路信號收發(fā)器,,其接口的輸入,、輸出電流能夠達到35 mA,在設計中,,采取兩路收發(fā)器共同發(fā)送同一個信號,,其最大能夠輸出或輸入70 mA的電流,保證了信號的可靠傳輸,。由于該電路的信號傳輸是單向的,,由單片機到LED控制電路,因此74HC245方向控制端接高電平,,數(shù)據(jù)傳輸方向由端口A到B,。
2.3 LED控制電路
LED控制芯片上則選用的是Titan Micro公司生產(chǎn)的TM1809,該芯片內(nèi)部集成有MCU數(shù)字接口,、數(shù)據(jù)鎖存器、LED高壓驅動等電路,,通過外圍MCU控制實現(xiàn)該芯片的每路單獨輝度,、級聯(lián)控制實現(xiàn)戶外大屏的彩色點陣發(fā)光控制。該芯片共有9個輸出端口,,能夠連接9個LED,,實現(xiàn)控制3個RGB像素的24位色彩控制。通過多級串聯(lián),,完全能夠實現(xiàn)對彩色點陣LED顯示屏的控制,。LED控制電路原理圖如圖4所示。
在圖4中,,TM1809的14腳為串行數(shù)據(jù)輸入腳,,連接單片機驅動電路上的DAT1腳;其第3腳為串行數(shù)據(jù)輸出腳,,連接下一級TM1809的14腳,,按照這種連接方式實現(xiàn)級聯(lián)控制。在接收點陣數(shù)據(jù)時,,每一級芯片接收完9 B的點陣數(shù)據(jù)后會自動把數(shù)據(jù)串行地發(fā)送給下一級控制芯片,。
3 軟件設計
LED控制器的正常運行需要編寫相應的單片機軟件。本文設計的LED控制器中,,單片機的主要功能是通過SPI接口初始化和讀取SD卡內(nèi)的數(shù)據(jù),,并通過單片機端口串行地把數(shù)據(jù)發(fā)送給TM1809,直到發(fā)送完整幀的數(shù)據(jù),然后控制TM1809輸出當前幀數(shù)據(jù)給LED顯示,,接下來再處理下一幀數(shù)據(jù),。
設計單片機軟件的難點在于SD卡數(shù)據(jù)的讀取和驅動TM1809。其中,,SD卡中存儲數(shù)據(jù)文件用到的是FAT32文件系統(tǒng),,需要單片機軟件根據(jù)FAT表的信息判斷文件存儲的位置、幀大小,、每扇區(qū)幀數(shù)等信息,,以便完整地讀取所需要的文件內(nèi)容。
由于單片機向TM1809發(fā)送數(shù)據(jù)采用的是單線串行發(fā)送,,因此需要準確地控制數(shù)據(jù)時序,。TM1809對數(shù)字“0”的規(guī)定為600 ns的高電平,緊接著1 200 ns的低電平,;對數(shù)字“1”的規(guī)定為1 200 ns的高電平,,緊接著600 ns的低電平;10 μs以上的持續(xù)低電平為復位信號,。當發(fā)送完一幀數(shù)據(jù)后,,緊接著發(fā)送一個復位信號,TM1809會將當前存儲的數(shù)據(jù)發(fā)送到LED顯示,。
單片機程序的流程圖如圖5所示,。單片機上電后首先進行端口、SPI接口和SD卡的初始化工作,,這些工作完成后將讀取SD卡起始幀的數(shù)據(jù),,并以此判斷分區(qū)格式、分區(qū)表的位置等信息,。讀取分區(qū)表內(nèi)容,,根據(jù)撥碼開關決定所需讀取數(shù)據(jù)的文件名,并由分區(qū)表判斷此文件起始幀的位置,。接下來就可以讀取數(shù)據(jù)文件的第一幀,,其第一幀并不是點陣數(shù)據(jù),而是點陣數(shù)據(jù)的行數(shù),、列數(shù),、幀數(shù)等信息,第二幀才是點陣數(shù)據(jù),,讀取后發(fā)送給TM1809顯示,。在接續(xù)讀取和發(fā)送點陣數(shù)據(jù)之前要判斷撥碼開關是否變化,變化意味著要切換顯示文件,;還要判斷是否是最后一幀數(shù)據(jù),,如果都不是,,則接續(xù)讀取下一幀數(shù)據(jù)。
除此之外,,本文還設計了點陣數(shù)據(jù)文件的存儲格式,。點陣數(shù)據(jù)文件在SD卡中以512 B為單位進行存儲。其第一個512 B存儲的數(shù)據(jù)為點陣數(shù)據(jù)的行數(shù),、列數(shù),、幀數(shù)等數(shù)據(jù),不足512 B的空間將以0xFF補滿,。從第二個512 B開始將是點陣數(shù)據(jù),,若一幀點陣數(shù)據(jù)不足512 B,同樣以0xFF補滿,,超出512 B將占用第二個直至更多個512 B,,不足512 B的空間將以0xFF補滿。
4 結論
本文設計了一種彩色點陣LED屏幕控制器,,該控制器通過單片機讀取SD卡中的點陣數(shù)據(jù),,串行地發(fā)送到LED控制芯片中,刷新LED顯示動態(tài)圖像,。同時,,該控制器能夠通過撥碼開關調節(jié)顯示內(nèi)容和顯示速度,并能夠通過并行連接多個控制器同步工作實現(xiàn)更大規(guī)模的顯示屏控制,;并具有性價比高,、體積小等優(yōu)點。
參考文獻
[1] 王有乾,,佘焱,姜建國.LED大屏幕異步控制器多窗口顯示的實現(xiàn)[J].微計算機信息,,2007,,23(20):104-106.
[2] 田秀偉,鄭喜鳳,,丁鐵夫.基于SOPC的LED顯示屏控制器設計[J].液晶與顯示,,2007,22(6):737-741.
[3] 呂常智,,范迪.基于CPLD的LED點陣顯示控制器[J].微計算機信息,,2006,22(32):218-219,,233.
[4] 梁志明,,李斌.基于FPGA的大屏幕全彩LED掃描控制器設計[J].液晶與顯示,2007,,22(4):477-481.
[5] 陳雁,,安建平,,徐紹劍.基于FPGA的全彩色大屏幕LED控制器設計[J].電子器件,2007,,30(6):2155-2158.