基于CPLD的LED顯示屏控制系統(tǒng)的設(shè)計
摘要:文章主要闡述以單片機(jī)+CPLD的方案進(jìn)行的LED大屏幕顯示控制系統(tǒng)的設(shè)計。以單片機(jī)作為系統(tǒng)的數(shù)據(jù)通信控制和擴(kuò)展其它功能,CPLD作為顯示屏正常動態(tài)顯示的硬件控制,采用模塊化的設(shè)計,使結(jié)構(gòu)簡單,修改功能方便,同時充分利用了單片機(jī)實現(xiàn)多任務(wù)的特點(diǎn),便于功能擴(kuò)展,硬件電路簡單。
本文引用地址:http://m.butianyuan.cn/article/168140.htmLED大屏幕顯示屏以亮度高、工作電壓低、功耗小、小型化、壽命長、耐沖擊和性能穩(wěn)定、組態(tài)靈活等優(yōu)點(diǎn)迅速成長為平板顯示的主流產(chǎn)品,在信息顯示領(lǐng)域得到了廣泛的應(yīng)用。
LED大屏幕顯示屏主要由點(diǎn)陣或象素陣列、控制系統(tǒng)和傳輸接口以及相應(yīng)的應(yīng)用軟件四部分構(gòu)成。如圖1所示控制系統(tǒng)負(fù)責(zé)接收、轉(zhuǎn)換和處理各種外部信號以一定的規(guī)律和方式將信號傳送到顯示屏上顯示。作為顯示屏的核心部分,控制系統(tǒng)直接決定了顯示屏的顯示效果,也決定了顯示屏性能的優(yōu)劣(見圖1)。
圖1控制系統(tǒng)框圖
1控制系統(tǒng)的硬件設(shè)計
控制系統(tǒng)的實現(xiàn)方案很多,本設(shè)計采用單片機(jī)+CPLD的方案進(jìn)行設(shè)計(如圖2)。
圖2控制系統(tǒng)的硬件框圖
單片機(jī)主要實現(xiàn)通信控制,既可以將存儲器中的數(shù)據(jù)讀取出來送往PC機(jī),也可以將PC機(jī)編輯好的信息經(jīng)過處理后存于存儲器中,以方便控制系統(tǒng)的下一步處理。屏幕掃描邏輯采用CPLD為核心,CPLD的功能是從存儲器中讀取數(shù)據(jù),將數(shù)據(jù)輸送到屏體上,同時產(chǎn)生控制信號(見圖2)。
1。1主控單片機(jī)電路
主CPU采用AT89C51單片機(jī),外擴(kuò)一片74LS573實現(xiàn)數(shù)據(jù)和地址總線的分離,用以與RAM進(jìn)行信息通訊,串口與PC上位機(jī)連接。單片機(jī)電路主要負(fù)責(zé)整個系統(tǒng)的初始化、顯示方式的處理、以及與PC機(jī)的通信等工作。主單片機(jī)電路原理圖如圖3。
圖3單片機(jī)原理電路
1。2復(fù)雜可編程邏輯器件CPLD
CPLD復(fù)雜可編程邏輯器件是一種具有豐富的可編程引腳的可編程邏輯器件,不僅可實現(xiàn)常規(guī)的邏輯器件功能,還可以實現(xiàn)復(fù)雜而獨(dú)特的時序邏輯功能。而且具有在系統(tǒng)可編程功能,便于進(jìn)行系統(tǒng)設(shè)計和現(xiàn)場對系統(tǒng)進(jìn)行修改、調(diào)試、升級。本設(shè)計中CPLD就是用來實現(xiàn)控制系統(tǒng)中的時序產(chǎn)生部分,并且協(xié)助對兩片輔助RAM進(jìn)行讀寫。結(jié)構(gòu)示意圖如圖4所示。
圖4CPLD的通信示意圖
2屏幕掃描邏輯的設(shè)計
2。1屏幕掃描邏輯的設(shè)計思路
LED顯示屏驅(qū)動電路主要采用動態(tài)掃描顯示,動態(tài)掃描顯示是在一個比較短的時間周期內(nèi)將LED顯示屏上需要發(fā)光的像素逐行分別點(diǎn)亮。動態(tài)掃描顯示方式采用多行(16行即1/16掃描方式)的同名列共用一套列驅(qū)動器。
行掃描電路由譯碼器構(gòu)成,逐行掃描信號。從第一行開始,按順序依次對各行進(jìn)行掃描。一旦該行選通,這一行上的相應(yīng)像素就可以由列驅(qū)動信號點(diǎn)亮。當(dāng)一行的掃描持續(xù)時間結(jié)束后,下一行以同樣的方法進(jìn)行顯示。在1/16掃描方式中,就是把16行都掃過一遍之后,又從第一行開始下一個周期的掃描。
屏幕刷新頻率關(guān)系到屏幕顯示效果的好壞,從數(shù)據(jù)更新的角度來講,掃描時鐘頻率越高,留給數(shù)據(jù)更新的時間就越少,不利于系統(tǒng)刷新;掃描時鐘頻率越低,掃描時間越長,將引起屏幕閃爍。一般來講,這個刷新頻率不能低于50HZ(幀頻),否則,會產(chǎn)生屏幕閃爍現(xiàn)象。
2。2主控電路的程序流程
主單片機(jī)的主要功能是接受上位機(jī)下載的顯示數(shù)據(jù),向屏體提供顯示數(shù)據(jù)和各種控制信號,軟件由主程序和中斷服務(wù)程序兩部分組成,主程序負(fù)責(zé)進(jìn)行顯示,按要求讀出顯示數(shù)據(jù)并產(chǎn)生需要的控制信號;中斷服務(wù)程序解決與上位機(jī)進(jìn)行通信的問題(見圖5、6)。
圖5主單片機(jī)控制程序圖
2。3CPLD的程序設(shè)計框圖
對CPLD的程序編寫采用模塊化編程方式。整個程序由數(shù)據(jù)發(fā)生模塊、地址譯碼模塊、移位時鐘發(fā)生模塊、行選掃描模塊、列驅(qū)動寄存模塊等組成。程序結(jié)構(gòu)如圖6所示。
圖6CPLD的模塊化設(shè)計框圖
3結(jié)語
本設(shè)計采用以單片機(jī)89C51為基礎(chǔ),結(jié)合CPLD簡化了系統(tǒng)結(jié)構(gòu),減小了控制板面積,降低了系統(tǒng)的功耗和干擾,提高了系統(tǒng)的穩(wěn)定性,并具有分布靈活、擴(kuò)展方便等優(yōu)點(diǎn),使調(diào)試和維修變得更加方便。CPLD具有在線可編程的功能,通過軟件對CPLD重新配置,可以實現(xiàn)對不同規(guī)格的控制,使系統(tǒng)具有通用性和擴(kuò)展性。
評論