基于USB和OLED的分布式多屏電子公告系統(tǒng)設(shè)計
引言
本文引用地址:http://m.butianyuan.cn/article/186013.htm新一代顯示器件有機電致發(fā)光顯示器件OLED(OrganicLightEmittingDiode)厚度為LCD的1/3,響應(yīng)速度是LCD元件的1000倍,低溫特性好,在-40℃能正常顯示,OLED主動發(fā)光的特性使其幾乎沒有視角問題,在很大的角度內(nèi)觀看,顯示廁面仍不失真;OLED能夠在不同材質(zhì)的基板上制造,可做成能彎曲的柔軟顯示器;外形不受限制,可以是任何形狀;可以放到任意物體的表面,所以特別適于戶外大屏幕電子屏廣告顯示領(lǐng)域?;谏鲜鰞?yōu)點,設(shè)計開發(fā)一套能在多個公共場合(如廠區(qū)、校區(qū))同步發(fā)布電子公告的多電子圖文廣告屏。該系統(tǒng)基于通用串行總線(USB)傳輸,速度快、可靠性高,有效地克服了傳統(tǒng)廣告圖文傳輸?shù)娜毕荨?/p>
2系統(tǒng)設(shè)計
多場合同步發(fā)布電子廣告屏系統(tǒng)由位于Internet網(wǎng)絡(luò)的PC機(上位機)和位于各LED控制器上的單片機(下位機)組成,采用USB總線進行主從式通信。圖1為控制系統(tǒng)的邏輯結(jié)構(gòu)框圖。上位機主要完成圖文編輯、字模提取與保存、圖像預(yù)覽與文件傳輸?shù)热蝿?wù);下位機通過一定的掃描驅(qū)動方式控制OLED點陣行列驅(qū)動器,實現(xiàn)設(shè)備的驅(qū)動并最終接收并顯示圖文。由于采用USB總線,可順利實現(xiàn)多屏連接。
3OLED驅(qū)動電路設(shè)計
OLED的驅(qū)動方式屬于電流驅(qū)動。圖2是有源矩陣OLED像素的驅(qū)動原理圖。
與液晶像素相比,OLED像素驅(qū)動多一個晶體管VT2,它能在VT1截止時給OLED像素提供發(fā)光的電流。當行信號端輸入高電壓選通信號,VT1處于導(dǎo)通狀態(tài)時,列同步輸入相應(yīng)電壓,向電容C充電同時控制流過VT2的電流的大小。當行信號端輸入低電壓信號時,VT1截止,由電容C為VT2管提供柵極電壓,繼續(xù)控制VT2的漏極電流,維持像素繼續(xù)發(fā)光。
系統(tǒng)中的OLED采用無源驅(qū)動方式。假設(shè)OLED顯示屏有n行m列像素點,若使第x行與第y列交叉的發(fā)光元件發(fā)光(導(dǎo)通),僅需使列驅(qū)動電路的第y列選通開關(guān)閉合,輸出高電平,并使行掃描電路的第x行輸出低電平,其掃描時序圖如圖3所示。其中TFRM為幀周期,TLINE為行掃描周期,確定幀頻率fFRM后也即確定一幀的時間,TFRM=1/fFRM;每一行的掃描時間TLINE在幀頻確定的情況下是確定的,即TLINE=TFRM/N。
設(shè)計的驅(qū)動電路采用PT6807、PT6808、PT6807是點陣0LED圖形顯示系統(tǒng)64路行驅(qū)動器,它利用CMOS技術(shù),提供64個移位寄存器和64路輸出驅(qū)動,PT6807自己產(chǎn)生時鐘信號控制PT6808列驅(qū)動器。以128x128點陣為例說明具體的操作,點陣驅(qū)動模塊接口如圖4所示。為讀出顯示數(shù)據(jù)RAM中的內(nèi)容,需訪問讀指令2次,第1次訪問中,顯示數(shù)據(jù)RAM中的數(shù)據(jù)被鎖存到輸出寄存器中,在第2次訪問中,MPU讀鎖存數(shù)據(jù)。即在讀顯示數(shù)據(jù)RAM時需1次假讀,但在讀狀態(tài)數(shù)據(jù)時無需假讀。
4單片機存儲器設(shè)計
OLED電子屏以漢字顯示為主,而存儲一個漢字需32x32=1024b=128B的空間。而AT89C51內(nèi)部存儲空間有限,擴展數(shù)據(jù)存儲器,采用62256SRAM,每片可存儲256個漢字,用8片能顯示常見的2000多個漢字。另外,由于系統(tǒng)需調(diào)用的程序和數(shù)據(jù)較多,所以在外部擴展1片程序存儲器,使除堆棧、隊列等頻繁使用的結(jié)構(gòu)外,其他類似初始化狀態(tài)字等不占用片內(nèi)存儲器,避免片內(nèi)數(shù)據(jù)阻塞。
5USB接口的硬件設(shè)計
上位機向下位機的數(shù)據(jù)傳輸通過專用USB通信控制器件PDIUSBD12實現(xiàn)。該器件支持3個USB端點,采用多種中斷方式方便于塊傳輸(Bulk)和同步傳輸(Isochronous),塊傳輸和同步傳輸?shù)臄?shù)據(jù)傳輸速率均可達1Mb/s,其與AT89C51單片機的棒口電路如圖5所示。
6軟件設(shè)計
軟件系統(tǒng)包括USB驅(qū)動固件和圖文資料處理兩部分。設(shè)備固件是設(shè)備運行的核心,采用C語言編寫。其主要功能是通過PDIUSBD12實時下傳數(shù)據(jù)至單片機。程序主要分初始化、數(shù)據(jù)處理、控制和USB通信4個模塊。設(shè)備與微機相連后,初始化模塊對設(shè)備進行初始化配置;數(shù)據(jù)處理模塊預(yù)處理前端數(shù)據(jù);控制模塊則用于控制前端硬件;而USB通信模塊負責(zé)主機與前端硬件的通信,是同件設(shè)計的關(guān)鍵。USB通信同件設(shè)計的目標是使PDIUSBD12在USB上達到最大的傳輸速率。在程序中需定義USB設(shè)備的GUID,通過USB驅(qū)動程序與USB設(shè)備連通,且需利用Windows的API函數(shù)取得USB設(shè)備的Handle。根據(jù)USB協(xié)議,任何傳輸都由主機(Host)開始。單片機進行其前臺工作,等待中斷。主機首先發(fā)令牌包給PDIUSBD12,PDIUSBD12接收到令牌包后就給單片機發(fā)中斷。單片機進入中斷服務(wù)程序,首先讀PDIUSBD12的中斷寄存器,判斷USB令牌包的類型,然后執(zhí)行相應(yīng)操作。PDIUSBD12采用SIE管理USB通信。當主機與器件進行USB通信時,會產(chǎn)生外部中斷0,通過中斷矢量寄存器判斷。Setup_packed_Int、Input_endpoint0_Int、Output_endpoint0_Int這3個中斷主要用于與主機建立連接、進行控制傳輸或中斷傳輸;Input_endpoint1_Int、Output_endpoint1_Int這兩個中斷主要在批量傳輸時使用。在同件中分別執(zhí)行不同的中斷程序?qū)崿F(xiàn)USB的數(shù)據(jù)傳輸。外部中斷0程序如下:
7結(jié)論
OLED顯示技術(shù)有著廣泛的應(yīng)用前景,其能在-40℃正常顯示并可在180°范圍內(nèi)觀看,能夠做成任何形狀,放到任意物體的表面,特別適于戶外大屏幕電子屏廣告顯示領(lǐng)域,而USB接口適用于高速數(shù)據(jù)傳輸,可用作便攜式系統(tǒng)的接口,二者的完美結(jié)合使大屏幕電子公告同步發(fā)布系統(tǒng)性能更加優(yōu)越。
更多資訊請關(guān)注:21ic模擬頻道
評論