摘 要 介紹了一種由單片機(jī)組成的大型led顯示系統(tǒng)的功能特點(diǎn)、硬件結(jié)構(gòu)和軟件框圖。該系統(tǒng)由主單片機(jī)CPU完成與PC機(jī)的通訊,同時(shí)完成數(shù)據(jù)存儲、動畫處理、循環(huán)顯示等,由輔單片機(jī)CPU完成顯示畫面的刷新。該系統(tǒng)能脫機(jī)和連續(xù)長期運(yùn)行,具有結(jié)構(gòu)簡單、顯示刷新速度快、成本低等特點(diǎn)。
《中國圖書資料分類法》分類號 TP 368.1
LED點(diǎn)陣作為一種新型的模擬屏顯示材料,近年來發(fā)展很快,市場前景良好。對大型led顯示系統(tǒng)來說,由于數(shù)據(jù)量大,顯示刷新速度顯得特別關(guān)鍵,若刷新速度跟不上,會造成畫面晃動和閃爍。為此,不少生產(chǎn)廠家的產(chǎn)品采用改造PC機(jī)主板,利用PC機(jī)主板的DMA控制器來提高數(shù)據(jù)傳輸速度,有的則采用并行數(shù)據(jù)傳輸方式提高數(shù)據(jù)傳輸速度,還有的將顯示屏分成若干小塊,由多個(gè)控制器去分別控制,另加一個(gè)控制器負(fù)責(zé)整個(gè)畫面的分配和各個(gè)顯示子塊的同步。我們則采用主輔兩個(gè)單片機(jī)CPU和串行數(shù)據(jù)傳輸方式。

圖1 led顯示系統(tǒng)組成框圖

圖2 雙端口RAM接線圖
1 硬件結(jié)構(gòu)
該系統(tǒng)由主單片機(jī)CPU1完成與PC機(jī)的通訊,同時(shí)完成數(shù)據(jù)存儲、動畫處理、循環(huán)顯示等,由輔單片機(jī)CPU2完成顯示畫面的刷新,PC機(jī)僅完成畫面數(shù)據(jù)的形成和傳送,之后便可關(guān)機(jī)。系統(tǒng)組成框圖如圖1所示,圖1中DS12887是時(shí)鐘芯片,掉電情況下其內(nèi)部照常走時(shí);EPROM27256是32 k程序存儲器。為存儲大量的畫面數(shù)據(jù),圖1中采用了6片32 k容量的不掉電靜態(tài)數(shù)據(jù)存儲器芯片GL42256,其地址分配相同,74LS138譯碼器控制它們的片選端。系統(tǒng)中主輔單片機(jī)CPU之間通過雙端口RAM,即圖1中的DIT7134芯片來傳遞數(shù)據(jù),鑒于其接線較復(fù)雜,現(xiàn)用圖2來詳細(xì)說明。圖2中DIT7134是4 k×8 Bit的雙端口RAM芯片,MC4040是12位同步二進(jìn)制計(jì)數(shù)器,左右兩個(gè)MC4040的輸出作為雙端口RAM7134的地址線。MC4021是8位移位寄存器,PCLK是移位串出CLOCK信號線,S1~Sn是片選線,L1~Ln是移位串出數(shù)據(jù)線。雙端口RAM左側(cè)受單片機(jī)主CPU控制,右側(cè)受單片機(jī)輔CPU控制,主CPU將處理好的畫面數(shù)據(jù)寫入某一雙端口RAM的同時(shí),輔CPU將另一雙端口RAM中已存好的畫面數(shù)據(jù)傳至顯示屏顯示。主輔CPU同時(shí)工作,交替使用兩個(gè)雙端口RAM。輔CPU刷新畫面時(shí),先將雙端口RAM中的n個(gè)字節(jié)依此并行移入對應(yīng)的n個(gè)MC4021并鎖存,然后在同一CLOCK信號節(jié)拍下同時(shí)將n個(gè)字節(jié)數(shù)據(jù)串行移入顯示屏的n行。顯示屏背面每行數(shù)據(jù)線由串入并出移位寄存器6B595串接而成,6B595片內(nèi)集成有MOS管構(gòu)成的驅(qū)動器,足夠驅(qū)動發(fā)光二極管發(fā)光。
單片機(jī)輔CPU采用運(yùn)行速度較高的PIC16C57芯片,外接20 MHz晶振時(shí),其單周期指令執(zhí)行時(shí)間是200 ns,并且其絕大多數(shù)指令均為單周期指令。顯示屏采用1/8動態(tài)掃描,二極管亮滅顯示占空比可用軟件調(diào)節(jié),以選取合適亮度,提高發(fā)光二極管的使用壽命。我們給博野縣電力局制做的顯示屏,有效顯示面積為1.3 m2,32256個(gè)像素,每屏4032個(gè)字節(jié)畫面數(shù)據(jù),刷新一遍共需執(zhí)行67498條指令,刷新時(shí)間為13.5 ms,每秒約刷新畫面74次,可見其刷新速度很高。
PC機(jī)RS-232串行通訊線經(jīng)MAX202E芯片進(jìn)行電平轉(zhuǎn)換后與單片機(jī)主CPU串行口連接。在PC機(jī)中,利用WINDOWS中的畫筆,開辟一個(gè)圖形顯示窗口,該窗口的尺寸(即行列點(diǎn)陣)與顯示屏上的行列點(diǎn)一一對應(yīng)。該窗口中圖形或文字以BMP圖形格式文件存入硬盤,之后便可與單片機(jī)主CPU通訊并放入非易失RAM畫面數(shù)據(jù)存儲區(qū),以供單片機(jī)主CPU顯示調(diào)用。
2 軟件功能
畫面的實(shí)時(shí)動態(tài)處理即顯示方式以子程序方式編寫,有多少種顯示方式即有多少個(gè)顯示子程序。顯示方式具體有畫面左移、上移、開幕、覆蓋、閃爍、直顯等十幾種顯示方式。下面僅以最常見的上移顯示為例來具體說明。為便于說明,我們將畫面顯示數(shù)據(jù)處理RAM雙倍暫存區(qū)形象直觀化,并按屏面信息字節(jié)數(shù)劃出等同的Ⅰ區(qū)和Ⅱ區(qū)作為畫面顯示數(shù)據(jù)處理暫存區(qū),即雙信暫存區(qū)。每區(qū)劃分成N行、n列,n×8即為led顯示屏行點(diǎn)陣數(shù),N即為led顯示屏列點(diǎn)陣數(shù),LED顯示屏共含有(n×8)×N個(gè)像素。程序開始先將畫面數(shù)據(jù)存儲區(qū)的數(shù)據(jù)按要求順序傳送到Ⅰ區(qū),并置Ⅱ區(qū)RAM為全“1”(即清顯示)。將Ⅰ區(qū)第1行數(shù)據(jù)傳送至Ⅱ區(qū)第N行,然后將Ⅱ區(qū)數(shù)據(jù)按一定順序(即輔CPU完成畫面刷新要求的數(shù)據(jù)順序)傳至RAM顯示緩沖區(qū)送顯。之后,將Ⅰ區(qū)第1行傳至Ⅱ區(qū)第(N-1)行,Ⅰ區(qū)第2行傳至Ⅱ區(qū)第N行,然后將Ⅱ區(qū)數(shù)據(jù)按一定順序傳至顯示緩沖區(qū)送顯。依此類推,便形成屏幕上移的動態(tài)效果顯示。
LED顯示屏主程序框圖 " src="[InstallDir_ChannelDir]{$UploadDi





