Fórum témák
» Több friss téma |
Cikkek » Az intelligens LCD modulok használata - II. rész Az intelligens LCD modulok használata - II. rész
Szerző: Topi, idő: Máj 2, 2005, Olvasva: 43798, Oldal olvasási idő: kb. 3 perc
Az LCD modulok nem csak számokat, hanem betűket, szavakat, szimbólumokat is képesek megjeleníteni.
Ez az univerzális alkalmazhatóság az, ami miatt sokkal több helyen használják, mint a nála lényegesen kisebb tudású 7 szegmenses LED kijelzőt.
Címzés
A modul bekapcsolásakor a kurzor az első sor első karakterére áll be. Ennek a címe $00. A kurzor minden karakter beírásakor a következő címre ugrik. ($01, $02...). Ez az automatikus növelés lényegesen leegyszerűsíti a dolgunkat, hiszen nem kell minden egyes karakternek beírni a pozícióját is. Néha mégis szükség lehet arra, hogy egy karaktert ne a következő helyre rakjunk, hanem egy specikus helyre. Ebben az esetben viszont meg kell adnunk a konkrét címet. Ezt egy parancsban tudathatjuk az LCD-vel. A címeket $00-tól $7F-ig választhatjuk, így összesen 128 címet választhatunk ki, de nincs meg mindegyiknek a kijelzőben a hely. Összesen 80 karakterrel gazdálkodhatunk az LCD-ben. Ez vagy mind egy sorban van(egysoros modul) vagy 40 van mind a két sorban (kétsoros modul). Persze egy 2*16-os LCD-n maximum 32 karakter jeleníthető meg, a többi mező nem látszik. Csak egy 40 karakteres 2 soros, vagy 20 karakteres 4 soros modul tudja mind a 80 karaktert kiírni. Gyakorlásképp tedd a következőket: Előszöris tedd kétsoros módba az LCD-t (ha két soros), 8 bites adatátviteli mód, és 5×7 pontos kijelzés. Ehhez használd a 00111000 ($38) kódot. (Ennek a parancsnak az utolsó két bitje akármi lehet, ahogy azt a táblázatban levő x is mutatja.) Mostantól nem fogok szólni, hogy parancskiadásnál és karakterküldésnél az RS vonalat megfelelően kell állítani, illetve, hogy az E vonalat kapcsolni kell. Remélhetőleg mostanra már sikerült ezeket megjegyezned. Kapcsold be a kijelzőt, kurzor legyen aláhúzott és villogjon. Ehhez használd a 00001111 ($0F) parancsot. Most állítsd a kurzort a 00001000 ($08) címre. Ezt a kijelző címének beállítása paranccsal érheted el, tehát küldd el a 10001000 ($88) parancskódot. A kurzor a kilencedik karakterre fog ugrani. Mostmár inne fogja írni a karaktereket. A Kijelző címének beállítása parancs kódja mindig 10000000 ($80)-al nagyobb mint a beállítandó cím. Azt is mondhatnám, hogy a címet írd fel binárisan, 7 jeggyel, majd írj az elejére egy egyest. Gyakorolgasd most egy kicsit a cím állítgatását. Figyelj arra, hogy bizonyos címek nem láthatóak. A mezők címe általában minden LCD-nél azonos, néhány tipikus példát mutat be az 1. kép. Összességében mondhatjuk, hogy az első sor első karaktere $00, a másodiké $40 és mindegyik egyesével növekszik. Két érdekességet figyelhettek meg: Az egyik, hogy az egysoros modul a képen kétsorosnak van beállítva, és a második sor egyszerűen odatette az első mellés, így mindegyik sorból csak 10 karakter látszik. A másik a 4 soros modulhoz kapcsolódik: Ez is úgy viselkedik mint egy kétsoros, csakhogy a két sor "félbe van törve" és elcsúsztatva. Ez egy kicsit komplikáltabbá teszi a bevitelt, de mikrokontrolleres vezérlésnél már ez sem okozhat gondot. A kijelző eltolása Attól függően, hogy m ilyen LCD-t használsz, nem biztos (=valószínű), hogy nem látszik mind a 80 karakter, amit a kijelzőbe tudsz írni. Ilyenkor a kijelzőt el kell tolnod jobbra vagy balra. Azonban csak csínján a dolgokkal! Ez a művelet megváltoztatja a címekhez tartozó mezőket. A gyakorláshoz előszöris állítsd be a szokásos parancsokat (kijelző be/ki és és kurzor parancsok, és ha szükséges, akkor a kijelzőtörlés parancsot is). A kódjaikkal már találkozhattál. Ezután írd be az angol ABC betűit A-Z-ig. Egy 16 karakteres kijelzőn csak a P-ig láthatód a betűket, utána kicsúszik a képből, de ez ne zavarjon, írd csak tovább. Most jön a Kijelző/kurzor eltolás parancs. Ezzel eltolhatod (scrollozhatod) a kijelzőt, így a Q-z-ig tartó betűk is előp fognak bukkani. A kódja 0011000 ($18). Mindahányszor beírod ezt a kódot (és megnyomod az E-t), a karakterek eggyel balra tolódnak. A Z karakter után még a kurzor is elő fog kerülni. Folytasd a műveletet, és hamarosan viszontláthatod az A karaktert is. Mondhatni körbeforgattad az egész kijelzőt. A 00011100 ($1C) kód ugyanezt csinálja, csak az irány változik. Fontos!!! Ez a parancs nem a karaktereket mozgatja egy új mezőbe, ezzel megváltozna a címe is, hanem az egész kijelzőblokkot forgatja, ily módon minden betű ugyanazon a címen marad. Azonabn ha a betűket nem tolod vissza az eredeti helyükre, akkor a $00 cím már nem a bal felső mezőben lesz. Próbáld ki, hogy beírod a Kijelző címének meállítása parancsot, és a címnek a $00 címet írod be. (Kód: 10000000, $80). Ezután kiderülhet a turpisság. Természetesen ott lesz, ahol az A betű is van, hiszen azt írtuk a $00-ás címre. (Ha esetleg nem látszik az A betűd, akkor told oda a kijelzőt az előbb tanult módon). A Kijelző és kurzor alaphelyzetbe parancs 00000010 ($02) a kurzort a $00-ra rakja, és a kijelzőt úgy tolja el, hogy a bal felső sarokban legyen a $00 cím (alaphelyzet). A Kijelző törlése parancs ugyanezt csinálja plusz még az összes mezőből törli a betűket. Még egy utolsó szó a kijelző/kurzor eltolás parancsról: a parancsot használhatod arra is, hogy a kurzort tologasd jobbra-balra, gyakorlatilag ez a kurzor címét növeli vagy csökkenti. Karakterbeviteli mód Egy újabb parancs az első részben levő táblázatból. Alaphelyzetben, mint már volt róla szó, a kurzor címe automatikusan növekszik. Azonbvan lehetőség van automatikus csökkentésre is. Gondolj csak egy számológépre. Jobb oldaról írja be folyamatosan a számokat. Ezt is emulálhatod egy LCD modulon. Akkor most nézzük is meg ezt konkrátan: Írd be a szokásos beállító, kijelző bekapcsoló, kurzor beállító parancsokat. Most (feltételezve, hogy 16 karakteres a modulod) állítsd be a kurzort a 00010000 ($10) címre. (Ezt a 10010000 ($90) kóddal teheted meg). Ezután a karakterbeviteli módnak a következőt írd be: 00000111 ($07). Ezzel a kurzor poziciója automatikusan nő, és a kijelzőt automatikusan el fogja tolni, amennyiben eléred a szélét. Végül írj be néhány számot. láthatod, hogy tényleg úgy működik, mint egy átlagos számológép. Mint azt a parancsok táblázatában (ld. 1. rész) láthatod, összesen négy féle módot állíthatsz be. Mindegyiknek megvan a maga területe, ahol nagyon jól tudnak jönni. A cikk még nem ért véget, lapozz! Értékeléshez bejelentkezés szükséges! |
Bejelentkezés
Hirdetés |