NOKIA移動(dòng)電話液晶顯示模塊LPH7366原理及其應(yīng)用
摘要:LPH7366是一種低功耗、串行通信接口液晶顯示模塊,可廣泛應(yīng)用于移動(dòng)電話或便攜式設(shè)備的液晶顯示系統(tǒng)中。文中介紹了LPH7366顯示模塊的功能原理及操作方式,給出了基于MCS51單片機(jī)的控制軟件程序。 關(guān)鍵詞:液晶顯示;移動(dòng)電話;單片機(jī);LPH7366 1 引言 LPH7366是NOKIA公司生產(chǎn)的可用于其6150、6100等系列移動(dòng)電話的液晶顯示模塊,國(guó)內(nèi)廠家也生產(chǎn)有類似的兼容產(chǎn)品。該產(chǎn)品除應(yīng)用于移動(dòng)電話外,也可廣泛應(yīng)用于各類便攜式設(shè)備的顯示系統(tǒng)。與其它類型的產(chǎn)品相比,該模塊具有以下特點(diǎn): ●采用串行接口與主處理器進(jìn)行通信,接口信號(hào)線數(shù)量大幅度減少,包括電源和地在內(nèi)的信號(hào)線僅有9條。 ●采用多種串行通信協(xié)議進(jìn)行數(shù)據(jù)通信(如MCS51單片機(jī)的串口模式0以及SPI等),傳輸速率高達(dá)4Mbps,可全速寫(xiě)入顯示數(shù)據(jù),無(wú)等待時(shí)間。 ●可通過(guò)導(dǎo)電斑馬條連接模塊與印制版,而不用連接電纜,用模塊上的金屬鉤可將模塊固定到印制板上,因而非常便于安裝和更換。 ●LCD控制器/驅(qū)動(dòng)器芯片已綁定到LCD晶片上,模塊的體積很小。 ●采用低電壓供電,正常顯示時(shí)的工作電流在200μA以下,且具有掉電模式。 LPH7366的這些特點(diǎn)非常適合于電池供電的便攜式通信設(shè)備和測(cè)試設(shè)備中。 LPH7366液晶顯示模塊采用Philips公司生產(chǎn)的PCD8544芯片為其內(nèi)部控制器,可在單片IC上同時(shí)實(shí)現(xiàn)LCD的控制和驅(qū)動(dòng)功能以及LCD電源和偏置電壓產(chǎn)生功能。該IC具有很高的集成度,它不需要其它元件就可實(shí)現(xiàn)與微處理器的連接與通信。 LPH7366的引腳功能如下: SDIN:串行數(shù)據(jù)輸入線; SCLK:串行時(shí)鐘輸入,速率為0.0~4.0Mbps; D/ C:模式選擇,該端為高電平時(shí)輸入控制命令,為低電平輸入顯示數(shù)據(jù); SCE:芯片使能,低有效; OSC:外部時(shí)鐘輸入端,當(dāng)使用內(nèi)部時(shí)鐘時(shí),該引腳接地; RES:復(fù)位輸入端,低電平可復(fù)位控制器; VLCD:LCD電源升壓電容接入端,接10μF電容可用于產(chǎn)生LCD工作電壓; VDD1,VDD2:電源輸入端,電壓為2.7~3.3V; VSS:電源地。 3.1 DDRAM尋址模式 模塊控制器PCD8544內(nèi)有48×84bit顯示數(shù)據(jù)存儲(chǔ)器DDRAM(Display Data RAM),因而具有矩陣式圖形顯示功能。通過(guò)串行接口命令可直接訪問(wèn)該存儲(chǔ)器,以更新顯示數(shù)據(jù)??刂破鲀?nèi)部處理總線采用8b寬度,因而可通過(guò)DDRAM組成6×84b的矩陣。整個(gè)顯示數(shù)據(jù)區(qū)可劃分為6行,每行84個(gè)字節(jié)。 每個(gè)顯示數(shù)據(jù)字節(jié)由行地址和列地址共同尋址,行地址范圍為Y0~Y5,列地址范圍為X0~X83。通過(guò)修改行、列地址的指針可訪問(wèn)任意字節(jié)的顯示數(shù)據(jù)。此外,PCD8544內(nèi)部還設(shè)置了地址指針自動(dòng)增加功能,這樣,每次顯示數(shù)據(jù)字節(jié)寫(xiě)入后,指針會(huì)自動(dòng)尋址跳到下一字節(jié),從而加快顯示速度。地址指針自動(dòng)增加功能有如下兩種模式: (1)垂直尋址方式(逐列顯示模式) 這種尋址模式如圖1所示,當(dāng)尋址控制位V為1時(shí),每次寫(xiě)入顯示數(shù)據(jù)后,行地址指針Y增1,Y到5后自動(dòng)清零,列地址X增1,并尋址到下一列。當(dāng)尋址到最后一行(Y為5)的最后一列(X=83)時(shí),行、列地址均自動(dòng)清零,并返回到首行首列; (2)水平尋址方式(逐行顯示模式) 這種尋址模式的示意圖如圖2所示,與垂直尋址方式類似,當(dāng)尋址控制位V為0時(shí),每次寫(xiě)入顯示數(shù)據(jù)后X增1,當(dāng)X為83后自動(dòng)清零,Y增1,尋址到下一行。當(dāng)尋址到最后一行(Y為5)的最后一列(X=83)時(shí),行、列地址均自動(dòng)清零,并返回到首行首列。 3.2 控制指令和數(shù)據(jù)格式 對(duì)液晶控制器的訪問(wèn)分為控制指令和顯示數(shù)據(jù)兩種操作模式,兩種模式可由D/ C引腳來(lái)控制。當(dāng)D/ C為高電平時(shí),表明當(dāng)前寫(xiě)入的字節(jié)是顯示數(shù)據(jù),當(dāng)D/ C為低電平時(shí),表明當(dāng)前寫(xiě)入的字節(jié)是控制指令。在發(fā)送每個(gè)字節(jié)最后一個(gè)比特時(shí),可由微處理器讀取D/ C引腳的狀態(tài),其工作時(shí)序如圖3所示。在寫(xiě)入每個(gè)顯示數(shù)據(jù)后,地址指針會(huì)自動(dòng)增加,因此在設(shè)定了起始指針后,可連續(xù)寫(xiě)入顯示數(shù)據(jù)。控制指令和顯示數(shù)據(jù)均由8比特組成,MSB位首先發(fā)送,在每個(gè)SCLK的上升沿,SDIN被采樣。 指令和數(shù)據(jù)可以按任意需要的先后順序?qū)懭搿.?dāng)SCE為高時(shí),控制器的串行接口被初始化,此時(shí)由于SCLK以及SDIN引腳的變化不會(huì)對(duì)控制器產(chǎn)生任何作用,因此,串行接口不會(huì)消耗電能。由于系統(tǒng)在SCE的下降沿使能串行口,因此,在該引腳保持低電平期間,可對(duì)串行口進(jìn)行操作。 3.3 模塊控制器指令集 LPH7366模塊控制器的指令集分為基本指令集和擴(kuò)展指令集,可通過(guò)修改功能設(shè)置控制寄存器中的H標(biāo)志位來(lái)選擇使用的指令集。當(dāng)H為0時(shí),選擇基本指令集;當(dāng)H為1時(shí),選擇擴(kuò)展指令集。但功能設(shè)置控制寄存器及寫(xiě)入數(shù)據(jù)寄存器不受此標(biāo)志影響。LPH7366的基本指令集包含下列指令: (1)設(shè)置顯示配置; (2)設(shè)置顯示存儲(chǔ)器DDRAM的行地址; (3)設(shè)置顯示存儲(chǔ)器DDRAM的列地址; 擴(kuò)展指令集包含下列指令: (1)設(shè)置溫度系數(shù); (2)設(shè)置偏置系統(tǒng); (3)設(shè)置工作電壓寄存器。 表1給出了模塊控制器指令集標(biāo)志位的含義,表2是對(duì)該指令集的詳細(xì)描述。該液晶模塊的工作電壓可由軟件設(shè)置,其數(shù)值依賴于所選擇的液晶。模塊溫度系數(shù)、偏置電壓的工作原理及設(shè)置方法可參見(jiàn)有關(guān)參考文獻(xiàn),用戶可根據(jù)顯示的效果進(jìn)行調(diào)整,本文的設(shè)置僅作參考。
表2 PCD8544指令集
4 與單片機(jī)的接口及顯示編程 LPH7366顯示模塊可與多種串行接口進(jìn)行通信,下面介紹其與MCS51單片機(jī)的通信接口方法。顯示模塊的電源輸入VDD1、VDD2通常連到一起接到2.7~3.3V直流電源上,VLCD與電源地之間應(yīng)接10μF電解電容。使用內(nèi)部時(shí)鐘時(shí),應(yīng)將OSC接地。圖4所示是單片機(jī)與LPH7366顯示模塊的接口圖。 如果單片機(jī)的工作電壓為5V,則需在連接線中串入100Ω左右的電阻,而如果單片機(jī)的工作電壓為3V,則可直接連接。工作時(shí)?將單片機(jī)串行口設(shè)置為模式0,并通過(guò)向SBUF寄存器寫(xiě)入數(shù)據(jù)來(lái)完成8位串行數(shù)據(jù)的發(fā)送,RXD用以輸出串行數(shù)據(jù),TXD則產(chǎn)生串行時(shí)鐘,其余控制引腳可利用P1或P3口的I/O線產(chǎn)生控制信號(hào)。以下代碼為顯示編程范例,運(yùn)行該程序后?屏幕上可顯示大寫(xiě)的‘PH’字符。 define uchar unsigned char define cflag 0x00 define dflag 0x01 define set_xadr 0x80 define set_yadr 0x40 sbit SCK=P3^0; sbit SDIN=P3^1; sbit SCE=P1^0; sbit DC=P1^1; sbit RES=P1^2; char_table[8]= { 0x1f,0x05,0x07,0x00, /*字符‘P'點(diǎn)陣*/ 0x1f,0x04,0x1f,0x00, /*字符‘H'點(diǎn)陣*/ };? main { uchar i; uchar x,y; /*定義x,y地址指針*/ mode_initiation(); x=0; y=0; write_byte(cflag,set_xadr + x); write_byte(cflag,set_yadr + y); for(i=0;i<8;i++){ write_byte(dflag,char_table[i]);?? } } 模式初始化函數(shù) void mode_initiation(void) { ES=0; RES=1; /*復(fù)位液晶控制器*/; SCON=0x02; /*設(shè)置串行口為模式0*/; write_byte(cflag,0x21); /*PD=0,V=0,選擇擴(kuò)展指令集*/ write_byte(cflag 0x10); /*設(shè)置LCD工作電壓*/ write_byte(cflag 0x20); /*PD=0,V=0,選擇基本指令集*/ write_byte(cflag 0x0c); /*設(shè)置顯示正常的工作模式*/ } 寫(xiě)入數(shù)據(jù)字節(jié) void write_byte(uchar f,uchar b) { if(f==0)DC=0; else DC=1; SCE=0 SBUF=b; TI=0;);?? SCE=1 } 5 結(jié)束語(yǔ) 由于LPH7366現(xiàn)已可以大量生產(chǎn),因此?該液晶顯示模塊的價(jià)格非常低廉,而且由于其具有結(jié)構(gòu)緊湊、耗電少、操作簡(jiǎn)便等特點(diǎn),因而非常適合于便攜式設(shè)備的應(yīng)用和開(kāi)發(fā)。 |