用單片機(jī)來(lái)控制LCM模塊,方式十分簡(jiǎn)單,LCM模塊其內(nèi)部可以看成兩組寄存器, 一個(gè)為指令寄存器IR,一個(gè)為數(shù)據(jù)寄存器DR,由RS引腳來(lái)控制。所有對(duì)指令寄存器或 數(shù)據(jù)寄存器的存取均需檢查L(zhǎng)CM內(nèi)部的忙碌標(biāo)志BF,此標(biāo)志用來(lái)告知LCM內(nèi)部正在 工作,并不允許接收任何的控制命令。而此位的檢查可以令RS=0,用讀取D7來(lái)加以判 斷,當(dāng)D7為0時(shí),才可以寫入指令或數(shù)據(jù)寄存器。LCM控制指令共有11組,以下分別介紹。
1. 清屏
清屏指令格式如下:
指令代碼為01H,將DDRAM數(shù)據(jù)全部填入“空白”的ASCII代碼20H,執(zhí)行此指令將清除顯示器的內(nèi)容,同時(shí)光標(biāo)移到左上角。
2. 光標(biāo)歸位
光標(biāo)歸位指令格式如下:
指令代碼為02H,地址計(jì)數(shù)器AC被清0,DDRAM數(shù)據(jù)不變,光標(biāo)移到左上角?!?表示可以為0或1。
3. 輸入方式設(shè)置
輸入方式設(shè)置指令格式如下:
該指令用來(lái)設(shè)置光標(biāo)、字符移動(dòng)的方式。具體情況如下表所示。
4. 顯示開(kāi)關(guān)控制
顯示開(kāi)關(guān)控制指令格式如下:
指令代碼為08H~0FH。該指令控制字符、光標(biāo)及閃爍的開(kāi)與關(guān),有3個(gè)狀態(tài)位 D、 C、B,這3個(gè)狀態(tài)位分別控制著字符、光標(biāo)和閃爍的顯示狀態(tài)。
D是字符顯示狀態(tài)位。D=1時(shí),為開(kāi)顯示;D=0時(shí),為關(guān)顯示。注意關(guān)顯示僅是字 符不出現(xiàn),而DDRAM內(nèi)容不變。這與清屏指令不同。
C是光標(biāo)顯示狀態(tài)位。C=1時(shí),為光標(biāo)顯示;C=0時(shí),為光標(biāo)消失。光標(biāo)為底線形 式(5×1點(diǎn)陣),光標(biāo)的位置由地址指針計(jì)數(shù)器AC確定,并隨其變動(dòng)而移動(dòng)。當(dāng)AC值超 出了字符的顯示范圍,光標(biāo)將隨之消失。
B是光標(biāo)閃爍顯示狀態(tài)位。B=1時(shí),光標(biāo)閃爍;B=0時(shí),光標(biāo)不閃爍。
5. 光標(biāo)、字符位移
光標(biāo)、字符位移指令的格式如下:
執(zhí)行該指令將產(chǎn)生字符或光標(biāo)向左或向右滾動(dòng)一個(gè)字符位。如果定時(shí)間隔地執(zhí)行該 指令,將產(chǎn)生字符或光標(biāo)的平滑滾動(dòng)。 具體情況如下表所示。
6. 功能設(shè)置
功能設(shè)置指令格式如下:
該指令用于設(shè)置控制器的工作方式,有3個(gè)參數(shù)DL、N和F,它們的作用是:
DL用于設(shè)置控制器與計(jì)算機(jī)的接口形式。接口形式體現(xiàn)在數(shù)據(jù)總線長(zhǎng)度上。DL= 1設(shè)置數(shù)據(jù)總線為8位長(zhǎng)度,即D7~D0有效;DL=0設(shè)置數(shù)據(jù)總線為4位長(zhǎng)度,即 D7~ D4有效。在該方式下8位指令代碼和數(shù)據(jù)將按先高4位后低4位的順序分兩次傳輸。
N用于設(shè)置顯示的字符行數(shù)。N=0為一行字符行;N=1為兩行字符行。
F用于設(shè)置顯示字符的字體。F=0為5×7點(diǎn)陣字符體;F=1為5×10點(diǎn)陣字符體。
7. CGRAM地址設(shè)置
CGRAM地址設(shè)置指令格式如下:
該指令將6位的CGRAM地址寫入地址指針計(jì)數(shù)器AC內(nèi),隨后,單片機(jī)對(duì)數(shù)據(jù)的操 作是對(duì)CGRAM的讀/寫操作。
8. DDRAM地址設(shè)置
DDRAM地址設(shè)置指令格式如下:
該指令將7位的DDRAM地址寫入地址指針計(jì)數(shù)器AC內(nèi),隨后,單片機(jī)對(duì)數(shù)據(jù)的操 作是對(duì)DDRAM的讀/寫操作。
9. 讀BF及AC值
讀BF及AC指令的格式如下:
LCD的忙碌標(biāo)志BF用以指示 LCD目前的工作情況。當(dāng) BF=1時(shí),表示正在進(jìn)行內(nèi) 部數(shù)據(jù)的處理,不接受單片機(jī)送來(lái)的指令或數(shù)據(jù);當(dāng) BF=0時(shí),則表示已準(zhǔn)備接收命令或 數(shù)據(jù)。當(dāng)程序讀取此數(shù)據(jù)的內(nèi)容時(shí),D7為忙碌標(biāo)志,而另外 D6~D0的值表示 CGRAM 或 DDRAM中的地址,至于是指向哪一地址則根據(jù)最后寫入的地址設(shè)定指令而定。
10. 寫數(shù)據(jù)到CGRAM或DDRAM
寫數(shù)據(jù)到CGRAM或DDRAM的指令格式如下:
先設(shè)定CGRAM或DDRAM地址,再將數(shù)據(jù)寫入 D7~D0中,以使 LCD顯示出字形。也可將使用者自創(chuàng)的圖形存入CGRAM。
11. 從CGRAM或DDRAM讀取數(shù)據(jù)
從CGRAM或DDRAM讀取數(shù)據(jù)的指令格式如下:
先設(shè)定CGRAM或DDRAM地址,再讀取其中的數(shù)據(jù)
轉(zhuǎn)自:暢學(xué)電子網(wǎng)
-
單片機(jī)
+關(guān)注
關(guān)注
6026文章
44455瀏覽量
630903 -
LCM
+關(guān)注
關(guān)注
6文章
57瀏覽量
34494
原文標(biāo)題:?jiǎn)纹瑱C(jī)控制lcm液晶模塊指令
文章出處:【微信號(hào):mcugeek,微信公眾號(hào):MCU開(kāi)發(fā)加油站】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論