與單片機寄存器的用法類似,1602 液晶在使用的時候,我們首先要進行初始的功能配置,1602 液晶有以下幾個指令需要了解。
1) 顯示模式設(shè)置
寫指令 0x38,設(shè)置 16x2 顯示,5x7 點陣,8 位數(shù)據(jù)接口。這條指令對我們這個液晶來說是固定的,必須寫 0x38,大家仔細看會發(fā)現(xiàn)我們的液晶實際上內(nèi)部點陣是 5x8 的,還有一些1602 液晶還兼容串行通信,用 2 個 IO 口即可,但是速度慢,我們這個液晶就是固定的 0x38模式。
2) 顯示開/關(guān)以及光標設(shè)置指令
這里有 2 條指令,第一條指令,一個字節(jié)中 8 位,其中高 5 位是固定的 0b00001,低 3位我們分別用 DCB 從高到低表示,D=1 表示開顯示,D=0 表示關(guān)顯示;C=1 表示顯示光標,C=0 表示不顯示光標;B=1 表示光標閃爍,B=0 表示光標不閃爍。
第二條指令,高 6 位是固定的 0b000001,低 2 位我們分別用 NS 從高到低表示,其中N=1 表示讀或者寫一個字符后,指針自動加 1,光標自動加 1,N=0 表示讀或者寫一個字符后指針自動減 1,光標自動減 1;S=1 表示寫一個字符后,整屏顯示左移(N=1)或右移(N=0),以達到光標不移動而屏幕移動的效果,如同我們的計算器輸入一樣的效果,而 S=0 表示寫一個字符后,整屏顯示不移動。
3) 清屏指令
固定的,寫入 0x01 表示顯示清屏,其中包含了數(shù)據(jù)指針清零,所有的顯示清零。寫入0x02 則僅僅是數(shù)據(jù)指針清零,顯示不清零。
4) RAM 地址設(shè)置指令
該指令碼的最高位為 1,低 7 位為 RAM 的地址,RAM 地址與液晶上字符的關(guān)系如上圖12-2 所示。通常,我們在讀寫數(shù)據(jù)之前都要先設(shè)置好地址,然后再進行數(shù)據(jù)的讀寫操作。