Tartalomjegyzék:
- 1. lépés: Áramkör áttekintése
- 2. lépés: NYÁK -gyártás
- 3. lépés: A szoftver áttekintése
- 4. lépés: A terv tesztelése
- 5. lépés: Következtetés
- 6. lépés: Felhasznált hivatkozások
Videó: Uber I2C LCD vezérlőmodul: 6 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:41
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
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
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
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é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:
Az Uber gomb: 7 lépés
Az Uber gomb: Szerezzen Uber -utazást csak egy gomb megnyomásával! pozíció egy specifikációhoz
I2C / IIC LCD kijelző - SPI LCD használata az I2C LCD kijelzőhöz Az SPI to IIC modul használata Arduino -val: 5 lépés
I2C / IIC LCD kijelző | Használjon SPI LCD -t az I2C LCD -kijelzőhöz Az SPI -IIC modul használata Arduino -val: Sziasztok, mivel egy normál SPI LCD 1602 -nek túl sok vezetékét kell csatlakoztatni, ezért nagyon nehéz összekapcsolni az arduino -val, de a piacon elérhető egy modul konvertálja az SPI kijelzőt IIC kijelzővé, így csak 4 vezetéket kell csatlakoztatnia
I2C / IIC LCD kijelző - Az SPI LCD átalakítása I2C LCD kijelzővé: 5 lépés
I2C / IIC LCD kijelző | Konvertálja az SPI LCD -t I2C LCD kijelzővé: az spi lcd kijelző használata túl sok kapcsolatot igényel, ami nagyon nehéz, ezért találtam egy modult, amely képes átalakítani az i2c LCD -t spi lcd -re, így kezdjük
Karakter LCD I2c adapter (példa az I2c csatlakozásra): 12 lépés (képekkel)
Karakter LCD I2c adapter (I2c csatlakozási példa): Csatlakozási sémát készítek egy karakterkijelzős i2c adapterhez. Ellenőrizze a frissítéseket a webhelyemen. Most hozzáadok egy vezetékes csatlakozási sémát is, hogy az eredeti könyvtárat használjam, nem a villásomat. karakteres LCD kijelzőkhöz, villás vetítéshez
Hexapod Arduino Über Eine SSC32: 5 lépés
Hexapod Arduino Über Eine SSC32: Link zum http://youtu.be/E5Z6W_PGNAgMein erster versuch eines eigenbau Hexapod