Sisällysluettelo:

Käytä 16x2 LCD -näyttöä I2C: n kanssa: 4 vaihetta
Käytä 16x2 LCD -näyttöä I2C: n kanssa: 4 vaihetta

Video: Käytä 16x2 LCD -näyttöä I2C: n kanssa: 4 vaihetta

Video: Käytä 16x2 LCD -näyttöä I2C: n kanssa: 4 vaihetta
Video: How to use LCD LCD1602 with I2C module for Arduino - Robojax 2024, Marraskuu
Anonim
Käytä 16x2 LCD -näyttöä I2C: n kanssa
Käytä 16x2 LCD -näyttöä I2C: n kanssa
Käytä 16x2 LCD -näyttöä I2C: n kanssa
Käytä 16x2 LCD -näyttöä I2C: n kanssa
Käytä 16x2 LCD -näyttöä I2C: n kanssa
Käytä 16x2 LCD -näyttöä I2C: n kanssa

Yhdessä aiemmista Instructable -ohjelmistani näytin sinulle, kuinka liittää ja liittää nestekidenäyttö Arduino Unoon ja näyttää arvot siinä. Mutta kuten havaittiin, yhteyksiä oli paljon ja jos projekti alkoi muuttua paljon sotkuiseksi liian monien johtojen vuoksi.

Tässä opetusohjelmassa näytän sinulle, kuinka liittää nestekidenäyttö I2C -laitteeseen, jossa on vain 4 nastaa nestekidenäytön ohjaamiseen ja käyttöön. Aloitetaan siis.

Vaihe 1: Tarvittavat komponentit

Tarvittavat komponentit
Tarvittavat komponentit
Tarvittavat komponentit
Tarvittavat komponentit
Tarvittavat komponentit
Tarvittavat komponentit

Tätä projektia varten tarvitset:

  • Arduino Uno
  • 16x2 LCD
  • I2C 16x2 LCD -näytölle
  • Liitäntäjohdot

Näiden kaikkien kanssa mennään liittymien osaan.

Vaihe 2: Liitännät

Liitännät
Liitännät
Liitännät
Liitännät
Liitännät
Liitännät
Liitännät
Liitännät

Katso kuvat ja tee kytkennät. Se on melko yksinkertaista, sinun tarvitsee vain liittää I2C nestekidenäytön portteihin ja juottaa se paikalleen. Liitä sitten SCL -nasta Arduinon A4 -nastaan ja SDA -nasta Arduinon A5 -nastaan.

En juota I2C: tä, koska olen jo juonut otsikkotapit nestekidenäyttöön. Mutta ehdottaisin I2C: n juottamista nestekidenäytölle

Vaihe 3: Koodi

Arduino IDE: ssä on LCD I2C -pääkirjasto. Mutta siinä on pieni ongelma koodissa. Kaikissa tämän kirjaston esimerkeissä oletetaan, että I2C: n oletusosoite on 0x27. Joten meidän on ensin selvitettävä, mikä on I2C: n osoite. Voimme tehdä tämän käyttämällä I2C -skannerikoodia. Kun meillä on I2C -osoite, voimme korvata tämän arvon esimerkkikoodissa ja aloittaa sen käytön.

I2C -skannerin koodi:

#sisältää

void setup () {Wire.begin (); Sarja.alku (9600); while (! Sarja); // odota sarjamonitoria Serial.println ("\ nI2C -skanneri"); } void loop () {tavuvirhe, osoite; int nLaitteet; Serial.println ("Skannaus…"); nLaitteet = 0; for (address = 1; address <127; address ++) {// i2c_scanner käyttää // Write.endTransmisstionin palautusarvoa selvittääkseen, // onko laite hyväksynyt osoitteen. Wire.beginTransmission (osoite); virhe = Wire.endTransmission (); jos (virhe == 0) {Serial.print ("I2C -laite löydetty osoitteesta 0x"); if (osoite <16) Serial.print ("0"); Serial.print (osoite, HEX); Serial.println ("!"); nLaitteet ++; } muu jos (virhe == 4) {Serial.print ("Tuntematon virhe osoitteessa 0x"); if (osoite <16) Serial.print ("0"); Serial.println (osoite, HEX); }} if (nLaitteet == 0) Serial.println ("I2C -laitteita ei löydy / n"); else Serial.println ("valmis / n"); viive (5000); // odota 5 sekuntia seuraavaan skannaukseen}

Esimerkkikoodi (Serial Monitoriin syötettyjen merkkien näyttämiseksi):

#Sisällytä #Sisällytä

LiquidCrystal_I2C lcd (0x3F, 20, 4); // aseta LCD -osoitteeksi 0x27, jos haluat 16 merkkiä ja 2 riviä

mitätön asennus ()

{lcd.init (); // alustetaan lcd lcd.backlight (); Sarja.alku (9600); }

tyhjä silmukka ()

{// kun merkit saapuvat sarjaportin yli… if (Serial.available ()) {// odota hetki, kunnes koko viesti saapuu viiveellä (100); // tyhjennä näyttö lcd.clear (); // lukee kaikki käytettävissä olevat merkit, kun (Serial.available ()> 0) {// näyttää jokaisen merkin nestekidenäytöllä lcd.write (Serial.read ()); }}}

Vaihe 4: Lähtö

Lähtö
Lähtö
Lähtö
Lähtö

Kun olet ladannut koodin, olet valmis menemään. Tässä ohjeessa olen ottanut esimerkin sarjatulostuskoodista. Joten nyt koodin lataamisen jälkeen avaa sarjamonitori ja kirjoita sana ja napsauta "lähetä". Nyt tämän arvon pitäisi näkyä nestekidenäytössä.

Suositeltava: