LED屏幕顯示系統(tǒng)的設(shè)計與研究
摘要:本文設(shè)計了一個8×8點陣LED顯示屏的顯示系統(tǒng),重點介紹了LED屏幕的動態(tài)顯示方法,分別使用了兩個定時器來控制顯示屏的亮度及顯示字符的動態(tài)移位速度。設(shè)計了LED屏幕顯示系統(tǒng)的電路原理圖,顯示的字符的取模,以及軟件流程設(shè)計。在系統(tǒng)的設(shè)計時,根據(jù)實際的LED屏幕類型及電路連接設(shè)置,選擇了適合的陰極取模方式。
大屏幕顯示,在我們生活中越來越多被采用的,具有很好的體積小、方便簡單、顯示效果佳、投入低等優(yōu)點。是我們不可或缺的產(chǎn)品。它可以通過屏幕讓你獲得,中英文、圖像和動畫的顯示,逐漸的替代傳統(tǒng)數(shù)碼管CRT顯示器。
1.研究概述
LED顯示屏的研究采用屏幕為8×8的點陣顯示,側(cè)重于動態(tài)處理方法,由于顯示屏幕的局限性,在此次的研究設(shè)計中只能顯示英文和數(shù)字。一個基本的LED屏幕由8行×8列點共64個LED組成,顯示屏有共陰和共陽兩種連接方式。
每一列的所有L E D的陰極連接在一起,每一行的所有L E D的陽極連接在一起。這樣每塊屏幕在外部具有8個陽極和8個陰極,以共陰極LED屏幕為例,陽極端為數(shù)據(jù)端,陰極端為選通端,當(dāng)數(shù)據(jù)端為高電平而選通端為低電平時,交叉點的LED就被點亮。
2.設(shè)計思路分析
對由8×8點陣構(gòu)成的L E D顯示屏而言,一般數(shù)據(jù)端連接微處理器的8位并行數(shù)據(jù)口,而選通端則逐一使能(選通),選擇需要點亮的某一列,通過分時復(fù)用方式實現(xiàn)動態(tài)顯示效果。選通方式一般有兩種:獨立選通和譯碼選通。
如果屏幕較小,處理器有足夠的I/O口可用,則可以每個I/O口連接一個選通端,如圖1所示;如果屏幕較大,或者處理器的I/O口不是非常豐富,則可以通過譯碼方式來選通,如圖2所示。例如當(dāng)8片8×8點陣的LED組成一個8×128點陣的LED屏幕時,直接選通方式需要64個I/O口,而譯碼選通方式只需要6個I/O口。
本文研究的L E D屏幕顯示設(shè)計,是演示一種循環(huán)移位顯示效果,上電后,Atmega16首先對8×8點陣LED屏幕進(jìn)行自檢,依次點亮所有的LED,然后在LED屏幕上循環(huán)顯示“A LED TEST”字符。
3.硬件電路設(shè)計
8×8點陣LED顯示屏系統(tǒng)所需要的資源如表1所示。電路原理中,主要是利用Atmega16單片機(jī)的數(shù)據(jù)端口、選通端口、中斷端口進(jìn)行LED的控制設(shè)計。
在LED顯示系統(tǒng)中,用到一個8×8的顯示屏,所以采用8個選通I/O口,選通方式采用獨立選通方式。通過軟件Atmega16的I/O口來提供給選通的信號。Atmega16不需附加其的驅(qū)動線路,軟件atmega16具有直接驅(qū)動的能力。顯示屏系統(tǒng)電路圖如圖3所示。
原理圖中,用單片機(jī)的PA[70]端口去控制LED的D7-D0接口,用PD[70]去控制S7-S0接口,實現(xiàn)LED與單片機(jī)之間的數(shù)據(jù)與控制信號交換。圖3中Y1為單片機(jī)的晶體振蕩器,它與電容C2、C3共同組成了單片機(jī)的外部振蕩電路;而電容C1與單片機(jī)的RESET端口形成了單片機(jī)的復(fù)位電路。
設(shè)計完硬件電路圖,需要再對單片機(jī)芯片進(jìn)行程序的編輯和設(shè)計,配合軟件程序功能的運行,才能完整實現(xiàn)LED屏幕顯示系統(tǒng)功能。
4.系統(tǒng)軟件設(shè)計
本節(jié)對LED屏幕顯示系統(tǒng)進(jìn)行軟件設(shè)計。
4.1 顯示字模
8×8點陣LED屏顯示的字符需要通過取模的方式轉(zhuǎn)換成實際的顯示數(shù)據(jù),這個過程可以通過Pcto LCD 2002軟件來實現(xiàn),如圖4所示,Pcto LCD 2002是一種LCD字模生成軟件,同樣適合于為點陣LED屏幕進(jìn)行字模生成。
在這里選擇生成的英文字符的規(guī)格為8×8點陣,同時設(shè)置取模方式為陰極(點亮的位為1)、逐列式及順向(高位在前)。
4.2 顯示控制
顯示控制需要關(guān)注兩個方面:字符的正常顯示和字符的移位顯示。
字符的正常顯示原理同數(shù)碼管顯示一樣,為分時顯示方式。T/C0的定時中斷用來控制顯示掃描頻率,可以通過調(diào)整T/C0的周期來調(diào)節(jié)LED屏幕的顯示亮度。[!--empirenews.page--]
為了進(jìn)行移位顯示,設(shè)置了一個8位的顯示數(shù)據(jù)緩沖區(qū),移位顯示的原理如表2所示,字符A的8個字節(jié)的顯示數(shù)據(jù)每間隔1秒依次從最右邊的移位到最左邊,當(dāng)8個字節(jié)顯示完畢時,A字符的第1個數(shù)據(jù)移出而B字符的第1個顯示數(shù)據(jù)移入,從而實現(xiàn)移位顯示。
4.3 中斷處理
Timer0的1ms中斷服務(wù)程序處理緩沖區(qū)顯示流程如圖5所示,Timer0中斷服務(wù)處理程序只需要完成執(zhí)行選通和送數(shù)據(jù)這兩項。
Timer1的1s中斷服務(wù)程序處理顯示字符更新,其處理流程如圖6所示,從第一個字符開始顯示,直到字符的位數(shù)移動8位后,顯示下一位,直到字符串結(jié)束,返回第一個字符循環(huán)下去。
5.結(jié)束語
通過研究LED顯示屏的顯示系統(tǒng),重點了解LED屏幕的顯示動態(tài)的方法,分別使用了兩個定時器來控制顯示屏的亮度及顯示字符的動態(tài)移位速度。LED屏幕顯示系統(tǒng)的原理圖在DXP 2004下設(shè)計,顯示的字符可以通過Pcto LCD 2002軟件來取模,在系統(tǒng)的設(shè)計時,根據(jù)實際的LED屏幕類型及電路連接設(shè)置,選擇了適合的陰極取模方式。