LCD 1602 csatlakoztatása Arduinohoz: leírás, funkciók, utasítások, szolgáltatások, problémák és megoldások

Tartalomjegyzék:

LCD 1602 csatlakoztatása Arduinohoz: leírás, funkciók, utasítások, szolgáltatások, problémák és megoldások
LCD 1602 csatlakoztatása Arduinohoz: leírás, funkciók, utasítások, szolgáltatások, problémák és megoldások
Anonim

Minden rádióamatőr néhány egyszerű barkácsmunka után arra a célra jut, hogy érzékelők és gombok segítségével valami nagyszerűt alkosson. Hiszen sokkal érdekesebb adatokat megjeleníteni a kijelzőn, mint a portmonitoron. De akkor felmerül a kérdés: melyik kijelzőt válasszam? És általában, hogyan kell csatlakoztatni, mi kell a csatlakoztatáshoz? Az ezekre a kérdésekre adott válaszokat ebben a cikkben tárgyaljuk.

LCD 1602 kijelző az arduinohoz való csatlakozáshoz
LCD 1602 kijelző az arduinohoz való csatlakozáshoz

LCD 1602

A számos kijelző közül a HD4478 vezérlőn alapuló LCD1602 kijelzőt szeretném kiemelni. Ez a kijelző két színben van: fehér betűk kék alapon, fekete betűk sárga alapon. Az LCD 1602 Arduinóhoz való csatlakoztatása sem okoz gondot, hiszen van beépített könyvtár, és nem kell semmi extrát letölteni. A kijelzők nemcsak árban, hanem méretben is különböznek egymástól. A rádióamatőrök gyakran 16-ot használnakx 2, azaz 2 sor 16 karakterből. De van 20 x 4 is, ahol 4 sor van 20 karakterből. A méretek és a színek nem játszanak szerepet az lcd 1602-es kijelző Arduno-hoz való csatlakoztatásában, ugyanúgy vannak csatlakoztatva. A betekintési szög 35 fok, a kijelző válaszideje 250 ms. -20 és 70 Celsius fok közötti hőmérsékleten működik. Munka közben 4 mA-t használ a képernyőhöz és 120 mA-t a háttérvilágításhoz.

LCD 1602 kijelző csatlakozó
LCD 1602 kijelző csatlakozó

Hol használják?

Ez a kijelző nem csak a rádióamatőrök, hanem a nagy gyártók körében is népszerű. Például nyomtatók, kávéfőzők is használnak LCD1602-t. Ennek oka az alacsony ár, ez a kijelző 200-300 rubelbe kerül a kínai oldalakon. Érdemes ott vásárolni, mivel üzleteinkben nagyon magasak az árrések erre a kijelzőre.

Csatlakozás Arduino-hoz

Az LCD 1602 csatlakoztatása Arduino Nano-hoz és Uno-hoz nem más. A kijelzővel kétféle üzemmódban dolgozhatunk: 4 bites és 8. 8 bites kijelzővel való munkavégzésnél az alacsonyabb és a magasabb bitek is használatosak, a 4 bitesnél pedig csak az alsóbbak. Nincs különösebb értelme a 8 bitessel dolgozni, hiszen 4 további kontaktus kerül a csatlakozáshoz, ami nem célszerű, mert a sebesség nem lesz nagyobb, a kijelző frissítési határa 10-szer másodpercenként. Általában sok vezetéket használnak az lcd 1602 és az Arduino összekapcsolására, ami némi kellemetlenséget okoz, de vannak speciális pajzsok, de erről majd később. A képen a kijelző és az Arduino Uno csatlakozása látható:

Kijelző csatlakoztatása arduinohoz
Kijelző csatlakoztatása arduinohoz

Példa a kódra:


tartalmazza //Adja hozzá a szükséges LiquidCrystal lcd(7, 6, 5, 4, 3, 2) könyvtárat; // (RS, E, DB4, DB5, DB6, DB7) void setup(){ lcd.begin(16, 2); // Képernyő méretének beállítása lcd.setCursor(0, 0); // Állítsuk a kurzort az 1. sor elejére lcd.print("Hello, world!"); // Szöveg megjelenítése lcd setCursor(0, 1); // Állítsa a kurzort a 2. sor elejére lcd.print("fb.ru"); // Kimeneti szöveg } void loop(){ }

Mit csinál a kód? Először is, a kijelzővel való munkavégzés könyvtára csatlakoztatva van. Mint fentebb említettük, ez a könyvtár már benne van az Arduino IDE-ben, és nem kell további letöltése és telepítése. Ezután meg kell határozni a érintkezőket, amelyek a érintkezőkhöz csatlakoznak: RS, E, DB4, DB5, DB6, DB7. Ezután a képernyő mérete be van állítva. Mivel 16 karakteres és 2 soros verzióval dolgozunk, ilyen értékeket írunk. A kurzort az első sor elejére állítjuk, és megjelenítjük az első Hello World szövegünket. Ezután vigye a kurzort a második sorba, és jelenítse meg a webhely nevét. Ez minden! Megfontolásra került az lcd 1602 csatlakoztatása az Arduino Uno-hoz.

Mi az I2C, és miért van rá szükség?

Ahogy fentebb említettük, a kijelző csatlakoztatása sok tűt igényel. Például, ha több érzékelővel és LCD kijelzővel dolgozik, előfordulhat, hogy az 1602 érintkező egyszerűen nem elegendő. A rádióamatőrök gyakran az Uno vagy a Nano verziót használják, ahol nincs sok kapcsolat. Aztán az emberek különleges pajzsokat találtak ki. Például I2C. Lehetővé teszi a kijelző csatlakoztatását mindössze 4 tűvel. Ez kétszer kevesebb. Az I2C modul külön is megvásárolható, ahol saját kezűleg kell forrasztania, és már forrasztva isLCD kijelző 1602.

I2C modul 1602 LCD kijelzőhöz
I2C modul 1602 LCD kijelzőhöz

Kapcsolat az I2C modullal

Az LCD 1602 csatlakoztatása az Arduino Nano-hoz I2C-vel kevés helyet foglal el, mindössze 4 érintkező: test, táp és 2 adatkimenet. Az Arduino tápellátását és földelését 5 V-ra, illetve GND-re csatlakoztatjuk. A fennmaradó két érintkező: SCL és SDA bármilyen analóg érintkezőhöz csatlakozik. A képen láthat egy példát az lcd 1602 és az arduino csatlakoztatására I2C modullal:

Kijelző csatlakozások az I2C modul segítségével
Kijelző csatlakozások az I2C modul segítségével

Programkód

Ha a modul nélküli kijelzővel csak egy könyvtárat kellett használni, akkor egy modullal való működéshez két könyvtárra van szükség. Az egyik már az Arduino IDE - Wire-ben van. Egy másik könyvtárat, a LiquidCrystal I2C-t külön kell letölteni és telepíteni. A könyvtár Arduino-ban való telepítéséhez a letöltött archívum tartalmát fel kell tölteni a Libraries gyökérmappába. Kódpélda az I2C használatával:


include include LiquidCrystal_I2C lcd(0x27, 16, 2); // A kijelző beállítása void setup() { lcd.init(); lcd.backlight();// A kijelző háttérvilágításának bekapcsolása lcd.print("FB.ru"); lcd.setCursor(8, 1); lcd.print("LCD 1602"); } void loop() { // A kurzort a második sorra és null karakterre állítja. lcd.setCursor(0, 1); // Kiírja az arduino indítása óta eltelt másodpercek számát lcd.print(millis()/1000); }

Amint látja, a kód majdnem ugyanaz.

Hogyan adhatom hozzá saját szimbólumomat?

Az a probléma ezekkel a kijelzőkkel, hogy nincsa cirill betűk és a szimbólumok támogatása. Például be kell töltenie valamilyen karaktert a kijelzőre, hogy az tükrözze azt. Ehhez a kijelző lehetővé teszi akár 7 karakter létrehozását. Mutasd be a táblázatot:

0 0 0 1 0
0 0 0 0 1
1 1 0 0 1
0 0 0 0 1
1 1 0 0 1
0 0 0 0 1
0 0 0 1 0
0 0 0 0 0

Ha 0 – nincs ott semmi, ha 1 – árnyékolt terület. A fenti példában láthatja a "mosolygó mosolygó" karakter létrehozását. Egy példaprogramot használva Arduino-ban ez így nézne ki:


include include // Tartalmazza a szükséges könyvtárat // Mosolyszimbólum bitmaszk byte smile[8]={ B00010, B00001, B11001, B00001, B11001, B00001, B00010, }; LiquidCrystal lcd(7, 6, 5, 4, 3, 2); // (RS, E, DB4, DB5, DB6, DB7) void setup(){ lcd.begin(16, 2); // Képernyő méretének beállítása lcd.createChar(1, smile); // 1. számú karakter létrehozása lcd.setCursor(0, 0); // Állítsa a kurzort az 1. sor elejére lcd.print("\1"); // A smiley megjelenítése (1. karakter) - "\1" } void loop(){ }

Mint látható, létrejötta bitmaszk ugyanaz, mint a táblázat. Miután létrehozta, változóként kiadható a kijelzőre. Ne feledje, hogy csak 7 karakter tárolható a memóriában. Elvileg ennyi is elég. Például, ha meg szeretné jeleníteni a fokozat szimbólumot.

Egyéni karakterek hozzáadása az LCD 1602-hez
Egyéni karakterek hozzáadása az LCD 1602-hez

Problémák, amelyek miatt a kijelző esetleg nem működik

Vannak esetek, amikor a kijelző nem működik. Például bekapcsol, de nem jelenít meg karaktereket. Vagy egyáltalán nem kapcsol be. Először ellenőrizze, hogy megfelelően csatlakoztatta-e az érintkezőket. Ha korábban I2C nélkül csatlakoztattad az lcd 1202-t az Arduino-hoz, akkor nagyon könnyen belegabalyodhatsz a vezetékekbe, ami miatt a kijelző hibásan működhet. Arra is ügyeljen, hogy a kijelző kontrasztja megnőjön, mivel minimális kontraszt mellett nem is látszik, hogy az LCD 1602 be van-e kapcsolva vagy sem. Ha ez nem segít, akkor a probléma az érintkezők forrasztásában lehet, ez az I2C modul használatakor. Szintén gyakori oka annak, hogy a kijelző nem működik, az I2C-cím helytelen beállítása. Az a tény, hogy sok gyártó létezik, és más címet is beállíthatnak, itt kell javítani:


LiquidCrystal_I2C lcd(0x27, 16, 2);

A zárójelben két érték látható, a 0x27 és a 16, 2 (a 16, 2 a kijelző mérete, a 0x27 pedig csak az I2C-cím). Ezen értékek helyett megpróbálhat 0x37 vagy 0x3F értéket tenni. Nos, a másik ok egyszerűen egy hibás LCD 1602. Tekintettel arra, hogy az Arduinohoz szinte minden Kínában készül, nem lehet 100%-ig biztos abban, hogy a megvásárolta termék nem hibás.

LCD 1602 előnyei és hátrányai

Nézzük meg az LCD 1602 előnyeit és hátrányait.

Profik

  • Ár. Ez a modul nagyon kedvező áron megvásárolható a kínai üzletekben. Az ár 200-300 rubel. Néha még I2C modullal is eladják.
  • Könnyen csatlakoztatható. Valószínűleg manapság senki sem köt LCD 1602-t I2C nélkül. És ezzel a modullal a csatlakozás csak 4 érintkezőt vesz igénybe, nem lesz vezetékek "hálója".
  • Programozás. A kész könyvtáraknak köszönhetően ezzel a modullal könnyű dolgozni, minden funkció már regisztrálva van. És ha hozzá kell adnia a karakterét, az csak néhány percet vesz igénybe.

Hátrányok

A rádióamatőrök ezrei általi használat ideje alatt nagy mínuszokat nem állapítottak meg, csak házasságvásárlás esetei vannak, mivel főleg a kínai megjelenítési lehetőségeket használják

Ez a cikk az LCD 1602-es kijelző Arduino-hoz való csatlakoztatását tárgyalja, valamint bemutatott mintaprogramokat a kijelzővel való munkavégzéshez. Kategóriájában valóban az egyik legjobb, nem csak rádióamatőrök ezrei választják projektjeikhez!

Ajánlott: