Tartalomjegyzék:

16x2 méretű LCD használata I2C -vel: 4 lépés
16x2 méretű LCD használata I2C -vel: 4 lépés

Videó: 16x2 méretű LCD használata I2C -vel: 4 lépés

Videó: 16x2 méretű LCD használata I2C -vel: 4 lépés
Videó: Текстовые LCD дисплей на контроллере HD44780, Уроки Arduino 2024, November
Anonim
Használjon 16x2 LCD -t I2C -vel
Használjon 16x2 LCD -t I2C -vel
Használjon 16x2 LCD -t I2C -vel
Használjon 16x2 LCD -t I2C -vel
Használjon 16x2 LCD -t I2C -vel
Használjon 16x2 LCD -t I2C -vel

Az egyik korábbi Instructable programomban megmutattam, hogyan kell csatlakoztatni és csatlakoztatni egy LCD -t az Arduino Uno -hoz, és megjeleníteni rajta az értékeket. De amint azt megfigyeltük, sok kapcsolat volt, és ha a projekt nagyon zavaros lett a túl sok vezeték miatt.

Ebben az utasításban megmutatom, hogyan csatlakoztathat egy LCD -t az I2C -hez, amelynek mindössze 4 érintkezője lesz az LCD vezérléséhez és használatához. Tehát kezdjük.

1. lépés: Szükséges összetevők

Szükséges alkatrészek
Szükséges alkatrészek
Szükséges alkatrészek
Szükséges alkatrészek
Szükséges alkatrészek
Szükséges alkatrészek

Ehhez a projekthez szüksége lesz:

  • Arduino Uno
  • 16x2 LCD
  • I2C 16x2 LCD -hez
  • Csatlakoztatható vezetékek

Mindezek mellett térjünk át a kapcsolatok részre.

2. lépés: Kapcsolatok

Kapcsolatok
Kapcsolatok
Kapcsolatok
Kapcsolatok
Kapcsolatok
Kapcsolatok
Kapcsolatok
Kapcsolatok

Nézze meg a képeket, és csatlakoztassa. Elég egyszerű, csak be kell dugni az I2C -t az LCD portjaiba, és a helyére kell forrasztani. Ezután csatlakoztassa az SCL -tűt az Arduino A4 -es tűjéhez, az SDA -tűt pedig az Arduino A5 -ös tűjéhez.

Nem forrasztom az I2C -t, mert már forrasztottam a fejléceket az LCD -n. De javaslom az I2C forrasztását az LCD -n

3. lépés: Kód

Az Arduino IDE tartalmaz egy LCD I2C mesterkönyvtárat. De van egy kis probléma a kóddal. A könyvtár összes példája az I2C alapértelmezett címét feltételezi 0x27 -nek. Tehát először azt kell megtudnunk, mi az I2C címünk. Ezt megtehetjük az I2C szkenner kód használatával. Miután megkaptuk az I2C címet, lecserélhetjük ezt az értéket a példakódban, és elkezdhetjük használni.

I2C szkenner kód:

#befoglalni

void setup () {Wire.begin (); Sorozat.kezdet (9600); while (! Sorozat); // várjon a soros monitorra Serial.println ("\ nI2C Scanner"); } void loop () {bájt hiba, cím; int nEszközök; Serial.println ("Szkennelés …"); n Eszközök = 0; for (address = 1; address <127; address ++) {// Az i2c_scanner a // Write.endTransmisstion visszatérési értékét használja annak megállapítására, hogy // egy eszköz nyugtázta -e a címet. Wire.beginTransmission (cím); hiba = Wire.endTransmission (); if (hiba == 0) {Serial.print ("I2C eszköz található a 0x címen"); if (cím <16) Serial.print ("0"); Serial.print (cím, HEX); Serial.println ("!"); nEszközök ++; } else if (hiba == 4) {Serial.print ("Ismeretlen hiba a 0x címen"); if (cím <16) Serial.print ("0"); Serial.println (cím, HEX); }} if (nDevices == 0) Serial.println ("Nem található I2C -eszköz / n"); else Serial.println ("kész / n"); késleltetés (5000); // várjon 5 másodpercet a következő vizsgálatra}

Példakód (A Soros Monitorban bevitt karakterek megjelenítéséhez):

#befoglalni #befoglalni

LiquidCrystal_I2C LCD (0x3F, 20, 4); // állítsa az LCD címet 0x27 értékre 16 karakter és 2 soros kijelző esetén

üres beállítás ()

{lcd.init (); // inicializálja az LCD -t lcd.backlight (); Sorozat.kezdet (9600); }

üres hurok ()

{// amikor karakterek érkeznek a soros porton keresztül… if (Serial.available ()) {// várjon egy kicsit, amíg a teljes üzenet megérkezik (100); // a képernyő törlése lcd.clear (); // olvassa el az összes rendelkezésre álló karaktert, miközben (Serial.available ()> 0) {// minden karakter megjelenítése az LCD -n lcd.write (Serial.read ()); }}}

4. lépés: A kimenet

A kimenet
A kimenet
A kimenet
A kimenet

Miután feltöltötte a kódot, készen áll a használatra. Ehhez az utasításhoz a Soros nyomtatási kód példáját vettem. Tehát most a kód feltöltése után nyissa meg a Soros monitort, írja be a szót, és kattintson a "küldés" gombra. Most látnia kell, hogy ez az érték megjelenik az LCD -n.

Ajánlott: