??在前面章節(jié),我們已經(jīng)學(xué)習(xí)過(guò)幾種顯示裝置,例如靜態(tài)數(shù)碼管、動(dòng)態(tài)數(shù)碼管、
8*8LED
點(diǎn)陣、串口通信。使用它們可以直觀顯示一些字符數(shù)據(jù),但是它們也有各種局限性,比如顯示字符數(shù)據(jù)太少,硬件設(shè)計(jì)復(fù)雜、代碼編寫難度大等。這一章就來(lái)介紹一種非常簡(jiǎn)單且常用的顯示裝置–
LCD1602
液晶顯示器,使用它可以顯示更多的字符數(shù)字。我們開發(fā)板上集成了一個(gè)
LCD1602
液晶顯示器接口,將
LCD1602
液晶對(duì)應(yīng)插入即可。本章要實(shí)現(xiàn)的功能是:系統(tǒng)運(yùn)行時(shí),在
LCD1602
液晶上顯示字符信息。
一、LCD1602 介紹
1.LCD1602 簡(jiǎn)介
??1602 液晶也叫 1602 字符型液晶,它能顯示 2 行字符信息,每行又能顯示 16個(gè)字符。它是一種專門用來(lái)顯示字母、數(shù)字、符號(hào)的點(diǎn)陣型液晶模塊。它是由若干個(gè) 5x7
或者 5x10
的點(diǎn)陣字符位組成,每個(gè)點(diǎn)陣字符位都可以用顯示一個(gè)字符,每位之間有一個(gè)點(diǎn)距的間隔,每行之間也有間隔,起到了字符間距和行間距的作用,正因?yàn)槿绱?,所以它不能很好的顯示圖片。其實(shí)物圖如下所示:
??在上圖中可以看到有 16
個(gè)管腳孔,從左至右管腳編號(hào)順序是 1-16
,其功能定義如下所示:
??下面對(duì)幾個(gè)管腳做下說(shuō)明:
-
3 腳:VL,液晶顯示偏壓信號(hào),用于調(diào)整
LCD1602
的顯示對(duì)比度,一般會(huì)外接電位器用以調(diào)整偏壓信號(hào),注意此腳電壓為 0 時(shí)可以得到最強(qiáng)的對(duì)比度。 -
4 腳:RS,數(shù)據(jù)/命令選擇端,當(dāng)此腳為高電平時(shí),可以對(duì)
1602
進(jìn)行數(shù)據(jù)字節(jié)的傳輸操作,而為低電平時(shí),則是進(jìn)行命令字節(jié)的傳輸操作。命令字節(jié),即是用來(lái)對(duì)LCD1602
的一些工作方式作設(shè)置的字節(jié);數(shù)據(jù)字節(jié),即使用以在1602
上顯示的字節(jié)。值得一提的是,LCD1602
的數(shù)據(jù)是 8 位的。 -
5 腳:R/W,讀寫選擇端。當(dāng)此腳為高電平可對(duì)
LCD1602
進(jìn)行讀數(shù)據(jù)操作,反之進(jìn)行寫數(shù)據(jù)操作 -
6 腳:E,使能信號(hào),其實(shí)是
LCD1602
的數(shù)據(jù)控制時(shí)鐘信號(hào),利用該信號(hào)的上升沿實(shí)現(xiàn)對(duì)LCD1602
的數(shù)據(jù)傳輸。 -
7~14 腳:8 位并行數(shù)據(jù)口,而
51
單片機(jī)一組IO
也是 8 位,使得對(duì)LCD1602
的數(shù)據(jù)讀寫大為方便。
??在 LCD1602
內(nèi)部含有 80
個(gè)字節(jié)的 DDRAM
,它是用來(lái)寄存顯示字符的。其地址和屏幕的對(duì)應(yīng)關(guān)系如下表:
??從上圖可知,不是所有的地址都可以直接用來(lái)顯示字符數(shù)據(jù),只有第一行中的 00-0F
,第二行中的 40-4F
才能顯示,其他地址只能用于存儲(chǔ)。要顯示字符時(shí)要先輸入顯示字符地址,也就是告訴模塊在哪里顯示字符,例如第二行第一個(gè)字符的地址是 40H
,那么是否直接寫入 40H
就可以將光標(biāo)定位在第二行第一個(gè)字符的位置呢?這樣不行,因?yàn)閷懭腼@示地址時(shí)要求最高位 D7
恒定為高電平 1 。所以實(shí)際寫入的數(shù)據(jù)應(yīng)該是
01000000B(40H)+10000000B(80H)=11000000B(C0H)
在 1602
中我們就用前 16
個(gè)就行了。第二行也一樣用前 16
個(gè)地址。
2.LCD1602 常用指令
??在使用 LCD1602
時(shí),我們需要掌握一些常用的指令,這些指令對(duì)于 LCD1602
初始化是必須的。
-
清屏指令:
0x01
功能:- 清除液晶顯示器,即將
DDRAM
的內(nèi)容全部填入"空白"的ASCII
碼20H
; - 光標(biāo)歸位,即將光標(biāo)撤回液晶顯示屏的左上方;
- 將地址計(jì)數(shù)器(
AC
)的值設(shè)為 0。
- 清除液晶顯示器,即將
-
模式設(shè)置指令:
0x06
功能:設(shè)定每次寫入 1 位數(shù)據(jù)后光標(biāo)的移位方向,并且設(shè)定每次寫入的一個(gè)字符是否移動(dòng)。-
I/D
:0=寫入新數(shù)據(jù)后光標(biāo)左移; 1=寫入新數(shù)據(jù)后光標(biāo)右移,這里選擇1 -
S
:0=寫入新數(shù)據(jù)后顯示屏不移動(dòng); 1=寫入新數(shù)據(jù)后顯示屏整體右移 1 個(gè)字符,這里選擇0
-
-
顯示開關(guān)控制指令:
0x0c
功能:控制顯示器開/關(guān)、光標(biāo)顯示/關(guān)閉以及光標(biāo)是否閃爍。-
D
:0=顯示功能關(guān); 1=顯示功能開,這里選擇1 -
C
:0=無(wú)光標(biāo) ;1=有光標(biāo),這里選擇0 -
B
:0=光標(biāo)閃爍; 1=光標(biāo)不閃爍,這里選擇0
-
-
功能設(shè)定指令:
0x38
功能:設(shè)定數(shù)據(jù)總線位數(shù)、顯示的行數(shù)及字型。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-410061.html-
DL
:0=數(shù)據(jù)總線為 4 位 ;1=數(shù)據(jù)總線為 8 位,這里設(shè)置為1 -
N
:0=顯示 1 行; 1=顯示 2 行,這里設(shè)置為1 -
F
:0=5×7 點(diǎn)陣/每字符 ;1=5×10 點(diǎn)陣/每字符,這里設(shè)置為0 -
X
:表示任意值,這里選擇0
-
3.LCD1602 使用
??要使用 LCD1602
,首先需要對(duì)其初始化,即通過(guò)寫入一些特定的指令實(shí)現(xiàn)。然后選擇要在 LCD1602
的哪個(gè)位置顯示并將所要顯示的數(shù)據(jù)發(fā)送到 LCD
的DDRAM
。使用 LCD1602
通常都是用于寫數(shù)據(jù)進(jìn)去,很少使用讀功能。LCD1602
操作步驟如下所示:文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-410061.html
(1)初始化
(
到了這里,關(guān)于51單片機(jī) | LCD1602 液晶顯示實(shí)驗(yàn)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!