基于TLC5941的全彩色LED大屏幕驅(qū)動設(shè)計(jì)
1 引言
近年來,隨著計(jì)算機(jī)技術(shù)、大規(guī)模集成電路和專用元器件的飛速發(fā)展,256級灰度的全彩色led大顯示屏在國內(nèi)發(fā)展迅速,但是目前其顯示效果并不理想:一方面,led的發(fā)光效率受制造工藝的影響表現(xiàn)出固有的差異,而且這種差異還隨時間發(fā)生變化,這樣由大量led組成的大屏幕顯示時會出現(xiàn)一些隨機(jī)的暗斑或亮斑,嚴(yán)重影響顯示要求,需要采用在線的點(diǎn)校正消除這種影響,另一方面,現(xiàn)有的全彩色大屏幕一般亮度等級不足,即便采用了非線性灰度控制技術(shù),在低亮度等級上表現(xiàn)色彩的能力仍然較差,顯示的層次感不強(qiáng),由亮度等級不足導(dǎo)致的另一個問題是進(jìn)行γ校正不容易,從而使全彩色led大顯示屏產(chǎn)生一定的顏色失真。
ti公司的最新推出的tlc5941驅(qū)動芯片具有點(diǎn)校正和高亮度等級的特點(diǎn),由他組成的大屏幕驅(qū)動方案一定程度上解決了上述問題,可以構(gòu)成高性能的顯示系統(tǒng)。
2 tlc5941芯片介紹
2.1 芯片特點(diǎn)
tlc5941共有28個引腳,是一個16通道的led恒流驅(qū)動器,能夠同時驅(qū)動16個led,每通道最大驅(qū)動能力80ma,每個通道可以通過pwm方式根據(jù)內(nèi)部亮度寄存器的值進(jìn)行4096級亮度控制,內(nèi)部每個通道亮度寄存器的長度是12位,另外,流動每個通道led的驅(qū)動電路由內(nèi)部6位的點(diǎn)校正寄存器的值進(jìn)行64級控制,而且驅(qū)動電流的最大值可通過片外電阻設(shè)定。
64級電流控制提供了led點(diǎn)亮度校正的能力,4096級亮度調(diào)整則保證了即使在較低的亮度等級小,點(diǎn)陣中的每個點(diǎn)也有多達(dá)256級的灰度表示,從而紅綠藍(lán)全彩屏可有16m色的色彩表達(dá)能力,這兩點(diǎn)對于高質(zhì)量的彩色大屏幕顯示是額外重要的。
相對于傳統(tǒng)的彩色大屏幕顯示系統(tǒng),設(shè)計(jì)中利用可編程邏輯芯片(或高速cpu)集中產(chǎn)生pwm進(jìn)行亮度控制,采用tlc5941后,由于驅(qū)動芯片tlc5941完成了pwm亮度控制,可編程邏輯芯片(或高速cpu)只需要處理緩存管理、亮度和點(diǎn)校正數(shù)據(jù)的輸出,設(shè)計(jì)復(fù)雜度降低,而且由于pwm的亮度控制與數(shù)據(jù)串行移出無關(guān),可以很方便地獲得較高的幀頻,取得很好的動態(tài)顯示效果。
2.2 管腳功能
tlc5941的所有內(nèi)部數(shù)據(jù)寄存器,亮度寄存器,點(diǎn)校正寄存器和錯誤狀態(tài)信息都是通過串行接口存取的,最大串行時鐘效率為30mhz。
tlc5941的串行接口方式類似于74hc595,接口部分由5根信號線組成。
mode(模式信號):mode=0是亮度信號輸入模式,mode=1點(diǎn)校正信號輸入模式。
sclk(串行時鐘),在每個sclk的上升沿,當(dāng)mode=0輸入數(shù)據(jù)和輸出數(shù)據(jù)移入和移出內(nèi)部192位(16通道×12)的亮度串行移位寄存器,當(dāng)mode=1輸入數(shù)據(jù)和輸出數(shù)據(jù)移入和移出內(nèi)部96(16通道×6)位的點(diǎn)校正串行移位寄存器。
sout:串行數(shù)據(jù)輸出。
sin:串行數(shù)據(jù)輸入。
xlat:數(shù)據(jù)鎖存,在xlat的上升沿,如果mode=0,亮度串行移位寄存器鎖存到亮度控制寄存器,隨機(jī)控制亮度pwm輸出,如果mode=1,點(diǎn)校正串行移位寄存器鎖存到點(diǎn)校正控制寄存器,控制電流的輸出。
為了保障彩色大屏幕的可靠運(yùn)行,tlc5941提供了每一路led開路和過溫檢測的能力,管腳xerr是集電極開路輸出,用于出錯時報(bào)警,16個通道中無論哪個通道有錯誤發(fā)生,xerr就會被拉到低電平,通過查詢芯片的內(nèi)部狀態(tài)信息,就可以知道哪一路出現(xiàn)故障,系統(tǒng)中所有tlc5941的xerr管腳可以接到一起,通過上拉電阻接到高電平,通過監(jiān)控這個信號,系統(tǒng)可以在運(yùn)行過程中進(jìn)行自我診斷。
另外tlc5941還提供了gclk管腳,輸入一個時鐘信號可以同步pwm的產(chǎn)生。
3 基于tlc5941的動態(tài)掃描驅(qū)動電路
本設(shè)計(jì)對象是640×480的全彩顯示系統(tǒng),這里只介紹他的驅(qū)動部分,整個屏由4塊子屏組成,每一塊子屏管理640×120象素大小的范圍,都有單獨(dú)的驅(qū)動電路,由于是室內(nèi)屏,驅(qū)動設(shè)計(jì)采用動態(tài)1/8掃描驅(qū)動方式。驅(qū)動電路的控制由可編程邏輯器件epm1270(altera)實(shí)現(xiàn),為了提高幀頻,串行數(shù)據(jù)采用15路并行輸出的方法,每路對640×8象素大小的范圍進(jìn)行刷新,圖1中給出的是子屏驅(qū)動中單路的電路框圖。
這里使用tlc5941級聯(lián)組成led點(diǎn)陣的列驅(qū)動,行驅(qū)動部分由74hc138和stm4953(pmos管,4.5a)構(gòu)成。
epm1270芯片負(fù)責(zé)管理顯示緩存,處理外部總線接口部分和維持led點(diǎn)陣的動態(tài)掃描過程,epm1270內(nèi)部模塊結(jié)構(gòu)如圖2所示。
為了防止led動態(tài)掃描過程中對寄存器的訪問與外部總線在更新顯示數(shù)據(jù)時訪問寄存器之間產(chǎn)生沖突,這里也是采用了雙緩存的結(jié)構(gòu),當(dāng)led掃描過程訪問的是一片存儲器,暴露在總線接口的就是另一片存儲器,外部接口的特定的掃描控制寄存器操作時,引起兩片寄存器的交換,同時顯示內(nèi)容也得以更新,存儲器采用兩片靜態(tài)ram——idt71v424(512k×8),epm1270與存儲器的接口低8位采用地址數(shù)據(jù)復(fù)用以節(jié)省epm1270的i/o管腳。
存儲器中前26k開始存儲的是每點(diǎn)的色彩信息,每象素3個字節(jié)24位表示顏色,每個字節(jié)分別對應(yīng)于一個象素的紅綠藍(lán)3個象素的彩色亮度值,后256k開始存放的是經(jīng)過γ校正修正后的點(diǎn)校正數(shù)據(jù)。
整屏的亮度由epm1270擴(kuò)展的亮度寄存器控制,每個tlc5941寫入時,epm1270控制先從當(dāng)前象素對應(yīng)的存儲器空間讀出每個顯示單元的色素值,再與亮度寄存器值運(yùn)算后得到12位的每通道tlc5941的亮度值(控制每個象素的亮度和色彩),通過并/串轉(zhuǎn)換后輸出,同時保持mode=0;輸出亮度后,從后256k的對應(yīng)空間讀取6位點(diǎn)校正數(shù)據(jù),并/串轉(zhuǎn)換后輸出,同時保持mode=1,這樣完成了一個通道數(shù)據(jù)的輸出,將一行對應(yīng)所有的通道數(shù)據(jù)輸出完畢后,暫停串行時鐘,置mode=0,在xlat腳產(chǎn)生一個正脈沖,再置mode=1,在xlat腳產(chǎn)生正脈沖,分別將數(shù)據(jù)鎖存入tlc5941內(nèi)部對應(yīng)的控制寄存器中,一行數(shù)據(jù)輸出完畢。
圖3中給出具體過程。
4 結(jié)語
采用verilog語言對epm1270進(jìn)行邏輯設(shè)計(jì),綜合后占用芯片資源的79%,利用上述設(shè)計(jì)構(gòu)建的彩色大屏幕系統(tǒng)刷新頻率達(dá)到60hz,通過γ校正和點(diǎn)校正,全屏各象素點(diǎn)亮度均勻,層次感很強(qiáng),達(dá)到了設(shè)計(jì)要求,這個基于tlc5941的全彩色大屏幕驅(qū)動方案聯(lián)機(jī)屏和脫機(jī)屏都可以使用,實(shí)踐證明具有良好的顯示效果。
評論