LCD液晶顯示和接口
液晶顯示器(LCD)是一種功耗極低的顯示器件,它廣泛應(yīng)用于便攜式電子產(chǎn)品中,它不僅省電,而且能夠顯示大量的信息,如文字、曲線、圖形等,其顯示界面較之?dāng)?shù)碼管有了質(zhì)的提高。
1.LCD顯示器簡介
LCD顯示器由于類型、用途不同,其性能、結(jié)構(gòu)不可能完全相同,但其基本形態(tài)和結(jié)構(gòu)卻是大同小異。
1)LCD顯示器的結(jié)構(gòu)
液晶顯示器的結(jié)構(gòu)圖如圖7.24所示。不同類型的液晶顯示器件其組成可能會有不同,但是所有液晶顯示器件都可以認(rèn)為是由兩片光刻有透明導(dǎo)電電極的基板,夾持一個液晶層,封接成一個偏平盒,有時在外表面還可能貼裝上偏振片等構(gòu)成。

圖7.24 液晶顯示器結(jié)構(gòu)圖
現(xiàn)將構(gòu)成液晶顯示器件的三大基本部件和特點介紹如下:
(1)玻璃基板
這是一種表面極其平整的浮法生產(chǎn)薄玻璃片。表面蒸鍍有一層In2O3或SnO2透明導(dǎo)電層,即ITO膜層。經(jīng)光刻加工制成透明導(dǎo)電圖形。這些圖形由像素圖形和外引線圖形組成。因此,外引線不能進行傳統(tǒng)的錫焊,只能通過導(dǎo)電橡膠條或?qū)щ娔z帶等進行連接。如果劃傷、割斷或腐蝕,則會造成器件報廢。
(2)液晶
液晶材料是液晶顯示器件的主體。不同器件所用液晶材料不同,液晶材料大都是由幾種乃至十幾種單體液晶材料混合而成。每種液晶材料都有自己固定的清亮點TL和結(jié)晶點TS。因此也要求每種液晶顯示器件必須使用和保存在Ts~TL之間的一定溫度范圍內(nèi),如果使用或保存溫度過低,結(jié)晶會破壞液晶顯示器件的定向?qū)?;而溫度過高,液晶會失去液晶態(tài),也就失去了液晶顯示器件的功能。
(3)偏振片
偏振片又稱偏光片,由塑料膜材料制成。涂有一層光學(xué)壓敏膠,可以貼在液晶盒的表面。前偏振片表面還有一保護膜,使用時應(yīng)揭去,偏振片怕高溫、高濕,在高溫高濕條件下會使其退偏振或起泡。
2)LCD顯示器的特點
液晶顯示器有以下顯著特點。
(1)低壓微功耗:工作電壓只有3~5V,工作電流只有幾個uA/cm2。因此它成為便攜式和手持儀器儀表的顯示屏幕。
(2)平板型結(jié)構(gòu):LCD顯示器內(nèi)由兩片平行玻璃組成的夾層盒,面積可大可小,且適合于大批量生產(chǎn),安裝時占用體積小,減小了設(shè)備體積。
(3)被動顯示:液晶本身不發(fā)光,而是靠調(diào)制外界光進行顯示。因此適合人的視覺習(xí)慣,不會使人眼睛疲勞。
(4)顯示信息量大:LCD顯示器,其像素可以做得很小,相同面積上可容納更多信息。
(5)易于彩色化
(6)沒有電磁輻射:在其顯示期間不會產(chǎn)生電磁輻射,對環(huán)境無污染,有利于人體健康。
(7)壽命長:LCD器件本身無老化問題,壽命極長。
2.LCD顯示器分類
通??蓪?/span>LCD為筆段型、字符型和點陣圖形型。
(1)筆段型。筆段型是以長條狀顯示像素組成一位顯示。該類型主要用于數(shù)字顯示,也可用于顯示西文字母或某些字符。這種段型顯示通常有六段、七段、八段、九段、十四段和十六段等,在形狀上總是圍繞數(shù)字“8”的結(jié)構(gòu)變化,其中以七段顯示最常用,廣泛用于電子表、數(shù)字儀表、筆記本計算機中。
(2)字符型。字符型液晶顯示模塊是專門用來顯示字母、數(shù)字、符號等的點陣型液晶顯示模塊。在電極圖形設(shè)計上它是由若干個5 ×8或5×11點陣組成,每一個點陣顯示一個字符。這類模塊廣泛應(yīng)用于尋呼機、大哥大電話、電子筆記本等類電子設(shè)備中。
(3)點陣圖形型。點陣圖形型是在一平板上排列多行和多列,形成矩陣形式的晶格點,點的大小可根據(jù)顯示的清晰度來設(shè)計。這類液晶顯示器可廣泛用于圖形顯示如游戲機、筆記本電腦和彩色電視等設(shè)備中。
LCD還有一些其他的分類方法。按采光方式可分為自然采光,背光源采光LCD。按LCD的顯示驅(qū)動方式可分為靜態(tài)驅(qū)動,動態(tài)驅(qū)動,雙頻驅(qū)動LCD。按控制器的安裝方式可分為含有控制器和不含控制器兩類。
含有控制器的LCD又稱為內(nèi)置式LCD。內(nèi)置式LCD把控制器和驅(qū)動器用厚膜電路做在液晶顯示模塊印制底板上,只需通過控制器接口外接數(shù)字信號或模擬信號即可驅(qū)動LCD顯示。因內(nèi)置式LCD使用方便,簡潔,在字符型LCD和點陣圖形型LCD中得到廣泛應(yīng)用。
不含控制器的LCD還需另外選配相應(yīng)的控制器和驅(qū)動器才能工作。
3.8051與筆段型LCD的接口
用單片機的并行接口與筆段型LCD直接相連,再通過軟件編程驅(qū)動筆段型LCD顯示,是實現(xiàn)靜態(tài)液晶顯示器件驅(qū)動的常用方法之一,尤其適合于位數(shù)較少的筆段型LCD。圖7.25

圖7.25 筆段型接口電路
給出了8751與3位半8字筆段型LCD的接口電路,圖中通過8751的并行接口P1、P2、P3來實現(xiàn)靜態(tài)液晶顯示。
軟件編寫啟動程序的基本要求是:
(1)顯示位的狀態(tài)與背電極BP不在同一狀態(tài)上,即當(dāng)BP為1狀態(tài)時,顯示位數(shù)據(jù)為0狀態(tài);當(dāng)BP為0狀態(tài)時,顯示位數(shù)據(jù)為1狀態(tài)。
(2)不顯示位的狀態(tài)與BP狀態(tài)相同。
(3)定時間隔地將驅(qū)動信號取反,以實現(xiàn)交流驅(qū)動波形的變化。
在編程時首先要建立顯示緩沖區(qū)和顯示驅(qū)動區(qū)。比如把 DIS1,DIS2,DIS3單元設(shè)置為顯示緩沖區(qū),同時建立驅(qū)動區(qū)DRIl,DRI2,DRI3單元用來實現(xiàn)驅(qū)動波形的變化和輸出。P1,P2,P3為驅(qū)動的輸出瑞。各區(qū)與驅(qū)動輸出的對應(yīng)關(guān)系如表7.5所示。
表7.5 各區(qū)與驅(qū)動輸出的對應(yīng)關(guān)系
顯示單元 驅(qū)動單元 驅(qū)動輸出
|
位-段對應(yīng)關(guān)系
D7 D6 D5 D4 D3 D2 D1 D0
|
DIS1 DRI1 P1
DIS2 DRI2 P2
DIS3 DRI3 P3
|
4bc 1f 1g 1e 1d 1c 1b 1a
4g 2f 2g 2e 2d 2c 2b 2a
BP 3f 3g 3e 3d 3c 3b 3a
|
在編程時首先還要建立顯示字形數(shù)據(jù)庫?,F(xiàn)設(shè)定顯示狀態(tài)為“l”,不顯示狀態(tài)為“0”,可得0~9的字型數(shù)據(jù)為:5FH,06H,3BH,2FH,66H,6DH,7DH,07H,7FH,6FH。
編程的基本思路是:
(1)使用定時器產(chǎn)生交流驅(qū)動波形。在顯示驅(qū)動區(qū)內(nèi)將數(shù)據(jù)求反,然后送人驅(qū)動輸出。
(2)在顯示緩沖區(qū)內(nèi)修改顯示數(shù)據(jù),然后將BP位置“0”用以表示有新數(shù)據(jù)輸入。
(3)在顯示驅(qū)動程序中先判斷驅(qū)動區(qū)BP位是否為“1”。若是“1”,再判斷顯示區(qū)BP位是否為“0”,若為“0”,表示顯示區(qū)的數(shù)據(jù)為新修改的數(shù)據(jù),則將顯示緩沖區(qū)內(nèi)的顯示數(shù)據(jù)寫入顯示驅(qū)動區(qū)內(nèi),再輸出給驅(qū)動輸出端。否則驅(qū)動區(qū)單元內(nèi)容求反輸出。
(4)如此循環(huán)下去,實現(xiàn)了在液晶顯示器件上的交流驅(qū)動,進而達(dá)到顯示的效果。
驅(qū)動程序如下。
驅(qū)動基礎(chǔ)程序:采用定時器0為驅(qū)動時鐘,中斷程序為驅(qū)動子程序。
DIS1 EQU 30H
DIS2 EQU 31H
DIS3 EQU 32H
DRIl EQU 33H
DRI2 EQU 34H
DRI3 EQU 35H
ORG 000BH ;定時器0中斷入口
LCD: MOV TL0,#OEFH ;設(shè)置時間常數(shù)
MOV TH0,#OD8H ;掃描頻率= 50HZ
PUSH ACC ;A入“棧”
MOV A,DRI3 ;取驅(qū)動單元DRI3
JNB ACC.7,LCD1 ;判BP= 1否,否則轉(zhuǎn)
MOV A,DIS3 ;取小時單元DIS3
JB ACC.7,LCD1 ;判BP= 0否,否則轉(zhuǎn)
MOV DIR3,A ;顯示區(qū)→驅(qū)動區(qū)
SETB ACC.7 ;置BP= 1表示數(shù)據(jù)已舊
MOV DIS3,A ;寫入顯示單元
MOV DRI2,DIS2
MOV DRI1,DIS1
LJMP LCD2 ;轉(zhuǎn)驅(qū)動輸出
LCD1: MOV A,DRI3
CPL A ;驅(qū)動單元數(shù)據(jù)取反
MOV DRI3,A
MOV A,DRI2
CPL A
MOV DRI2,A
MOV A,DRI1
CPL A
MOV DRI1,A
LCD2: MOV P1,DRI1 ;驅(qū)動輸出
MOV P2,DRI2
MOV P3,DRI3
POP ACC ;A出“棧”
SETB TR0
RETI
驅(qū)動程序使用了定時器0中斷方式,定時器每20ms中斷一次,在程序中要判斷顯示驅(qū)動區(qū)BP位的狀態(tài)。當(dāng)BP= 1時,可以修改顯示驅(qū)動區(qū)內(nèi)容,這時判斷一下顯示區(qū)BP位的狀態(tài)。當(dāng)BP= 0時表示顯示區(qū)的數(shù)據(jù)已被更新。此時需要將顯示區(qū)的數(shù)據(jù)傳輸給驅(qū)動區(qū),再輸出給驅(qū)動輸出瑞。由于原BP為“l”,所以此時修改驅(qū)動區(qū)數(shù)據(jù)正好也是交流驅(qū)動的實現(xiàn)。若驅(qū)動區(qū)BP=0,或顯示區(qū)BP=1(表示數(shù)據(jù)未被修改),那么僅將驅(qū)動區(qū)數(shù)據(jù)取反,再輸出給驅(qū)動輸出瑞驅(qū)動液晶顯示器件。
在主程序中,要實現(xiàn)中斷方式驅(qū)動液晶顯示器件,需要一些初始化設(shè)置,同樣也對顯示緩沖區(qū),顯示驅(qū)動區(qū)和驅(qū)動輸出初始化。
因受篇幅限制,主程序及四位數(shù)字修改子程序不再敘述。
4.8051與字符型LCD的接口
字符型液晶顯示模塊是一類專用于顯示字母,數(shù)字,符號等的點陣型液晶顯示模塊,字符型液晶顯示模塊是由若干個5 ×8或5 ×11點陣塊組成的字符塊集。每一個字符塊是一個字符位,每一位都可以顯示一個字符,字符位之間空有一個點距的間隔起著字符間距和行距的作用;這類模塊使用的是專用于字符顯示控制與驅(qū)動的IC芯片。因此,這類模塊的應(yīng)用范圍僅局限于字符而顯示不了圖形,所以稱其為字符型液晶顯示模塊。
字符型液晶顯示驅(qū)動控制器廣泛應(yīng)用于字符型液晶顯示模塊上。目前最常用的字符型液晶顯示驅(qū)動控制器是HD44780U,最常用的液晶顯示驅(qū)動器為HD44100及其替代品。
字符型液晶顯示模塊在世界上是比較通用的,而且接口格式也是比較統(tǒng)一的,其主要原因是各制造商所采用的模塊控制器都是HD44780U及其兼容品,不管它的顯示屏的尺寸如何,它的操作指令及其形成的模塊接口信號定義都是兼容的。所以會使用一種字符型液晶顯示模塊,就會通曉所有的字符型液晶顯示模塊。
HD44780U由控制部,驅(qū)動部和接口部三部分組成。
控制部是HD44780U的核心,它產(chǎn)生HD44789U內(nèi)部的工作時鐘,控制著各功能電路的工作。控制部控制全部功能邏輯電路的工作狀態(tài),管理字符發(fā)生器CGROM和CGRAM、顯示存儲器DDRAM。HD44780U的控制部由時序發(fā)生器電路,地址指針計數(shù)器AC,光標(biāo)閃爍控制電路,字符發(fā)生器,顯示存儲器和復(fù)位電路組成。
HD44780U的驅(qū)動部具有液晶顯示驅(qū)動能力和擴展驅(qū)動能力,由并/串?dāng)?shù)據(jù)轉(zhuǎn)換電路、16路行驅(qū)動器和16位移位寄存器、40路列驅(qū)動器和40位鎖存器、40位移位寄存器和液晶顯示驅(qū)動信號輸出和液晶顯示驅(qū)動偏壓等組成。
HD44780U的接口部是HD44780U與計算機的接口,由I/O緩沖器,指令寄存器和譯碼器,數(shù)據(jù)寄存器,“忙”標(biāo)志BF觸發(fā)器等組成。
HD44780U的指令系統(tǒng)共有8條指令,限于篇幅這里不再列出。
5.字符型液晶顯示模塊接口電路
HD44780可與單片機接口,由單片機輸出直接控制HD44780及其時序。HD44780與液晶顯示器連接方框圖如圖7.26所示。

圖7.26 HD44780與液晶連接框圖
單片機與字符型LCD顯示模塊的連接方法分為直接訪問和間接訪問兩種,數(shù)據(jù)傳輸?shù)男问娇煞譃?/span>8位和4位兩種。
1)直接訪問方式
直接訪問方式是把字符型液晶顯示模塊作為存儲器或I/O接口設(shè)備直接連到單片機總線上,采用8位數(shù)據(jù)傳輸形式時,數(shù)據(jù)端DB0~DB7直接與單片機的數(shù)據(jù)線相連,寄存器選擇端RS信號和讀寫選擇端R/W信號利用單片機的地址線控制。使能端E信號則由單片機的RD和WR信號共同控制,以實現(xiàn)HD44780所需的接口時序。圖7.27給出了以存儲器訪問方式對液晶顯示驅(qū)動的控制電路。
在圖7.27中,8位數(shù)據(jù)總線與8031的數(shù)據(jù)總線直接相連,P0口產(chǎn)生的地址信號被鎖存在74LS373內(nèi),其輸出A0、A1給出了RS和RW的控制信號。E信號由RD和WR信號邏輯與非后產(chǎn)生,然后與高位地址線組成的“片選”信號選通控制。高3位地址線經(jīng)譯碼輸出打開了E信號的控制門,接著RD或WR控制信號和P0口進行數(shù)據(jù)傳輸,實現(xiàn)對字符型LCD顯示模塊的每一次訪問。在寫操作過程中,HD 44780要求E信號結(jié)束后,數(shù)據(jù)線上的數(shù)據(jù)要保持10μs以上的時間,而單片機8031的PO接口在WR信號失效后將有58μs(以12MHz晶振計算)的數(shù)據(jù)保持時間,足以滿足該項控制時間的要求。在讀操作過程中,HD44780在E信號為高電平時就將所需數(shù)據(jù)送到數(shù)據(jù)線上,E信號結(jié)束后,數(shù)據(jù)可保持20μs,這滿足了8031對該時序的要求。
單片機對字符型LCD顯示模塊的操作是通過軟件實現(xiàn)的。編程時要求單片機每一次訪問都要先對忙標(biāo)志BF進行識別,當(dāng)BE為0時,即HD 44780允許單片機訪問時,再進行下一步操作。

圖7.27 直接控制方式下8031與字符型液晶顯示模塊的接口
在圖7.27的電路下產(chǎn)生操作字符型液晶顯示模塊的各驅(qū)動子程序如下:
COM EQU 20H ;指令寄存器
DAT EQU 21H ;數(shù)據(jù)寄存器
CW_Add EQU 0F000H ;指令口寫地址
CR_Add EQU 0F002H ;指令口讀地址
DW_Add EQU 0F001H ;數(shù)據(jù)口寫地址
DR-Add EQU 0F003H ;數(shù)據(jù)口讀地址
(1)讀BF和AC值子程序
PRO: PUSH DPH
PUSH DPL
PUSH ACC
MOV DPTR,#CR_Add ;設(shè)置指令口讀地址
MOVX A,@DPTR ;讀BF和AC值
MOV COM,A ;存入COM單元
POP ACC
POP DPL
POP DPH
RET
(2)寫指令代碼子程序
PR1: PUSH DPH
PUSH DPL
PUSH ACC
MOV DPTR,#CR_Add ;設(shè)置指令口讀地址
PRll: MOVX A,@DPTR ;讀BF和AC值
JB ACC.7,PRll ;判BF=0?是,繼續(xù)
MOV A,COM ;取指令代碼
MOV DPTR,#CW_Add ;設(shè)置指令口寫地址
MOVX @DPTR,A ;寫指令代碼
POP ACC
POP DPL
POP DPH
RET
(3)寫顯示數(shù)據(jù)子程序
PR2: PUSH DPH
PUSH DPL
PUSH ACC
MOV DPTR,#CR_Add ;設(shè)置指令口讀地址
PR21:MOVX A,@DPTR ;讀BF和AC值
JB ACC.7,PR21 ;判BF=0?是繼續(xù)
MOV A,DAT ;取數(shù)據(jù)
MOV DPTR,#DW_Add ;設(shè)置數(shù)據(jù)口寫地址
MOVX @DPTR,A ;寫數(shù)據(jù)
POP ACC
POP DPL
POP DPH
RET
(4)讀顯示數(shù)據(jù)子程序
PR3: PUSH DPH
PUSH DPL
PUSH ACC
MOV DPTR,#CR_Add ;設(shè)置指令口讀地址
PR31: MOVX A,@DPTR ;讀BF和AC值
JB ACC.7,PR31 ;判BF=0?是,繼續(xù)
MOV DPTR,#DR_Add ;設(shè)置數(shù)據(jù)口讀地址
MOVX A,@DPTR ;讀數(shù)據(jù)
MOV DAT,A ;存入DAT單元
POP ACC
POP DPL
POP DPH
RET
(5)初始化子程序
INT: MOV A,#30H ;工作方式設(shè)置指令代碼
MOV DPTR,#CW_Add ;指令口地址設(shè)置
MOV R2,#03H ;循環(huán)量=3
INT1: MOVX @DPTR,A ;寫指令代碼
LCALL DELAY ;調(diào)延時子程序
DJNZ R2,INT1
MOV A,#38H ;設(shè)置工作方式(8位總線)
MOV A,#28H ;設(shè)置工作方式(4位總線)
MOVX @DPTR,A
MOV COM,#28H ;以4位總線形式設(shè)置
LCALL PR1
MOV COM,#01H ;清屏
LCALL PR1
MOV COM,#06H ;設(shè)置輸入方式
LCALL PR1
MOV COM,#OFH ;設(shè)置顯示方式
LCALL PRI
RET
DELAY:…… ;延時子程序
RET
以上給出了8位數(shù)據(jù)總線形式的接口電路及驅(qū)動軟件。4位數(shù)據(jù)總線形式是應(yīng)用于4位計算機的接口。在8031上應(yīng)用4位數(shù)據(jù)線是將數(shù)據(jù)總線高4位認(rèn)為是字符型液晶顯示模塊的數(shù)據(jù)總線,數(shù)據(jù)總線的低4位無用,這樣圖7.27的電路不變就可以仿真出4位計算機對字符型液晶顯示模塊的接口。因受篇幅限制,這里不再敘述,請讀者查閱有關(guān)參考資料。
2)間接訪問方式
間接控制方式是計算機把字符型液晶顯示模塊作為終端與計算機的并行接口連接,計算機通過對該并行接口的操作間接實現(xiàn)對字符型液晶顯示模塊的控制。圖7.28以8031的P1和P3接口作為并行接口與字符型液晶顯示模塊連接的實用接口電路。圖中電位器為V0口提供可調(diào)的驅(qū)動電壓,用以實現(xiàn)顯示對比度的調(diào)節(jié)。在寫操作時,使能信號E的下降沿有效,在軟件設(shè)置順序上,先設(shè)置RS,R/W狀態(tài),再設(shè)置數(shù)據(jù),然后產(chǎn)生E信號的脈沖,最后復(fù)位RS和R/W狀態(tài)。在讀操作時,使能信號E的高電平有效,所以在軟件設(shè)置順序上,先設(shè)置RS和R/W狀態(tài),再設(shè)置E信號為高,這時從數(shù)據(jù)口讀取數(shù)據(jù),然后將E信號置低,最后復(fù)位RS和R/W狀態(tài)。間接控制方式通過軟件執(zhí)行產(chǎn)生操作時序,所以在時間上是足夠滿足要求的。因此間接控制方式能夠?qū)崿F(xiàn)高速計算機與字符型液晶顯示模塊的連接。因受篇幅限制,其軟件的編制過程此處不再敘述。

圖7.28 間接控制方式下8031與字符型液晶顯示模塊的接口
6.圖形液晶顯示接口
圖形液晶顯示器可顯示漢字及復(fù)雜圖形,廣泛應(yīng)用于游戲機、筆記本電腦和彩色電視等設(shè)備中。圖形液晶顯示一般都需與專用液晶顯示控制器配套使用,屬于內(nèi)置式LCD。常用的圖形液晶顯示控制器有SED1520,HD61202,T6963C,HD61830A/B,SED1330/1335/1336/E1330,MSM6255,CL-GD6245等。各類液晶顯示控制器的結(jié)構(gòu)各異,指令系統(tǒng)也不同,但其控制過程基本相同。讀者如有興趣,可參閱有關(guān)參考資料。