Përmbajtje:
- Furnizimet
- Hapi 1: Origjina e zgjidhjes
- Hapi 2: Shpjegimi
- Hapi 3: Identifikoni dhe Hiqni Rezistencat
- Hapi 4: Krahasimi midis zgjidhjeve
- Hapi 5: Konsideratat përfundimtare
Video: Ekran LCD 5V Me Arduino Due 3.3V I2C: 5 hapa
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:10
Ky postim synon të shpjegojë një mënyrë më të lehtë për të përdorur Arduino Due (ose tabelë tjetër 3.3V) me ekranin e njohur LCD 16x2 me modulin e përshtatësit I2C.
Problemi fillestar është se LCD ka nevojë për 5V që drita e pasme e tij të funksionojë siç duhet, por kunjat SCL dhe SDA duhet të funksionojnë në 3.3V për të komunikuar me Arduino Due pa shkaktuar dëm. Për të zgjidhur këtë, kam gjetur dy mundësi:
Zgjidhja më e përmendur është përdorimi i një Konvertuesi të Nivelit Logjik Bi-Drejtues, i cili me të vërtetë zgjidh problemin. Por gjithashtu shton një përbërës tjetër në listën tuaj dhe lidhje shtesë të telave në qarkun tuaj
Mënyra tjetër që kam gjetur është thjesht shkrirja e 2 rezistencave tërheqëse në "çantën e përshtatësit I2C" nga LCD. Përveç se është shumë më e lehtë, ajo ka përparësi të tjera të shpjeguara në krahasimin në fund. Kjo metodë është fokusi kryesor i këtij postimi
Furnizimet
Arduino Due
Ekran LCD 16x2 me modulin e përshtatësit I2C
Makine per ngjitjen e metalit
Pompë bashkimi ose fitil bashkues
Piskatore
Hapi 1: Origjina e zgjidhjes
Zgjidhja nuk u shpik nga unë, pashë një sugjerim dhe shpjegim mjaft të mirë në Forumin Arduino në lidhjen më poshtë, të cilën do ta riprodhoj në këtë postim.
forum.arduino.cc/index.php?topic=553725.0
Përgjigje nga: david_prentice
Unë nuk mund të gjej ndonjë mësim të plotë në internet dhe, meqenëse është një problem shumë i zakonshëm, po përpiqem të paraqes zgjidhjen këtu në detaje, të dëshmoj se në të vërtetë funksionon dhe të shtoj informacion që mund të zbusë njëfarë skepticizmi në lidhje me rezultatet e tij.
Hapi 2: Shpjegimi
Pajisjet
Që komunikimi I2C të funksionojë, kërkon rezistorë tërheqës të lidhur me kunjat SDA dhe SCL. Kjo për shkak se pajisjet i kthen këto kunja LOW ndërsa komunikojnë. Për të përfaqësuar një LART, duhet vetëm të mos dërgojë një LOW, dhe falë tërheqjeve shkon në HIGH. (ky kuptim do të jetë mjaft i rëndësishëm më vonë)
LCD "Çantë shpine I2C" ka dy rezistenca tërheqëse 4K7 që i shërbejnë kërkesës I2C. Por meqenëse ato janë të lidhura me Vcc, nëse përdorni 5 V, ata do të tërheqin SDA dhe SCL në 5 V.
Nëse shikoni fletën e të dhënave, mund të shihni se, ndryshe nga tabelat e tjera, Due tashmë ka rezistorë tërheqës 1K5 në bord në kunjat e tij kryesore SDA, SCL, që i tërheq ato në 3.3 V.
Testet
- Shfaq LCD -> Arduino
- Gnd -> Gnd
- Vcc -> 5V
- SDA -> SDA
- SCL -> SCL
Nëse thjesht lidhni LCD -në në Due (pas instalimeve elektrike më lart), tërheqjet 1k5 (ose 1k0) Due të lidhura me 3.3V dhe tërheqjet 4K7 LCD të lidhura me 5 V do të rezultojnë në linja boshe I2C në 3.7 V (3.6 V) me 1k0). Kjo nuk është mirë, pasi që fleta e të dhënave Due përcakton një tension maksimal prej 3.6 V për linjat e tij I/O.
Duke testuar këtë skenar, vetëm me LCD, mora 3, 56 V. Duke shtuar një modul EEPROM në të njëjtat SDA dhe SCL, ai shkoi në 3.606 V. Në të dy rastet gjithçka funksionoi normalisht, por ato janë larg tensionit ideal nivelet duke marrë parasysh maksimumin e përcaktuar prej 3.6 V.
Pra, po, ka një shans që të funksionojë njësoj si e imja, duke mos bërë asnjë ndryshim. Por niveli i tensionit është ende larg idealit dhe disa mospërputhje në tërheqjen Due ose LCD mund ta bëjnë atë të shkojë mbi kufirin 3.6 V. (Do të ishte e këshillueshme që së paku të provoni me kujdes me një potenciometër 20K ose 100K se cila është rezistenca më e ulët midis kunjave 5 V dhe SCL/SDA para se të arrijnë në 3.6 V, megjithëse pjesa tjetër e zgjidhjes është shumë më e sigurt dhe ndoshta më e lehtë)
Zgjidhja
Zgjidhja e paraqitur është thjesht heqja e rezistencave tërheqëse nga çanta LCD, të cilat përpiqen të tërheqin vijën deri në 5 V. Pastaj, vetëm rezistencat tërheqëse në bord do të mbeten, duke tërhequr linjat SCL dhe SDA në 3.3V Me Ai funksionoi në mënyrë perfekte, duke ruajtur kunjat e papunë në rreth 3.262 V!
Lidhjet mbeten të njëjta:
- Ekran LCD -> Arduino
- Gnd -> Gnd
- Vcc -> 5V
- SDA -> SDA
- SCL -> SCL
Nëse pyesni veten nëse LCD nuk do ta tërheqë vijën në 5 V për të përfaqësuar një LART HIGH kur komunikoni, mbani mend se në I2C pajisjet tërheqin vetëm linjat LOW, duke qenë sinjali i Lartë i përfaqësuar kur nuk ndërhyn, i cili do të jetë 3.3 V nga tërheqjet në bord të Due.
Gjithashtu, 3.3 V është i mjaftueshëm që çanta e shpinës I2C të konsiderohet si një sinjal i Lartë.
Hapi 3: Identifikoni dhe Hiqni Rezistencat
Imazhi i mësipërm tregon me të kuqe rezistencat tërheqëse që kam gjetur në modulin tim.
Identifikoni
Ndërsa shpina e përshtatësit LCD I2C mund të ndryshojë, rezistorët mund të mos jenë në të njëjtin konfigurim. Për të identifikuar rezistorët tërheqës, mund të përdorni një multimetër me një test të vazhdimësisë. Çdo rezistencë tërheqëse duhet të ketë njërin skaj të lidhur me pin SCL ose SDA dhe skajin tjetër me Vcc.
Në rastin tim, kishte tre nga rezistencat 4K7 (472 në kodin SMD) në tabelë. Vetëm dy prej tyre plotësuan kërkesat e mësipërme, duke vënë në dukje se këto janë tërheqjet që ne po kërkonim!
Për një masë paraprake shtesë (nëse për ndonjë arsye nuk ishin 4K7), unë gjithashtu testova rezistorët e tjerë dhe konfirmova se asnjëri prej tyre nuk i plotësonte kërkesat për të qenë tërheqës.
Hiq
Tani, gjithçka që duhet të bësh është t’i shkrij ato! Easiershtë më e lehtë nëse keni një pompë saldimi ose fitil saldimi dhe piskatore për t'ju ndihmuar.
Hapi 4: Krahasimi midis zgjidhjeve
Konvertuesi i nivelit të logjikës me dy drejtime (SH. PK)
Pro:
Nuk kërkon ndonjë pajisje ose aftësi bashkimi
Disavantazhet:
Reklamon më shumë kabllo dhe LLC në listën e përbërësve të listës suaj
Lidhjet më të çrregullta me përbërësit shtesë
Pak më e shtrenjtë
Shkrini Rezistencat e tërheqjes LCD
Pro:
Rezultati përfundimtar më i pastër
Ju ndoshta mund ta bëni atë menjëherë, pa pasur nevojë të prisni për LLC
Veçanërisht e mirë nëse doni të zvogëloni shumëllojshmërinë e përbërësve dhe kompleksitetin e montimit në një projekt kompleks ose që dëshironi të përsërisni
Disavantazhet:
Ndryshon qarkun LCD (Nëse dëshironi që ai të jetë "gati për t'u përdorur" me Uno, duke pasur tashmë tërheqjet 4K7, mund t'i zhbëni ndryshimet duke i rishitur ato)
Hapi 5: Konsideratat përfundimtare
Shpresoj që ky tutorial të hedhë dritë mbi këtë çështje të pajtueshmërisë dhe disa nga zgjidhjet e tij të mundshme.
Nëse keni ndonjë ide përmirësimi, shpjegime më të mira, zgjidhje të reja ose keni gjetur ndonjë gabim në postim, ju lutem më tregoni në komente!:)
Recommended:
Si të përdorni një ekran LCD me karakter 20x4 I2C me Arduino: 6 hapa
Si të përdorni një ekran LCD të Karakterit 20x4 I2C Me Arduino: Në këtë tutorial të thjeshtë do të mësojmë se si të përdorim një ekran LCD 20x4 I2C Character me Arduino Uno për të shfaqur një tekst të thjeshtë & Përshëndetje Botë. Shikoni videon
Lojë me gërshërë letre Arduino me letër shkopi duke përdorur ekran LCD 20x4 me I2C: 7 hapa
Lojë me dorë Gërshërë letre Arduino Paper duke përdorur ekran 20x4 LCD me I2C: Përshëndetje të gjithëve ose mbase duhet të them " Përshëndetje Botë! Kjo është një lojë Arduino Paper Rock Scissors duke përdorur një ekran LCD I2C 20x4. Une
Ekran LCD I2C / IIC - Përdorni një ekran SPI në ekranin LCD I2C duke përdorur modulin SPI në IIC me Arduino: 5 hapa
Ekran LCD I2C / IIC | Përdorni një ekran SPI në ekranin LCD I2C Duke përdorur modulin SPI në IIC Me Arduino: Përshëndetje djema pasi një SPI LCD 1602 normal ka shumë tela për t'u lidhur, kështu që është shumë e vështirë ta ndërlidhni me arduino, por ekziston një modul i disponueshëm në treg i cili mund të shndërroni ekranin SPI në ekranin IIC kështu që atëherë ju duhet të lidhni vetëm 4 tela
Ekran LCD I2C / IIC - Shndërroni një ekran SPI në ekranin LCD I2C: 5 hapa
Ekran LCD I2C / IIC | Shndërroni një ekran SPI në ekranin LCD I2C: përdorimi i ekranit spi LCD kërkon shumë lidhje për të bërë, gjë që është vërtet e vështirë për ta bërë, kështu që gjeta një modul që mund të konvertojë LCD i2c në spi LCD, kështu që le të fillojmë
Arduino dhe ESP8266 Me ekran LCD I2c: 9 hapa
Arduino dhe ESP8266 Me Ekran LCD I2c: Objektivi ynë kryesor këtu është të tregojmë funksionimin e modulit serik i2c për ekranin LCD 2x16 ose 20x4. Me këtë modul, ne mund të kontrollojmë ekranet e përmendura më lart ndërsa përdorim vetëm dy kunja (SDA dhe SCL). Kjo e bën komunikimin shumë të thjeshtë dhe