在嵌入式系統(tǒng)開發(fā)過程中,,顯示輸出控制是一項重要的研究內(nèi)容。常用的顯示輸出器件有發(fā)光二極管(LED),、數(shù)碼管及液晶顯示器等,。 LED及數(shù)碼管的顯示輸出控制相對比較簡單,相關(guān)文獻介紹的也比較詳細,。在液晶顯示器中,,圖形點陣形液晶顯示器的硬件結(jié)構(gòu)比較復(fù)雜,顯示輸出控制也不太容易掌握,,雖然部分文獻進行了一定介紹,,但面向的對象往往是已有一定開發(fā)經(jīng)驗的使用人員,而針對初學(xué)者進行專題論述的文獻卻不多。鑒于此,,文章以基于ST7920控制器的128×64中文字庫點陣屏為例,,進行了開發(fā)應(yīng)用研究分析,以便初學(xué)者進行參考學(xué)習(xí),。
1 圖形點陣顯示控制原理
圖1為12864液晶屏圖形點陣顯示原理的示意圖,。由圖可見,液晶屏在x方向有128列,,在y方向有64行,因此整個液晶屏有128×64個像素,。每個像素有亮與滅兩種狀態(tài),,以黃綠屏黑字為例,若某個像素亮則該像素被黑色填充,,這樣不同像素的亮與滅的組合就可顯示不同的點陣型字符或圖案,。如圖1中的黑色像素組合就可顯示一個漢字“十”字。
圖1 12864液晶屏圖形點陣顯示原理
對于字符顯示來說,,可以分為16×8像素半寬字符和16×16像素中文字符兩種點陣顯示,。在液晶顯示屏上一個半寬字符占據(jù)的像素點數(shù)為16×8個,中文字符的像素點數(shù)為16×16個,。12864點陣液晶屏能顯示32×8個半寬字符或16×4個中文字符,。在顯示緩存中有一種叫繪圖RAM的緩存來對點陣型字符進行控制,該RAM簡寫為GDRAM.GDRAM維護了一個和液晶屏像素相對應(yīng)的二維繪圖緩沖空間,,該表的水平地址為0至16,,垂直地址為0至64.GDRAM的每一個水平地址對應(yīng)了圖1中的16個列,每一個垂直地址對應(yīng)圖1中的一行,。
在更改繪圖RAM時,,由擴充指令設(shè)置GDRAM地址,先垂直地址后水平地址(連續(xù)2個字節(jié)的數(shù)據(jù)來定義垂直和水平地址),,再2個字節(jié)的數(shù)據(jù)給繪圖RAM(先高8位后低8位),。圖1中的漢字“十”字在GDRAM中的編碼如表1所示。
2 液晶顯示控制指令
編程人員在向液晶顯示緩存寫入要顯示的編碼數(shù)據(jù)時,,須在一系列液晶顯示控制指令的控制下才能完成,。表2是基于ST7920控制器的128×64中文字庫點陣屏液晶顯示控制的主要指令表。由該表可以看出,,顯示控制指令要受到控制信號RS,、R/W的控制。D0至D7為外部CPU與液晶內(nèi)部處理器之間交互數(shù)據(jù)的總線,,交互的數(shù)據(jù)包括上述指令及顯示數(shù)據(jù),。對于各指令的詳細描述在相關(guān)數(shù)據(jù)手冊中都有具體介紹,在進行液晶驅(qū)動開發(fā)之前要進行認真學(xué)習(xí)研究,只有熟悉了各指令的意義及取值后才能進行程序的編寫,。
3 液晶顯示控制時序
進行液晶驅(qū)動開發(fā)就象利用英語與外賓交流,。要想與外賓交流就必須先熟悉英語的詞組,不同的詞組代表了不同的意思,。而只熟悉相關(guān)詞組,,但不能將其按著英語的詞組先后搭配順序進行表達,則外賓也不能理解我們要表達的意思,。這里詞組就類似于上述的顯示控制指令,,外賓就類似于液晶顯示屏,而詞組的先后搭配順序則指的是液晶顯示控制的時序,。簡單來說,,控制時序就是為了使液晶單元能夠正常工作,相應(yīng)的控制信號取值高低的先后搭配順序,。
圖2是ST7920控制的128×64液晶的8位并口寫操作時序圖,。由圖2可見,如果想通過8位并口DB0~DB7進行寫操作,,需要RS,、R/W、E三種控制信號的聯(lián)合控制,,首先RS根據(jù)并口上的數(shù)據(jù)是指令還是顯示數(shù)據(jù)置0或置1,,其次,由于是寫數(shù)據(jù)R/W要置0,,之后使能信號E要置1,,當上述三種控制信號置位穩(wěn)定后,8位并口DB0~DB7總線上的信息就可寫入液晶屏,,寫入完畢后要將使能信號E置0.需要說明的是在處理相關(guān)時序時要注意各控制信號高低電平變換期間的不穩(wěn)定期,,寫操作要盡量避開這段時間。
圖2 8位并口寫操作時序圖
4 液晶使用舉例
4.1 MCU接口
下面以89C52單片機控制液晶顯示屏為例,,介紹一下MCU與液晶的連接方法及主要的程序代碼,。該程序運行后會在液晶屏上顯示“ST7920顯示控制”等字符。
圖3為8位并口MCU控制接口圖,。由圖3可見,,MCU的P1口與液晶的DB0至DB7相連,作為指令與顯示數(shù)據(jù)的總線通道,;P3.0,、P3.1、P3.2分別與液晶的RS,、R/W,、E相連,構(gòu)成液晶顯示控制信號的通道。
圖3 8位并口MCU控制接口圖
4.2 程序主要代碼
?。?)定義
?。?)忙檢測函數(shù)
(3)寫操作函數(shù)
?。?)初始化
?。?)DDRAM地址設(shè)定函數(shù)
(6)字符串顯示函數(shù)
?。?)主函數(shù)
5 結(jié)束語
文章主要從圖形點陣顯示控制原理,、液晶顯示控制指令、液晶顯示控制時序幾個方面進行了分析,,主要圍繞基于ST7920控制器的128× 64中文字庫點陣屏的開發(fā)使用方法而展開研究,,并以該型液晶為例給出了嵌入式液晶顯示應(yīng)用的開發(fā)使用步驟:第一步,理解圖形點陣顯示控制原理,;第二步,,熟悉液晶顯示控制指令,;第三步,,分析液晶顯示控制時序;第四步,,應(yīng)用程序編寫,。