價格低廉的16x64點陣LED顯示屏的設(shè)計
0 引言
LED點陣顯示屏是一種簡單的漢字顯示器,具有價廉、易于控制、使用壽命長等特點,可廣泛應(yīng)用于各種公共場合,如車站、碼頭、銀行、學(xué)校、火車、公共汽車顯示等。本文詳細介紹了一種低廉的16x64點陣LED顯示屏的設(shè)計過程。
1 硬件系統(tǒng)設(shè)計
本系統(tǒng)采用AT89C52單片機作控制器,整個電路主要由單片機控制及其接口電路、驅(qū)動顯示電路、電源電路等部分組成。為了簡化顯示屏電路,降低成本,本系統(tǒng)在單片機部分不加字庫存儲器。而在PC機上編輯漢字和字符顯示信息,并將其轉(zhuǎn)換為相應(yīng)的點陣顯示數(shù)據(jù),然后通過串口(采用RS-232通信標(biāo)準(zhǔn))送給單片機存儲并進行顯示處理。圖1所示為其硬件系統(tǒng)原理圖。
1.1 單片機控制電路
本系統(tǒng)由AT89C52構(gòu)成單片機最小應(yīng)用系統(tǒng).同時配有11.0592 MHz晶振和按鍵復(fù)位電路等。系統(tǒng)外擴的一片F(xiàn)lash存儲器29F040為數(shù)據(jù)存儲器,可用來存儲由PC機串口送來的點陣信息(通過軟件將圖像或文字轉(zhuǎn)換成與LED顯示屏的像素相對應(yīng)的點陣信息)。該Flash存儲器是一種非易失性存儲器,它在供電電源關(guān)閉后仍能保持片內(nèi)信息。由于29F040的容量為512 KB(該芯片內(nèi)部由8個64 Kbyte的讀寫塊組成,可分塊進行讀、寫和擦除等操作),而AT89C52只能管理64KB的數(shù)據(jù)空間,所以,需將29F040分成8頁,每頁64KB。其頁碼可由單片機的P3.2~P3.4來選擇。另外,采用MAX232可完成RS232與TTL電平的轉(zhuǎn)換,以便使PC機與單片機交換信息。
1.2 16x64點陣顯示器的設(shè)計
圖2是一種8x8的LED點陣單色行共陽模塊的內(nèi)部結(jié)構(gòu)圖,其單點工作電壓Uf為1.8 V,正向電流IF為8~10 mA。當(dāng)某一行線為高電平而某一列線為低時,其行列交叉的點就被點亮;而當(dāng)其某一列線為高時,其行列交叉的點為暗;當(dāng)某一行線為低電平時,無論列線如何,對應(yīng)這一行的點全部為暗。
用四個8x8點陣顯示可構(gòu)成16x16點陣顯示器,其連接方法如圖3所示。圖中,將(A)和(B)的8列、(C)和(D)的8列分別對應(yīng)相連,同時將(A)和(C)的8行、 (B)和(D)的8行分別對應(yīng)相連。即可形成一個16行(每一行有16個LED)、16列(每一列也有16個LED)的16x16點陣顯示器,可將這256個點稱為一頁,這樣,顯示字符時。只要對一頁中對應(yīng)的亮滅進行控制即可。
如果需要,也可以把4個16x16點陣顯示器相連從而構(gòu)成16x64的點陣顯示器。
2 LED點陣顯示器的掃描驅(qū)動
LED顯示屏驅(qū)動電路的設(shè)計應(yīng)與所用控制系統(tǒng)相配合。驅(qū)動通常分為動態(tài)掃描型及靜態(tài)鎖存型驅(qū)動二大類。本文以動態(tài)掃描型驅(qū)動電路的設(shè)計為例來進行分析。動態(tài)掃描型驅(qū)動方式是指顯示屏上的16行發(fā)光二極管共用一組列驅(qū)動寄存器,然后通過行驅(qū)動管的分時工作,來使每行LED的點亮?xí)r間占總時間的1/16。只要每行的刷新速率大于50 Hz,利用人眼的視覺暫留效應(yīng),人們就可以看到一幅完整的文字或畫面。
AT89S52單片機有四個I/O口(P0、P1、P2、P3),每個I/O口有8位,如果都采用并行輸出,顯然不能滿足要求,因此,本設(shè)計中的行掃描驅(qū)動采用并口輸出,而場掃描驅(qū)動采用串口輸出。
2.1 行掃描驅(qū)動
由于16x64點陣顯示器有16行,為充分利用單片機的接口,本電路中加入了一個4-16線譯碼器74LS154,其輸入是一個16進制碼,解碼輸出為低態(tài)掃描信號,它們的管腳示意圖如圖4所示。把74LS154的G1和G2引腳接地,然后以A、B、C、D四腳為輸入端。就會形成16種不同的輸入狀態(tài),分別為0000~1111,然后使每種狀態(tài)只控制一路輸出,即會有16路輸出。
如果一行64點全部點亮,則通過74LS154的電流將達640 mA,而實際上,74LS154譯碼器提供不了足夠的吸收電流來同時驅(qū)動64個LED同時點亮,因此,應(yīng)在74LS154每一路輸出端與16x64點陣顯示器對應(yīng)的每一行之間用一個三極管來將電流信號放大,本文選用的是達林頓三極管TIP127。這樣,74LS154某一輸出腳為低電平時,對應(yīng)的三極管發(fā)射極為高電平,從而使點陣顯示器的對應(yīng)行也為高電平。
2.2 場掃描驅(qū)動
本系統(tǒng)場掃描驅(qū)動電路的設(shè)計可用串入并出的通用集成電路74HC595來作為數(shù)據(jù)鎖存。74HC595是一個八位串行輸入三態(tài)并行輸出的移位寄存器,其管腳見圖4所示,其中SI是串行數(shù)據(jù)的輸入端,RCK是存儲寄存器的輸入時鐘,SCK是移位寄存器的輸入時鐘,Q'H是串人數(shù)據(jù)的輸出,G是對輸人數(shù)據(jù)的輸出使能控制,QA~QH為串入數(shù)據(jù)的并行輸出。從SI口輸入的數(shù)據(jù)可在移位寄存器的SCK腳上升沿的作用下輸入到74HC595中。并在RCK腳的上升沿作用下將輸入的數(shù)據(jù)鎖存在74HC595中,這樣,當(dāng)G為低電平時,數(shù)據(jù)便可并行輸出。為了避免與PC機串口輸入的數(shù)據(jù)相互干擾,也可使用模擬串口P1.4~P1.7來分別輸出串行數(shù)據(jù)、移位時鐘SCK、存儲信號RCK和并行輸出的使能信號G。
為了消除電源電壓的波動及行掃描管壓降(第一行點亮的點數(shù)不同,將引起管壓降的變化,從而影響通過LED管的電流)的變化對LED顯示屏亮度的影響,設(shè)計時可采用列恒流驅(qū)動電路,可選用三極管8550和外圍元件構(gòu)成列恒流驅(qū)動電路,并通過調(diào)整100 kΩ可調(diào)電阻使三極管處于放大狀態(tài),同時將集電極電流調(diào)整為10 mA,從而使點亮對應(yīng)點陣時通過LED的電流不變
2.3 掃描顯示工作過程
將8片74HC595進行級連,可共用一個移位時鐘SCK及數(shù)據(jù)鎖存信號RCK。這樣,當(dāng)?shù)谝恍行枰@示的數(shù)據(jù)經(jīng)過8x8=64個SCK時鐘后便可將其全部移入74HC595中,此時還將產(chǎn)生一個數(shù)據(jù)鎖存信號RCK將數(shù)據(jù)鎖存在74HC595中,并在使能信號G的作用下,使串入數(shù)據(jù)并行輸出,從而使與各輸出位對應(yīng)的場驅(qū)動管處于放大或截止?fàn)顟B(tài);同時由行掃描控制電路產(chǎn)生信號使第一行掃描管導(dǎo)通,相當(dāng)于第一行LED的正端都接高,顯然,第一行LED管的亮滅就取決于74HC595中的鎖存信號;此外,在第一行LED管點亮的同時,再在74HC595中移入第二行需要顯示的數(shù)據(jù),隨后將其鎖存,同時由行掃描控制電路將第一行掃描管關(guān)閉而接通第二行,使第二行LED管點亮,以此類推,當(dāng)?shù)谑袙呙柽^后再回到第一行,這樣,只要掃描速度足夠高,就可形成一幅完整的文字或圖像。
3 軟件系統(tǒng)設(shè)計
本系統(tǒng)的軟件設(shè)計流程圖如圖5所示,該顯示程序以常用的左移為例來進行設(shè)計。
4 結(jié)束語
經(jīng)過實際應(yīng)用證明,本顯示屏可以作為信息顯示裝置。用于公共場所來進行信息顯示,而且具有工作穩(wěn)定、字符清晰、亮度適中等特點。若所顯示的信息較為簡單,也可直接將信息代碼拷入單片機中,還可以通過外擴儲存器的方式來增加顯示的信息量。