Kitaláljuk, hogyan lehet egy 84x48 képpontos folyadékkristályos kijelzőt csatlakoztatni a Nokia 5110-től az Arduino-hoz.
Szükséges
- - Arduino;
- - LCD kijelző a Nokia 5110/3310 készülékhez;
- - összekötő vezetékek.
Utasítás
1. lépés
Csatlakoztassuk az LCD képernyőt a Nokia 5110-ről az Arduino-ra az alábbi ábra szerint.
2. lépés
Számos könyvtárat írtak úgy, hogy működjenek ezzel az LCD-képernyővel. Javaslom ennek használatát: https://www.rinkydinkelectronics.com/library.php?id=44 (töltse le az LCD5110_Basic.zip fájlt).
A telepítéshez csomagolja ki a fájlt az Arduino IDE / libraries / könyvtárba.
A könyvtár a következő szolgáltatásokat támogatja.
LCD5110 (SCK, MOSI, DC, RST, CS); - az LCD-képernyő bejelentése, amely jelzi az Arduino csapjainak való megfelelést;
InitLCD ([kontraszt]); - az 5110 kijelző inicializálása opcionális kontrasztjelzéssel (0-127), az alapértelmezett érték 70;
setContrast (kontraszt); - beállítja a kontrasztot (0-127);
enableSleep (); - alvó üzemmódba kapcsolja a képernyőt;
disableSleep (); - kihozza a képernyőt alvó üzemmódból;
clrScr (); - törli a képernyőt;
clrRow (sor, [kezdet], [vég]); - a kiválasztott sorszám törlése a pozíció elejétől a végéig;
invert (igaz); és invertál (hamis); - az LCD képernyő tartalmának inverziójának be- és kikapcsolása;
print (karakterlánc, x, y); - egy karakterláncot jelenít meg a megadott koordinátákkal; Az x koordináta helyett használhatja a BAL, KÖZÉP és JOBB; a standard betűtípus magassága 8 pont, ezért a vonalakat 8 ponton kell elhelyezni;
printNumI (szám, x, y, [hossz], [kitöltő]); - egy egész szám megjelenítése a képernyőn egy adott pozícióban (x, y); hossz - a szám kívánt hossza; kitöltő - egy karakter az "üregek" kitöltésére, ha a szám kisebb, mint a kívánt hossz; az alapértelmezés egy üres hely ";
printNumF (szám, dec, x, y, [osztó], [hossz], [kitöltő]); - lebegőpontos szám megjelenítése; dec - tizedesjegyek száma; osztó - tizedespont, pont "." alapértelmezés szerint;
setFont (név); - válasszon betűtípust; a beépített betűtípusok neve SmallFont és TinyFont; megadhatja a betűtípusokat a vázlatban;
invertText (true); és invertText (hamis); - szövegfordítás be / ki;
drawBitmap (x, y, adatok, sx, sy); - a kép megjelenítése a képernyőn az x és y koordinátákon; adatok - képet tartalmazó tömb; sx és sy a kép szélessége és magassága.
3. lépés
Írjunk egy ilyen vázlatot. Először belefoglaljuk a könyvtárat, majd deklaráljuk az LCD5110 osztály egy példányát tűkiosztásokkal.
A setup () eljárásban inicializáljuk az LCD képernyőt.
A ciklus () eljárásban kitisztítjuk a képernyőt, és tetszőleges szöveget írunk kis betűtípussal, alatta, közepes betűvel, a másodpercek számlálóját megjelenítve.
4. lépés
Jelenítsünk meg egy képet. Ehhez készítsünk elő egy monokróm képet, amelyet meg akarunk jeleníteni a Nokia 5110 készüléken. Ne feledje, hogy a képernyő felbontása 48 x 84 képpont, és a kép nem lehet nagyobb. A https://www.rinkydinkelectronics.com/t_imageconverter_mono.php oldalon konvertálja a képet bittömbökké. Töltse le a kapott fájlt a "*.c" kiterjesztéssel, és a menü segítségével adja hozzá a projekthez: Vázlat -> Fájl hozzáadása … vagy egyszerűen helyezze a fájlt a vázlat könyvtárba, majd töltse be újra az Arduino IDE-t.
5. lépés
Most be kell jelentenie egy tömböt, amely képadatokat tartalmaz a programkódban (az én kódomban ez az extern uint8_t mysymb;) sor, majd a drawBitmap () függvény segítségével jelenítse meg a képet a kívánt helyen a képernyőn.
6. lépés
Töltse fel a vázlatot az Arduino-ra. Most a szöveget felváltja egy kép, és a számláló minden alkalommal növeli az értékét.