Tartalomjegyzék:

Uber I2C LCD vezérlőmodul: 6 lépés
Uber I2C LCD vezérlőmodul: 6 lépés

Videó: Uber I2C LCD vezérlőmodul: 6 lépés

Videó: Uber I2C LCD vezérlőmodul: 6 lépés
Videó: Введение в LCD2004 ЖК-дисплей с модулем I2C для Arduino 2024, Július
Anonim
Uber I2C LCD vezérlőmodul
Uber I2C LCD vezérlőmodul
Uber I2C LCD vezérlőmodul
Uber I2C LCD vezérlőmodul
Uber I2C LCD vezérlőmodul
Uber I2C LCD vezérlőmodul

Preambulum

Ez az útmutató részletesen ismerteti a HD44780 LCD -alapú vezérlőmodul létrehozásának módját (fenti 1. kép). A modul lehetővé teszi a felhasználó számára, hogy az LCD minden aspektusát programozottan vezérelje az I2C -n keresztül, beleértve; LCD és kijelző, kontraszt és háttérvilágítás. Bár az Arduino Uno R3 -at használták a prototípus elkészítéséhez, ugyanolyan jól fog működni minden olyan mikrokontrollerrel, amely támogatja az I2C -t.

Bevezetés

Amint fentebb említettük, ez a cikk egy I2C LCD vezérlőmodul létrehozását dokumentálja, elsősorban tervezési gyakorlatként szánták annak meghatározására, hogy mennyi ideig tart a gyakorlatilag működő PCB létrehozása.

A kialakítás felváltja a szabványos általános vezérlőmodult (3. kép fent), és az általam korábban készített Instructables és könyvtárakra támaszkodik.

A kezdeti koncepció prototípusától (2. ábra) a befejezett, teljesen tesztelt PCB -ig (1. ábra fent) összesen 5,5 napig tartott.

Milyen alkatrészekre van szükségem? Lásd az alábbi anyagjegyzéket

Milyen szoftverre van szükségem?

  • Arduino IDE 1.6.9,
  • Kicad v4.0.7, ha módosítani szeretné a NYÁK -t. Ellenkező esetben csak küldje el az „LCD_Controller.zip” fájlt a JLCPCB -nek.

Milyen eszközökre van szükségem?

  • Mikroszkóp legalább x3 (SMT forrasztáshoz),
  • SMD forrasztópáka (folyékony fluxus tollal és fluxusos forrasztóval),
  • Erős csipesz (SMT forrasztáshoz),
  • Finom fogó (hegyes és szúrós orr),
  • DMM hallható folytonossági ellenőrzéssel.

Milyen készségekre van szükségem?

  • Sok türelmet,
  • Nagy kézügyesség és kiváló kéz/szem koordináció,
  • Kiváló forrasztási készség.

Érintett témák

  • Bevezetés
  • Áramkör áttekintés
  • NYÁK -gyártás
  • Szoftver áttekintés
  • A tervezés tesztelése
  • Következtetés
  • Felhasznált hivatkozások

1. lépés: Áramkör áttekintése

Áramkör áttekintés
Áramkör áttekintés

Az összes elektronika teljes kapcsolási rajza a fenti 1. képen látható, az alábbi PDF -fájllal együtt.

Az áramkört úgy tervezték, hogy pontosan helyettesítse a szabványos PCF8574A I2C LCD vezérlő modult a következő fejlesztésekkel;

  • I2C felhasználó által választható 3v3 vagy 5v kompatibilitás,
  • Digitális kontrasztvezérlés vagy hagyományos edénybeállítás,
  • Változtatható hátsó fényerősség -választás a Quartic enyhítő funkció vezérlésével a sima fakulás érdekében.

LCD kijelző vezérlés

Ez a szabványos I2C LCD vezérlőmodul faxszáma, amely PCF8574A (IC2) szabványt használ az I2C párhuzamos átalakításához.

Ennek alapértelmezett I2C címe 0x3F.

3v3 vagy 5v I2C kompatibilitás

3v3 működéshez illessze be a Q1, Q2 ROpt1, 2, 5 & 6, IC1, C2 és C2 elemeket.

Ha 5V -os működésre van szükség, akkor ne szereljen be 3v3 -as alkatrészeket, cserélje ki őket 0 ohmos ellenállásokra, ROpt 3 és 4.

Digitális kontraszt

A digitális kontraszt szabályozása az U2 MCP4561-103E/MS és C4, R5 digitális potenciométer használatával érhető el.

Ha hagyományos mechanikus potenciométerre van szükség, akkor az U2, C4 és R5 helyett az RV1 10K NYÁK -ra szerelhető. Lásd BoM a kompatibilis potenciométert.

A J6 jumper áthidalásával az I2C cím 0x2E. Feltételezte, hogy normál működéshez ez áthidalható.

Változtatható háttérvilágítás intenzitás

A változtatható háttérvilágítás intenzitását az LCD LED háttérvilágításának PWM modulációja szabályozza az U1 6 -os és az ATTiny85 érintkezőn keresztül. Annak érdekében, hogy teljes mértékben kompatibilis maradjon a szabványos I2C LCD vezérlőmodulokkal, az R1, T1 R7 és T2 modulok a +ve tápegység modulálására szolgálnak.

Ennek alapértelmezett I2C címe 0x08. Ez a felhasználó által választható, az U1 programozása előtti fordítási időben.

2. lépés: NYÁK -gyártás

NYÁK -gyártás
NYÁK -gyártás
NYÁK -gyártás
NYÁK -gyártás
NYÁK -gyártás
NYÁK -gyártás
NYÁK -gyártás
NYÁK -gyártás

Amint azt korábban említettük, ez az útmutató egy gyakorlat volt, amelynek célja elsősorban annak meghatározása, hogy mennyi idő alatt készül el egy terv (amelynek gyakorlati célja volt).

Ebben az esetben szombat délután gondoltam az eredeti koncepcióra, és a prototípust elkészítettem a fenti 1. képen. Az elképzelésem az volt, hogy létrehoztam az I2C LCD vezérlőmodul saját változatát, azonos lábnyomdal, amely teljes programozott vezérlést biztosít az LCD -n az I2C felett.

A sematikus diagramot és a NYÁK -elrendezést a Kicad v4.0.7 2. és 3. képével fejlesztettük ki. Ezt vasárnap délután fejezték be, és az alkatrészeket a Farnell -től rendelték, és a NYÁK -ot vasárnap estére töltötték fel a JLCPCB -re.

Az alkatrészek szerdán érkeztek a Farnell -ből, majd csütörtökön a JLCPCB PCB -jei (a DHL szállítási szolgáltatást használtam a dolgok felgyorsítására), 4., 5., 6. és 7. kép.

Csütörtök estére két táblát (3v3 és 5v változat) készítettek és sikeresen teszteltek egy 4 x 20 LCD kijelzőn. 8., 9. és 10. kép.

Csodálatos 5,5 nap a kezdeti elképzeléstől a befejezésig.

Megdöbbentő, hogy a JLCPCB milyen gyorsan képes megrendelést fogadni, kétoldalas PTH PCB -t gyártani és szállítani az Egyesült Királyságba. Hólyagosodás 2 nap a gyártáshoz és 2 nap a szállításhoz. Ez gyorsabb, mint az Egyesült Királyságban működő NYÁK -gyártók, és az ár töredékéért.

3. lépés: A szoftver áttekintése

Szoftver áttekintés
Szoftver áttekintés
Szoftver áttekintés
Szoftver áttekintés

Az I2C LCD vezérlőmodul vezérléséhez szükséges szoftver három fő összetevőből áll;

1. LiquidCrystal_I2C_PCF8574 Arduino könyvtár

Itt érhető el

Az Arduino vázlatában kell használni az LCD kijelző vezérléséhez.

Megjegyzés: Ez ugyanúgy jól működik az általános I2C LCD modulvezérlővel. Csak ez ad funkcionalitást, mint más könyvtárak.

2. MCP4561_DIGI_POT Arduino könyvtár

Használja a vázlatában az LCD kontraszt programozásához

Itt érhető el

3. Az LCD háttérvilágítás programozható szabályozása a PWM és a Quartic enyhítő funkció segítségével a sima fakulás érdekében

Amint korábban említettük, a tábla egyetlen ATTiny85 -öt tartalmaz, amelyet a kijelző háttérvilágításának fokozatos elhalványulásának szabályozására használnak.

Ennek a szoftvernek a részleteit egy korábbi, utasítható „Sima PWM LED -elhalványulás az ATTiny85 -tel” tartalmazza

Ebben az esetben annak érdekében, hogy a végleges NYÁK -méretek megegyezzenek az általános LCD vezérlőmodulokkal, az ATTiny85 SOIC változatát választottuk. Az 1. és 2. kép bemutatja, hogyan programozták és tesztelték az ATTiny85 SOIC -t a felállított prototípusban.

Az ATTiny85 -be programozott kód "Tiny85_I2C_Slave_PWM_2.ino", itt érhető el

A saját ATTiny85 programozó létrehozásával kapcsolatos részletekért tekintse meg ezt az útmutató utasítást "Az ATTiny85, ATTiny84 és ATMega328P programozása: Arduino mint internetszolgáltató"

4. lépés: A terv tesztelése

A tervezés tesztelése
A tervezés tesztelése
A tervezés tesztelése
A tervezés tesztelése

A tervezés teszteléséhez készítettem egy vázlatot „LCDControllerTest.ino” néven, amely lehetővé teszi a felhasználó számára, hogy bármilyen LCD specifikus paramétert közvetlenül soros terminálkapcsolaton keresztül állítson be.

A vázlat megtalálható a GitHub tároló I2C-LCD-vezérlőmodulomban

A fenti 1. képen az 5v I2C kompatibilis táblaprés látható, amely 4 x 20 LCD -re van felszerelve, és a 2. kép az alapértelmezett kijelző, amikor a tesztkódot először futtatja.

A következő alapértelmezett értékeket használja a háttérvilágításhoz és a kontraszthoz;

  • #define DISPLAY_BACKLIGHT_LOWER_VALUE_DEFAULT ((előjel nélküli hosszú) (10))
  • #define DISPLAY_CONTRAST_VALUE_DEFAULT ((uint8_t) (40))

Úgy találtam, hogy ezek jól működtek a 4 x 20 -ös LCD -kijelzővel, amelyet tartalékon feküdtem.

5. lépés: Következtetés

Amikor elég régen kezdtem az elektronika/szoftveriparban, nagy hangsúlyt fektettem a huzal-tekercselés vagy a veroboard-konstrukció használatára a prototípusok elkészítéséhez, sok túltervezéssel a végső áramkörben, ha hibázott., figyelembe véve a tábla újraforgatásának költségeit és időtartamát.

Egy hiba általában néhány hétbe került az ütemtervben, és megfújta a haszonkulcsot (és esetleg a munkáját).

A PCB -ket „műalkotásoknak” nevezték, mivel valóban műalkotások voltak. Kétszer teljes méretben készült, ragadós fekete kreppszalaggal, egy "nyomkövető" vagy rajzoló által, és a fab house lefényképezte, hogy a fotó ellenálljon a sablonoknak.

A kapcsolási rajzokat nyomkövetők is készítették, és kézzel rajzolták a tervezési jegyzetekből. A másolatok fotostatikusan készültek, és „kék nyomatoknak” nevezték őket. Mert változatlanul kék színűek voltak.

A mikrovezérlők csak gyerekcipőben jártak, és rendszerint áramkörben emulálódtak, ha az Ön cége megengedhet magának egy ilyen bonyolult és drága fejlesztési környezetet.

Abban az időben, mint gyártó, a szoftverfejlesztő eszközlánc puszta költsége megfizethetetlen volt, elkerülhetetlenül kénytelen volt hexadecimális értékeket közvetlenül az EPROM -ba (RAM/Flash, ha nagy szerencséje volt) piszkálni, majd órákat töltött az eredő viselkedés értelmezésével, hogy megállapítsa, mi a kódja akkor járt el, ha nem a várt módon működött (a bit 'wiggling' vagy a soros nyomtatás a legnépszerűbb hibakeresési technikák. Néhány dolog soha nem változik). Általában minden saját könyvtárat meg kellett írnia, mivel egyik sem volt elérhető (biztosan nem volt olyan gazdag forrás, mint az internet).

Ez azt jelentette, hogy sok időt töltött azzal, hogy megértse, hogyan működik valami, és kevesebb időt töltött kreatívan.

Minden diagramját kézzel rajzolták, jellemzően A4 -en vagy A3 -on, és alaposan át kellett gondolni, hogy logikus jelátvitelt biztosítsanak számukra balról jobbra. A javítások általában azt jelentették, hogy friss lappal kell kezdeni.

A végső áramkört nagyrészt a veroboard segítségével fejlesztették ki az állandóság érdekében, és egy egyszerű ABS házba szerelték fel, hogy „professzionális tapintású” legyen.

Éles ellentétben ezt az egész projektet 5,5 nap alatt fejlesztettem ki kiváló minőségű ingyenes szoftverek használatával, ami professzionális szabványos PCB -t eredményezett. Ha a vágy elvitt volna, beépíthettem egy saját készítésű 3D nyomtatott dobozba.

Olyasmi, amiről alig egy évtizeddel ezelőtt csak álmodhatott.

Hogyan változtak a dolgok jobbra.

6. lépés: Felhasznált hivatkozások

KiCAD Vázlatos rögzítés és NYÁK -tervezés

KiCAD EDA

Arduino ORG szoftverfejlesztő eszköz

Arduino

LiquidCrystal_I2C_PCF8574 Arduino könyvtár

Itt

MCP4561_DIGI_POT Arduino könyvtár

Itt

Sima PWM LED -elhalványulás az ATTiny85 -tel

Itt

Az ATTiny85, ATTiny84 és ATMega328P programozása: Arduino mint ISP

Ajánlott: