Sisällysluettelo:

5 V: n LCD -näyttö, jossa Arduino Due 3.3V I2C: 5 vaihetta
5 V: n LCD -näyttö, jossa Arduino Due 3.3V I2C: 5 vaihetta

Video: 5 V: n LCD -näyttö, jossa Arduino Due 3.3V I2C: 5 vaihetta

Video: 5 V: n LCD -näyttö, jossa Arduino Due 3.3V I2C: 5 vaihetta
Video: Управляйте 10 выходными контактами или реле с помощью 10 кнопочных переключателей с 1 входным контактом Arduino ANPB-V2. 2024, Heinäkuu
Anonim
5V LCD -näyttö, jossa Arduino Due 3.3V I2C
5V LCD -näyttö, jossa Arduino Due 3.3V I2C

Tämän viestin tarkoituksena on selittää helpompi tapa käyttää Arduino Due (tai muuta 3,3 V: n korttia) suositun 16x2 LCD -näytön ja I2C -sovitinmoduulin kanssa.

Ensimmäinen ongelma on, että nestekidenäytön taustavalo tarvitsee 5 V: n, jotta sen taustavalo toimisi kunnolla, mutta SCL- ja SDA -nastojen tulisi toimia 3,3 V: n jännitteellä kommunikoidakseen Arduino Due -laitteen kanssa vahingoittamatta sitä. Tämän ratkaisemiseksi olen löytänyt kaksi vaihtoehtoa:

Kaikkein mainituin ratkaisu on käyttää kaksisuuntaista loogista tasomuunninta, joka todella ratkaisee ongelman. Mutta se lisää myös toisen komponentin luetteloosi ja lisäjohdotusliitäntöjä piirissäsi

Toinen tapa, jonka olen löytänyt, on yksinkertaisesti irrottaa 2 pullup -vastusta "I2C -adapterirepusta" nestekidenäytöstä. Sen lisäksi, että se on paljon helpompaa, sillä on muita etuja, jotka on selitetty vertailussa lopussa. Tämä menetelmä on tämän viestin pääpaino

Tarvikkeet

Arduino Due

16x2 LCD -näyttö I2C -sovitinmoduulilla

Juotin

Juotospumppu tai juotoskärki

Pinsetit

Vaihe 1: Ratkaisun alkuperä

Ratkaisu ei ollut minun keksimäni, näin melko hyvän ehdotuksen ja selityksen Arduino -foorumissa alla olevasta linkistä, jonka toistan tässä viestissä.

forum.arduino.cc/index.php?topic=553725.0

Vastaus henkilöltä: david_prentice

En löytänyt täydellistä opetusohjelmaa Internetistä, ja koska se on hyvin yleinen ongelma, yritän esitellä ratkaisun täällä yksityiskohtaisesti, todistaa sen tosiasiallisen toimivuuden ja lisätä tietoja, jotka saattavat lieventää epäilyksiä sen tuloksista.

Vaihe 2: Selitys

Laitteet

Jotta I2C -tiedonsiirto toimisi, se vaatii SDA- ja SCL -nastoihin kytketyt vetovastusvastukset. Tämä johtuu siitä, että laitteet kääntävät nämä nastat vain matalaksi kommunikoinnin aikana. HIGH: n esittämiseksi sen on vain lähetettävä LOW, ja pullupien ansiosta se siirtyy HIGH: iin. (tämä ymmärrys on tärkeä myöhemmin)

Nestekidenäytössä "I2C-reppu" on kaksi 4K7-vetovastusta, jotka palvelevat I2C-vaatimuksia. Mutta koska ne on kytketty Vcc: hen, jos käytät 5 V: ta, ne vetävät SDA: n ja SCL: n 5 V.

Jos tarkastelet tietolomaketta, näet, että toisin kuin muut levyt, Due-laitteessa on jo 1K5-vetovastusvastukset SDA: n SCL-nastoissa, mikä vetää ne 3,3 V.

Testit

  • Näyttö LCD -> Arduino
  • Gnd -> Gnd
  • Vcc -> 5V
  • SDA -> SDA
  • SCL -> SCL

Jos liität nestekidenäytön vain Due -laitteeseen (yllä olevien johdotusten mukaisesti), 1k5 (tai 1k0) Due -vetimet, jotka on kytketty 3,3 V: iin ja 4K7 LCD -vetimet, jotka on kytketty 5 V: iin, johtavat joutokäynnillä oleviin I2C -linjoihin 3,7 V (3,6 V) 1k0). Tämä ei ole hyvä, koska Due -lomakkeessa on I/O -linjojen enimmäisjännite 3,6 V.

Testaamalla tätä skenaariota vain nestekidenäytöllä, sain 3, 56 V: n. Lisäämällä EEPROM -moduulin samaan SDA: han ja SCL: ään se nousi 3,606 V: iin. Molemmissa tapauksissa kaikki toimi normaalisti, mutta ne eivät ole kaukana ihanteellisesta jännitteestä ottaen huomioon 3,6 V: n maksimi.

Joten kyllä, on mahdollista, että se toimii aivan kuten omani, mutta ei tee muutoksia. Mutta jännitetaso on edelleen kaukana ihanteellisesta, ja erimielisyydet Due- tai LCD -vedossa voivat aiheuttaa sen ylittämisen 3,6 V: n rajan yläpuolelle. (Olisi suositeltavaa ainakin testata ennen varovasti 20K- tai 100K -potentiometrillä, mikä on pienin vastus 5 V: n ja SCL/SDA -nastojen välillä ennen kuin ne saavuttavat 3,6 V: n, vaikka muu liuos on paljon turvallisempaa ja luultavasti helpompaa)

Ratkaisu

Esitetty ratkaisu on yksinkertaisesti irrottaa vetovastukset nestekidenäytön reppusta, joka yrittää vetää linjaa 5 V: iin asti. Jäljelle jää vain Due-sisäänvedettävät vetovastukset, jotka vetävät SCL- ja SDA-linjat 3,3 V.. Se toimi täydellisesti pitäen joutokäynnit noin 3,262 V: n jännitteellä!

Liitännät pysyvät samana:

  • LCD -näyttö -> Arduino
  • Gnd -> Gnd
  • Vcc -> 5V
  • SDA -> SDA
  • SCL -> SCL

Jos mietit, jos LCD -näyttö ei vedä linjaa 5 V: iin edustaakseen KORKEAa kommunikoidessaan, muista, että I2C: ssä laitteet vetävät vain viivoja LOW, mikä on KORKEA signaali, kun se ei häiritse, mikä on 3,3 V Due: n vetoketjut laivassa.

Myös 3,3 V riittää, jotta I2C -reppu voidaan pitää HIGH -signaalina.

Vaihe 3: Tunnista ja poista vastukset

Tunnista ja poista vastukset
Tunnista ja poista vastukset
Tunnista ja poista vastukset
Tunnista ja poista vastukset

Yllä oleva kuva näyttää punaisella moduulistani löytämäni pullup -vastukset.

Tunnistaa

Koska LCD I2C -sovittimen reppu voi vaihdella, vastukset eivät välttämättä ole samassa kokoonpanossa. Vetovoimien tunnistamiseksi voit käyttää yleismittaria jatkuvuustestillä. Jokaisella vetovastuksella tulee olla toinen pää kytketty SCL- tai SDA-nastaan ja toinen pää Vcc-liittimeen.

Minun tapauksessani oli kolme 4K7 (472 SMD -koodissa) -vastuksesta levyllä. Vain kaksi heistä täytti yllä olevat vaatimukset ja huomautti, että nämä ovat etsimämme pullupit!

Ylimääräisen varotoimenpiteen vuoksi (jos jostain syystä ne eivät olleet 4K7) testasin myös muut vastukset ja varmistin, ettei yksikään niistä täyttänyt pull-up-vaatimuksia.

Poista

Nyt sinun tarvitsee vain purkaa ne juotoksesta! Se on helpompaa, jos sinulla on juotospumppu tai juotospiikki ja pinsetit auttamaan.

Vaihe 4: Ratkaisujen vertailu

Kaksisuuntainen logiikan tasomuunnin (LLC)

Plussat:

Ei vaadi juotoslaitteita tai kykyjä

Haittoja:

Mainokset lisää kaapeleita ja LLC: n luettelosi komponenttiluetteloon

Messier -liitännät lisäkomponenttien kanssa

Hieman kalliimpi

Irrota LCD-vetovastus

Plussat:

Puhtaampi lopputulos

Luultavasti voit tehdä sen heti, eikä sinun tarvitse odottaa LLC: tä

Erityisen hyvä, jos haluat vähentää osien ja kokoonpanon monimutkaisuutta monimutkaisessa projektissa tai haluat kopioida

Haittoja:

Muuttaa LCD -piiriä (Jos haluat sen olevan "käyttövalmis" Unon kanssa, jolla on jo 4K7 -pullupit, voit kumota muutokset, jotka päivittävät ne uudelleen)

Vaihe 5: Viimeiset näkökohdat

Toivon, että tämä opetusohjelma valaisee hieman tätä yhteensopivuusongelmaa ja joitakin sen mahdollisia ratkaisuja.

Jos sinulla on parannusideoita, parempia selityksiä, uusia ratkaisuja tai olet löytänyt viestistä virheen, kerro siitä kommenteissa!:)

Suositeltava: