第15章C51液晶顯示模塊ppt課件_第1頁
第15章C51液晶顯示模塊ppt課件_第2頁
第15章C51液晶顯示模塊ppt課件_第3頁
第15章C51液晶顯示模塊ppt課件_第4頁
第15章C51液晶顯示模塊ppt課件_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、第15章 C51液晶顯示模塊在單片機的人機交互系統(tǒng)中,常常需要顯示系統(tǒng)運行中的某些信息和數(shù)據(jù),例如字符、漢字或者圖形等。液晶顯示器LCD正好可以完成此項任務(wù),它是一種功耗很低的顯示器,在電子表、計算器、數(shù)碼相機、計算機的顯示器和液晶電視上都可以看到它的身影。液晶顯示器以優(yōu)越的性能,越來越受到各方面的重視。在單片機系統(tǒng)中,為了應(yīng)用的方便,常使用另外一種集成度更高的顯示組件,即液晶顯示模塊。液晶顯示模塊將液晶顯示器、控制器、背光源和外部連接端口等組裝在一起,可以方便地用于需要液晶顯示的場合。液晶顯示模塊的英文名稱為“LCD Module”,可以簡稱為LCM。本章主要介紹液晶顯示器以及液晶顯示模塊,

2、并詳細介紹了常用的液晶顯示模塊控制器及其控制子函數(shù)。最后通過兩個實例,逐步詳細講解了如何使用液晶顯示模塊顯示漢字和圖形。15.1 液晶顯示模塊概述 液晶顯示是依靠液晶來進行數(shù)據(jù)或者圖形顯示的。液晶顯示器本身不發(fā)光,其通過調(diào)節(jié)背光的亮度來達到顯示效果,這是一種被動顯示器。液晶顯示模塊是以液晶屏為核心,配合一定的控制電路,以達到方便使用目的的顯示組件。目前在單片機系統(tǒng)中,液晶顯示模塊的使用最為廣泛。15.1.1 液晶顯示模塊的分類 根據(jù)液晶顯示模塊顯示功能的不同,液晶顯示模塊可以分為如下3種: 1段碼數(shù)字型 2點陣字符型 3點陣圖形型 段碼數(shù)字型液晶顯示模塊 點陣字符型液晶顯示模塊 15.1.2

3、液晶顯示模塊的特點相比其他顯示器件,液晶顯示模塊具有如下一些特點:顯示內(nèi)容豐富??梢燥@示多行漢字、字符以及圖形等。體積小巧。在顯示內(nèi)容相同的情況下,液晶顯示模塊體積要相對小巧,重量也輕。功耗低。液晶顯示模塊的功耗主要消耗在其內(nèi)部的電極、背光電源和驅(qū)動芯片上。因而,相對于相同的顯示面積,液晶顯示模塊的功耗比其他顯示器件要小得多。顯示質(zhì)量高。液晶顯示模塊每一個點恒定發(fā)光,不需要不斷刷新亮點。因此液晶顯示模塊顯示畫質(zhì)高,且不會閃爍。無電磁輻射。液晶顯示模塊沒有電磁輻射,正因為這個優(yōu)點使得液晶電視和計算機的液晶顯示器得到廣泛應(yīng)用。控制簡單方便。液晶顯示模塊內(nèi)置控制器,而且均為數(shù)字式接口,操作十分方便。

4、應(yīng)用范圍廣。根據(jù)需要液晶顯示模塊可以顯示數(shù)字、字符、漢字和圖形等。因此液晶顯示模塊可根據(jù)實際需要適用于各種場合。15.2 液晶顯示控制驅(qū)動器 液晶顯示模塊LCM大部分都具有內(nèi)置LCD控制驅(qū)動器。LCD控制驅(qū)動器主要用于控制液晶的顯示,其采用控制指令集進行控制顯示。這類液晶顯示模塊和單片機的接口都比較簡單,控制起來也相對容易,目前得到了廣泛的應(yīng)用。一般而言,只要掌握一種的液晶顯示模塊及其控制驅(qū)動器的使用方法,就可以舉一反三,掌握其他液晶顯示模塊的使用。 目前市場上常見的LCD控制驅(qū)動器有ST7920、HD44780、KS0066U等型號。這里要介紹的是目前使用較為廣泛的ST7920點陣圖形液晶模

5、塊的控制驅(qū)動器,其可以控制顯示數(shù)字、字符、漢字和圖形等,功能比較全面。15.2.1 液晶顯示控制驅(qū)動器概述ST7920液晶顯示模塊控制驅(qū)動器是一種功能極強的液晶控制模塊,由臺灣矽創(chuàng)電子公司生產(chǎn),其主要包括如下幾方面的功能:芯片內(nèi)置32個普通驅(qū)動器common及64個段驅(qū)動器segment。芯片內(nèi)置12864漢字圖形點陣的液晶顯示控制模塊。芯片內(nèi)置8192個中文漢字1616點陣),用于顯示漢字。ST7920包含有兩個型號,ST7920-BIG5內(nèi)建BIG-5碼繁體中文字型庫,ST7920-GB內(nèi)建GB簡體中文字型庫。芯片內(nèi)置128個字符的ASCII字符庫816點陣),用于顯示常用的字符。芯片內(nèi)置

6、64256點陣顯示RAMGDRAM),用于顯示圖形。芯片內(nèi)置有2MB的中文字型CGROM和64256點陣的GDRAM繪圖區(qū)域,便于簡單、有效地顯示漢字和圖形。芯片內(nèi)置4組可編程控制的1616點陣造字空間。芯片可以采用4位/8位并行、2線/3線串行等多種控制接口,可以實現(xiàn)靈活的單片機接口。15.2.2 液晶顯示控制驅(qū)動器功能說明 這里以內(nèi)建簡體中文字型庫的ST7920-GB芯片為例,介紹液晶顯示控制驅(qū)動器的功能以及字符、漢字和圖形等的顯示操作。 1基本讀寫操作 2忙碌標志BF) 3中文字型ROMCGROM)4半寬字型ROMHCGROM) 5自定義字型RAMCGRAM)6圖標RAMIRAM) 7顯

7、示數(shù)據(jù)RAMDDRAM)8繪圖顯示RAMGDRAM) 9地址計數(shù)器AC)10LCD驅(qū)動電路 11硬件游標/閃爍控制電路15.3 液晶顯示控制器指令集 液晶顯示控制器通過控制指令來完成液晶的顯示操作。在液晶顯示模塊控制驅(qū)動器ST7920中,提供了兩套控制指令:基本指令和擴充指令。這些指令都是用來控制液晶的顯示操作。下面分別對各指令的使用進行介紹。15.3.1 基本指令集 液晶顯示模塊控制驅(qū)動器ST7920提供了11條基本指令。當RE=0時為基本指令集模式,下面分別介紹各基本指令的使用。 1清除顯示指令2地址復(fù)位指令 3進入設(shè)定點指令4顯示狀態(tài)開關(guān)指令 5游標或顯示移位控制指令6功能設(shè)定指令 7設(shè)

8、定CGRAM地址指令8設(shè)定DDRAM地址指令 9讀取忙碌標志BF和地址指令10寫數(shù)據(jù)到RAM指令 11讀取RAM的值指令15.3.2 擴充指令集液晶顯示模塊控制驅(qū)動器ST7920擴充指令集提供了更高級的液晶顯示控制。當RE=1時,為擴充指令集模式。ST7920提供了7種擴充指令,這些指令也是用來完成液晶顯示控制的。下面分別介紹各指令的使用。1待命模式指令2卷動地址或RAM地址選擇指令3反白選擇指令4睡眠模式指令5擴充功能設(shè)定指令6設(shè)定IRAM地址或卷動地址指令7設(shè)定繪圖RAM地址指令15.3.3 控制器指令操作方式液晶控制驅(qū)動器ST7920提供了并行和串行兩類指令操作方式。這兩種控制方式,由外

9、部PSB引腳來選擇:當PSB引腳輸入高電平時,為并行操作方式。當PSB引腳輸入低電平時,為串行操作方式。其中,并行操作方式又可以分為8位并行操作方式和4位并行操作方式兩種。下面分別對這兩種指令操作方式進行介紹。串行數(shù)據(jù)傳輸?shù)臅r序圖 15.4 點陣圖形型液晶操作子函數(shù) 液晶顯示模塊一般均內(nèi)置控制器,其操作基本類似。這里以前面介紹的點陣圖形型液晶控制器ST7920為例,介紹液晶顯示模塊的操作子函數(shù)。在下面介紹中,常用到的符號含義如下: E為液晶顯示模塊的讀寫使能信號。 R_W為液晶顯示模塊的讀寫選擇信號。 RS為液晶顯示模塊的數(shù)據(jù)/指令信號。 D_I為液晶顯示模塊的數(shù)據(jù)指令選擇信號。15.4.1

10、指令操作子函數(shù)指令操作子函數(shù)用于向液晶顯示控制器寫入各種操作指令。指令操作子函數(shù)程序示例如下:void WCOM(unsigned char dcode) /寫指令程序unsigned char q; R_W=1; D_I=0;/設(shè)置狀態(tài)Loop: P1=0 xFF; E=1;/使能有效 q=P1;/將P1口狀態(tài)讀入 E=0;/關(guān)閉使能信號 if(q&0 x80)/判斷屏幕是否忙 goto Loop;/若忙,循環(huán)等待 R_W=0; D_I=0;/寫數(shù)據(jù)指令 P1= dcode;/將數(shù)據(jù)送入P1口 E=1;/使能信號開 E=0;/使能信號關(guān) 15.4.2 數(shù)據(jù)操作子函數(shù)數(shù)據(jù)操作子函數(shù)用于

11、向液晶顯示控制器寫入各種操作數(shù)據(jù)。數(shù)據(jù)操作子函數(shù)程序示例如下:void Dat(unsigned char ddata)unsigned char q; R_W=1; D_I=0;/讀狀態(tài)指令Loop: P1=0 xFF; E=1;/使能 q=P1; E=0; if(q&0 x80)/判忙 goto Loop; D_I=1;/送數(shù)據(jù)指令 R_W=0; P1= ddata;/寫入數(shù)據(jù) E=1;/使能信號開 E=0;/使能信號關(guān) 15.4.3 初始化子函數(shù)初始化子函數(shù)用于初始化液晶顯示控制器。初始化子函數(shù)程序示例如下:void Imim() P0=0 xFF;/初始化單片機端口 P1=0

12、xFF; P2=0 xFF; P3=0 xFF; E=0;WCOM(0 x38);/功能設(shè)定 WCOM(0 x08);/關(guān)顯示指令 WCOM(0 x06);/游標右移 Clearlcd();/清屏 WCOM(0 x0c);/開顯示指令 15.4.4 清屏子函數(shù) 清屏子函數(shù)用于對液晶顯示器進行清屏操作。在ST7920控制器中,提供了兩種方式進行清屏操作。下面分別進行介紹: 基本指令集清屏子函數(shù),程序示例如下: void Clearlcd() D_I=0; R_W=0; P1=0 x01; WCOM(0 x01);/清除顯示 15.4.5 漢字顯示子函數(shù)漢字顯示子函數(shù)用于在液晶屏上顯示漢字。漢字顯

13、示子函數(shù)程序示例如下:void Hanz() int i; WCOM(k);/設(shè)置起始點 for(i=0;ij;i+,p+) wbyte=*p; Dat(wbyte);/將漢字數(shù)組數(shù)據(jù)送入 15.4.6 圖形顯示子函數(shù) 圖形顯示子函數(shù)用于在液晶顯示器上進行繪圖操作。 程序中,使用了ST7920的擴充指令集來進行繪圖操作。首先,通過指令操作子函數(shù)WCOM設(shè)定ST7920處于擴充指令集模式,然后通過頁循環(huán)和列循環(huán)來送入圖形數(shù)據(jù)。這里變量p2為圖形數(shù)組指針,Column和Page為圖形顯示的起始列和行,z和y為圖形數(shù)組的頁和列。15.5 液晶漢字顯示實例 點陣圖形型液晶顯示模塊除了可以顯示基本的數(shù)字

14、和英文字符外,最大的優(yōu)勢是還可以顯示中文信息。因而,這里首先介紹點陣圖形型液晶顯示模塊的字符及漢字的顯示。15.5.1 電路設(shè)計 這里采用Atmel公司的AT89S52單片機,液晶顯示模塊選用內(nèi)置ST7920的NH12864M。整個電路的電路圖,如下圖。電路圖 15.5.2 程序設(shè)計 這里采用C51語言編寫程序。具體操作步驟如下:液晶屏顯示內(nèi)容 15.6 液晶圖形顯示實例 點陣圖形型液晶顯示模塊除了可以顯示中文信息外,另一個優(yōu)勢是可以顯示圖形。因而,這里介紹如何提取自定義圖形的點陣信息以及圖形的顯示。 15.6.1 圖形數(shù)組的提取因為這里介紹的均為單色液晶,其只能顯示黑白圖形,因此需要首先將圖片轉(zhuǎn)化為黑白圖,如下圖。圖形的點陣信息可以逐個查看像素點的黑白值。為了更快地得到圖像的點陣信息,得到任何一個圖形的點陣信息,可以選擇一款字模提取程序。從中打開黑白圖像,便可以得到該圖的點陣信息,如下圖。蝴蝶圖案 提取點陣信息 15.6.2 圖形顯示程序設(shè)計 這里仍然采用前面的電路原理圖,使用液晶顯示圖形的程序代碼示例如下: 在該程序中,定義圖形數(shù)組Tu,其中存放了前面用字模提取程序得到蝴蝶圖案對應(yīng)的點陣數(shù)據(jù)。在主函數(shù)中,首先初始化液晶屏,然后使用擴充指令集進行清屏操作。接著指定圖像數(shù)組顯示的頁和列,以及起始頁和

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論