LCD seadistamine
LCD on võimalik häälestada töötama 4 biti režiimis ja 8 biti režiimis. Esimesel juhul on andmesiin nelja bitine ja teisel juhul on andmesiin kaheksa bitine.
LCD's on kaks registrit andmeregister (DR) ja juhtregister (IR). Kumba parasjagu kirjutamine toimub määratakse RS bitiga ja seda nii 4 kui 8 bitise sisendsiini korral.
Andmeregistrisse on võimalik infot salvestada või seda sealt lugeda. Mäluaadress kust loetakse on võimalik ise määrata.
Juhtregister (IR) on ettenähtud ainult juhtkäskude meelespidamiseks.
RS |
R/W |
Operatsioon |
0 |
0 |
juhtmällu kirjutamise operatsioon |
0 |
1 |
Loe hõivatuse lippu (DB7) ja
aadressi loendus (DB0-ist, DB6-te) |
1 |
0 |
Andmemällu kirjutamise operatsioon |
1 |
1 |
Andmemälust lugemise operatsioon |
Hõivatuse lipp (BF)
BF="1", näitab, et LCD sisemine operatsioon on teostamisel.
Seetõttu selle aja vältel ei saa käivitada järgmist operatsiooni. BF saab lugeda läbi pordi DB7, kui RS="0" ja R/W="1".
Ennem kui käivitada järgmist operatsiooni tuleb veenduda, et BF biti väärtus ei oleks "1" või tagada, et enne viimast operatsiooni on möödunud piisav ajavahemik.
Aadressi Loendi (AC)
Aadressi loendur salvestab operatiivmälude aadresse, mis on ülekantud IR-ist.
Peale kirjutamist või lugemist operatiivmälust aadressi loendur automaatselt suureneb või kahaneb 1 võrra.
Kui RS=„0" ja R/W=„1" siis AC biti saab lugeda läbi portide DB0 ja DB6.
Ekraani operatiivmälu (DDRAM)
DDRAM salvestab ekraani andmed, maksimaalselt 80X8 bitti (80 sümbolit).
DDRAM aadress on aadressi loendis seitsme bitilise väärtusena.
AC6 |
AC5 |
AC4 |
AC3 |
AC2 |
AC1 |
AC0 |
DDRAM aadressid
Line
1 |
Display
position |
1 |
2 |
3 |
4 |
..... |
19 |
20 |
DDRAM address |
00H |
01H |
02H |
03H |
..... |
12H |
13H |
|
Line
2 |
Display position |
1 |
2 |
3 |
4 |
..... |
19 |
20 |
DDRAM address |
40H |
41H |
42H |
43H |
..... |
52H |
53H |
Ekraani puhastamine
RS |
R/W |
DB7 |
DB6 |
DB5 |
DB4 |
DB3 |
DB2 |
DB1 |
DB0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
Kustutatakse kõik andmed ekraanilt kirjutades "20H"(tühiku kood) kõikidesse DDRAM aadressidele, ja muudetakse DDRAM aadress aadressi loenduris (AC) "00H"-ks.
Kursori algusesse viimine tähendab, et kursor viiakse esimese rea vaskakusse nurka.
Sisestamise viisiks valitakse inkrement (I/D=„1").
Tagasi algusesse
RS |
R/W |
DB7 |
DB6 |
DB5 |
DB4 |
DB3 |
DB2 |
DB1 |
DB0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
- |
Tagasi algusesse operatsioon on kursori algasendisse viimiseks.
DDRAM aadressiks aadressi loenduris määratakse "00H".
Kursor viiakse tema algasendisse ning ekraan viiakse algseisundisse.
DDRAM loendurid ei muutu.
Sisestamise viis
RS |
R/W |
DB7 |
DB6 |
DB5 |
DB4 |
DB3 |
DB2 |
DB1 |
DB0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
I/D |
SH |
Määratakse kursori liikumise suunda ekraanil.
I/D: Inkrement (juurdekasv) / dekrement (kahanemine) DDRAM-i aadressile.
Kui I/D=„1" sellisel juhul kursor liigub paremale ja DDRAM suurendatakse ühe võrra.
Kui I/D=„0" sellisel juhul liigub kursor vasakule ja DDRAM vähendatakse ühe võrra.
SH: kogu ekraani nihutamine
Kui DDRAM teostab lugemise operatsiooni või SH=„0", ekraani nihutamist ei toimu.
Kui SH=„1" ja DDRAM teostab kirjutamise operatsiooni, siis nihutatakse kogu ekraani.
Ekraan sisse/välja
RS |
R/W |
DB7 |
DB6 |
DB5 |
DB4 |
DB3 |
DB2 |
DB1 |
DB0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
D |
C |
B |
Kuvari juhtimine/kursor/vilkumine sisse/välja 1 bitine register
D: ekraan sisse/välja
Kui D="1" siis on ekraan sisselülitatud.
Kui D="0", siis on ekraan välja lülitatud, kuid andmed säilivad DDRAM-is.
C: kursor sisse/välja
Kui C="1", siis on kursor sisselülitatud.
Kui C="0", siis kursorit ei ole näha , kuid I/D register salvestab andmed.
B: kursori vilkumine sisse/välja
Kui B="1", siis on vilkumine sisselülitatud.
Kui B="0", siis vilkumine on väljalülitatud.
Kursori või ekraani nihutamine
RS |
R/W |
DB7 |
DB6 |
DB5 |
DB4 |
DB3 |
DB2 |
DB1 |
DB0 |
0 |
0 |
0 |
0 |
0 |
0 |
S/C |
R/L |
- |
- |
Kursori positsiooni muutmine kas vasakule või paremale ilma ekraani andmete kirjutamise või lugemiseta.
Kasutades kahe realist olekut, kursor liigub esimeselt realt teisele peale 40. sümbolit.
Nihutamine toimub kõikidel ridadel üheaegselt.
Kui ekraani andmed on nihutatud korduvalt , siis igal real toimub nihkumine individuaalselt.
Kui toimub ekraani nihutamine, siis aadressi loenduris ei muudeta midagi.
Nihutamise meetod, olenevalt S/C ja R/L bittidest.
S/C |
R/L |
Operatsioon |
0 |
0 |
Nihuta kursor vasakule AC’d
vähendatakse 1 võrra |
0 |
1 |
Nihuta kursor paremale AC’d
suurendatakse 1 võrra |
1 |
0 |
Nihuta kogu ekraan vasakule,
kursor liigub vastavalt ekraanile |
1 |
1 |
Nihuta kogu ekraan paremale,
kursor liigub vastavalt ekraanile |
RS |
R/W |
DB7 |
DB6 |
DB5 |
DB4 |
DB3 |
DB2 |
DB1 |
DB0 |
0 |
0 |
0 |
0 |
1 |
DL |
N |
F |
- |
- |
DL: liidese andmepikkuse kontroll bitt
Kui DL="1", kasutatakse 8 bitist siini.
Kui DL="0", kasutatakse 4 bitist siini.
Kuid 4 bitises olekus peab toimuma 4 biti andmeedastus 2 korda.
N: Ridade arvu määraja
Kui N="0", siis on sisselülitatud üherealine olek.
Kui N="1", siis on sisselülitatud kaherealine olek.
F: Fondi oleku valimine
Kui F="0", siis kuvatakse ekraanile 5x8 täppi.
Kui F="1", siis kuvatakse ekraanile 5x11 täppi.
Määra CGRAM-i aadress
RS |
R/W |
DB7 |
DB6 |
DB5 |
DB4 |
DB3 |
DB2 |
DB1 |
DB0 |
0 |
0 |
0 |
1 |
AC5 |
AC4 |
AC3 |
AC2 |
AC1 |
AC0 |
Määrab CGRAM-i aadressi AC-sse.
RS |
R/W |
DB7 |
DB6 |
DB5 |
DB4 |
DB3 |
DB2 |
DB1 |
DB0 |
0 |
0 |
1 |
AC6 |
AC5 |
AC4 |
AC3 |
AC2 |
AC1 |
AC0 |
Määrab DDRAM-i aadressi AC-sse.
Kui kasutatakse üherealist laotust (N="0"), siis DDRAM-i aadress on vahemikus "00H" kuni "27H".
Kaherealise laotuse kasutamisel on esimese rea aadressid samas vahemikus aga teise rea omad on "40H" kuni "67H".
Loe Hõivatuse lippu (BF) ja aadressi
RS |
R/W |
DB7 |
DB6 |
DB5 |
DB4 |
DB3 |
DB2 |
DB1 |
DB0 |
0 |
1 |
BF |
AC6 |
AC5 |
AC4 |
AC3 |
AC2 |
AC1 |
AC0 |
See näitab kas LCD teostab hetkel siseoperatsiooni või mitte.
Kui BF on "1" siis siseoperatsioon on hetkel teostatud ja tuleb oodata kuni BF on "0", ning peale seda võib järgneda järgmine operatsioon. Sellest juhisest võib välja lugeda ka aadressi loenduris oleva aadressi.
RS |
R/W |
DB7 |
DB6 |
DB5 |
DB4 |
DB3 |
DB2 |
DB1 |
DB0 |
1 |
0 |
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 |
Kirjutatakse kahendkoodis 8 bitised andmed DDRAM-i/CGRAM-i.
Kas kirjutatakse DDRAM-i või CGRAM-i, sõltub valitud aadressist.
Operatiivmälu moodulite juhendid saavad määrata ka aadressi loenduri suuna. Peale kirjutamise operatsiooni on aadress automaatselt suurendatud või vähendatud ühe võrra, olenevalt sisestamise viisist.