Tartalomjegyzék:

HD44780 LCD -I2C adapterkártya a buszkalózhoz: 9 lépés
HD44780 LCD -I2C adapterkártya a buszkalózhoz: 9 lépés

Videó: HD44780 LCD -I2C adapterkártya a buszkalózhoz: 9 lépés

Videó: HD44780 LCD -I2C adapterkártya a buszkalózhoz: 9 lépés
Videó: HD44780 MegaPixel LCD Demo 2024, November
Anonim
HD44780 LCD -I2C adapterkártya a buszkalózhoz
HD44780 LCD -I2C adapterkártya a buszkalózhoz
HD44780 LCD -I2C adapterkártya a buszkalózhoz
HD44780 LCD -I2C adapterkártya a buszkalózhoz

A HD44780 lapkakészleten alapuló olcsó karakteres LCD -k különböző méretűek: 2x16, 4x20 stb. Ezek a kijelzők két szabványos interfészmóddal rendelkeznek, 4 bites és 8 bites párhuzamos. A 8 biteshez összesen 11 adatvonal szükséges, a 4 biteshez 7 (csak íráshoz 6). Egyes LCD -k támogatnak egy további soros adatmódot, mint például a Hack a Day által lefedett VFD I. A HD44780 LCD -k általában 5 voltos alkatrészek, külön tápegységgel a háttérvilágításhoz. A Bus Pirate -nek csak öt 5 voltos tűrő I/O csapja van, ezért készítettünk egy kis adapterlapot, amely elegendő tűvel rendelkezik az LCD vezérléséhez. A Bus Pirate vezérli az adapterkártyát az LCD interfész könyvtárán keresztül. Olvassa tovább a Bus Pirate HD44780 karakterű LCD adapter táblát és az interfész könyvtárat. A Seeed Studio által gyártott PCB -ket, készleteket vagy összeszerelt készleteket körülbelül 15 dollárért, ideértve a világméretű szállítást is, itt találhat. Néhány formázási elemet és HTML -táblázatot nem tudtam belefoglalni az Instructable -be, az eredeti bejegyzést a Dangerous Prototypes címen tekintheti meg blog.

1. lépés: Hardver

Hardver
Hardver
Hardver
Hardver
Hardver
Hardver

Ebben a cikkben felvázoljuk a HD44780-alapú LCD-k I2C adapterlapját. Bemutatjuk egy Bus Pirate univerzális soros interfésszel. Az I2C-alapú HD44780 interfészkönyvtár Bus Pirate forráskódja nyilvános, így szabadon alkalmazkodhat saját projektjeihez. HardwareFull size circuit image [PNG]. Az áramkört és a PCB -t a Cadsoft Eagle ingyenes verziójával tervezték. A tervfájlok letölthetők a Bus Pirate SVN -ből. Az adapterkártya használata előtt győződjön meg arról, hogy az LCD adatlapja megfelel az adapter érintkezőjének. Nem minden LCD egyforma. PCF8574 I/O bővítő IC Ez egy egyszerű 8 I/O bővítő chip, amelyet a kétvezetékes I2C interfészen keresztül vezérelnek. Az I2C interfész a JP1 fejlécből érhető el. A PCF8574 2,5 és 5 volt között működik. Az I/O csapok a tápfeszültségről működnek, így ha 5 voltos feszültséget táplálunk, akkor 5 volton keresztül csatlakozik az LCD -hez. A C1 (0,1uF) leválasztja az IC -t a tápegység ingadozásától. A PCF8574 egyik érintkezője 3 mm -es LED -et (LED1) vezérel az R2 áramkorlátozó ellenálláson (1000 ohm) keresztül. A LED világít, jelezve a sikeres kommunikációt a Bus Pirate és az adapter között. A PCF8574 nem tud elegendő áramot szolgáltatni a LED táplálásához, ezért a LED -et az 5 voltos tápegységről tápláljuk, és lekapcsoljuk a földet. LCD Az adapterlap HD44780 alapú karakteres LCD-vel kommunikál 4 bites párhuzamos interfész módban. A 4 bites interfész -tűk - RS, RW, EN és D4 -D7 - a PCF8574 I/O tűk közül héthez csatlakoznak. Szeretjük a 0,1 hüvelykes hüvelyes fejlécet használni az adapter LCD -hez való csatlakoztatásához, általában az LCD -t a csapokhoz támaszthatja, hogy elegendő kontaktus jöjjön létre a gyors teszthez. Az R1 (10K) nyíróellenállás kontrasztbeállító feszültséget biztosít a az LCD fejlécet. Nem csatlakoztattuk a háttérvilágítás csapjait, mert sokféle háttérvilágítási stílus létezik. A LED -es háttérvilágítás áramellátása károsíthatja a negatív feszültséget igénylő képernyőt. fejléc JP2. A Bus Pirate felhúzó ellenállásait egy második tápegységgel láttuk el. PCB Az áramkört és a PCB-t a Cadsoft Eagle ingyenes verziójával terveztük. A tervfájlok letölthetők a Bus Pirate SVN-ből. A PCB egyoldalas, átmenő lyukú kivitel egyetlen áthidaló vezetékkel (pirossal látható). PCB-ket, készleteket vagy összeszerelt készleteket kaphatunk a Seeed Studio által körülbelül 15 dollárért, ideértve a világméretű szállítást is. Itt többet. minden th durva lyukú) C10.1uF/10volts+R110000 (10K) ohm single turn trimmer/potentiometer, 6mmR21000 (1K) ohm ellenállás, 1/4 watt LED13mm (T1) LED, pirosJP1+JP20.1 "hüvely, 5 érintkezős Az I2C I/O bővítő DIP16ICS116 tűs DIP aljzat az IC1I számára nem tartalmazhat néhány formázási elemet és HTML táblázatot az Instructable programban, az eredeti bejegyzést a Dangerous Prototypes blogon láthatja.

2. lépés: Kapcsolatok

Kapcsolatok
Kapcsolatok

Eszköz: HD44780 karakterű LCD. Busz: 4 bites párhuzamos, PCF8574 I2C adapterkártyával. Teljesítménykövetelmények: 5 volt. Hivatkozások: adatlap példa [PDF], HD44780 parancs hivatkozás, HD44780 LCD uber-site. az adaptert a Bus Pirate univerzális soros interfész LCD könyvtárához tervezte, de minden olyannal működik, amely képes beszélni az I2C protokollról. Vessen egy pillantást a Bus Pirate forráskódjára az I2C-> HD44780 megvalósítás példájához. Csatlakoztassa a Bus Pirate-t az adapterlaphoz a táblázat szerint. A táblázat a nyers csatlakozásokat is mutatja a PCF8574 IC -hez, ha adapterkártya nélkül követi. Csatlakoztassa az adaptert az LCD -hez elegendő, általában 5 voltos tápegységhez. Az adapter és a Bus Pirate közötti I2C kapcsolat 2 és 10K közötti felhúzó ellenállásokat igényel. További információ a felhúzásokkal és a Bus Pirate fedélzeti felhúzó ellenállásokkal való vegyes feszültségű interfészekről. Néhány formázási elemet és HTML táblázatot nem tudtam beilleszteni az Instructable-be, az eredeti bejegyzést a Dangerous Prototypes blogon tekintheti meg.

3. lépés: 1. lépés: Könyvtár beállítása

1. lépés: Könyvtár beállítása
1. lépés: Könyvtár beállítása

Felületkezelés Az adapter kialakításával és a Bus Pirate -hez való csatlakoztatással foglalkoztunk, most végre ideje írni valamit az LCD -re. Hi> m <<11 <<1 <<W <

p <<2 <<v <<< kap feszültségjelentéstFESZÜLTSÉGMONITOR: 5V: 4.9 | 3.3V: 3.3 | VPULLUP: 5.0 <<Nyomja meg az 'm' gombot a Bus Pirate terminálon, és válassza ki az LCD könyvtárat. Jelenleg csak a HD44780 karakterű LCD-ket támogatja a cikk első felében leírt PFC8574 adapter használatával (1. opció). Engedélyezze a tápegységeket (nagy „W”) és a felhúzó ellenállásokat („p” menü). Ellenőrizze a feszültségfigyelőt („v” menü), és győződjön meg arról, hogy a felhúzó feszültség (Vpullup) 5 volt körül van.

4. lépés: 2. lépés. Visszaállítás és inicializálás

2. lépés: Visszaállítás és inicializálás
2. lépés: Visszaállítás és inicializálás
2. lépés: Visszaállítás és inicializálás
2. lépés: Visszaállítás és inicializálás

Ez a táblázat felvázolja az egybájtos parancsokat, amelyek a HD44780 LCD-t vezérlik, itt található egy részletes hivatkozás. Ezeket a parancsokat a Bus Pirate parancssorból lehet megadni, de legtöbbjük számára makrókat készítettünk, hogy időt takarítsunk meg. LCD> (0) <<< makrómenü megjelenítése0. Makró menü <<< ez a menü1. <alaphelyzetbe állítja az LCD2 -t. Kezdje az LCD -t <<< alaphelyzetbe állítsa és inicializálja az LCD -t3. Az LCD törlése <<< törli az LCD -t, a kurzor visszaállítása 04 -re. A kurzor pozíciója ex: (4: 0) <<< a kurzor pozíciójának beállítása 5. Írja be a tesztszöveget <<A Macro 0 megjeleníti a makrómenüt bármely buszkalóz üzemmódhoz. LCD> (2) <<< inicializálja az LCD makrót Kijelző sorok: 1. 1 <<< egysoros kijelző2. Többszörös <<A 2 'RESET <<< makró 2 tartalmaz egy INIT << reset szekvenciátAz inicializáló LCD makró (2) konfigurálja a képernyőt 4 bites interfész módra, engedélyezi a kurzor megjelenítését, és néhány egyéb hasznos lehetőséget is megad. Konfigurálja a megjelenítési sorok számát, válasszon 1 -et egysoros megjelenítéshez, vagy 2 -t az összes többi kijelzőhöz. Az inicializálás után a képernyőnek tisztának kell lennie, és a kurzor a sarokban látható. Ha nem működik, ellenőrizze az I2C csatlakozást, a felhúzó ellenállásokat és a tápegységet, majd próbálja újra. A HD44780 LCD-ket speciális jelsorozattal kell alaphelyzetbe állítani, mielőtt inicializálhatják 4 vagy 8 bites interfész módra. A Makró 1 létrehozza ezt a sorozatot. A Macro 2 tartalmazza a visszaállítási sorozatot, így nincs szükség az 1 -es makró használatára a 2 -es makró előtt.

5. lépés: 3. lépés. Írjon tesztkaraktereket

3. lépés. Írjon teszt karaktereket
3. lépés. Írjon teszt karaktereket
3. lépés. Írjon teszt karaktereket
3. lépés. Írjon teszt karaktereket

LCD> (6:80) <<Az írási számok makró 0 és 9 közötti tesztszámokkal tölti ki az LCD -t. A kettőspont utáni szám megmondja a buszkalóznak, hogy hány tesztszámot kell írni, 4x20LCD -t használunk, tehát 80 számot írunk ki a kitöltéshez. Vegye figyelembe, hogy a kurzor a 0 pozícióban ér véget, az első "0" alatt. LCD> (7:80) <<Az íráskarakter makró ASCII karakterekkel tölti ki az LCD -t, a kettőspont után írja be a mennyiséget. Figyeljük meg, hogy az ökölvonal a harmadikon, a harmadik a másodikon, a második az utolsóon folytatódik. A karakterek nem folyamatosak, mert a karakteres LCD -k nem húzódnak egyik sorról a másikra. Erről később még egy kicsit beszélünk.

6. lépés: 4. lépés. Törölje az LCD -t

4. lépés: Törölje az LCD -t
4. lépés: Törölje az LCD -t

LCD> (3) <<Az átlátszó LCD makró elküldi a HD44780 parancsot, amely törli a képernyőt, és visszaállítja a kurzort az első pozícióba. Ezen műveletek bármelyikét makrók nélkül is elvégezheti, lásd a szakasz elején található parancssort. Írja be a „[0b1” értéket a buszkalózba, hogy az interfészt parancs módba állítsa ([), és makró nélkül küldje el a HD44780 képernyő törlés parancsát (0b00000001).]

7. lépés: 5. lépés. Írja be a szöveget

5. lépés. Szöveg beírása
5. lépés. Szöveg beírása
5. lépés. Szöveg beírása
5. lépés. Szöveg beírása

LCD> (8) <<< felhasználói szöveg beszúrása Írja be a kurzorpozícióba szúrandó szöveget. HD44780 LCD bemutató <<Az LCD törlése után a 4. lépésben a kurzor az első mondatra kerül. Beállíthatjuk a makróval is (4: 0), amely a kurzort az első karakterre mozgatja. A szöveg beillesztése a kurzor makróba szövegbevitelt kér, majd az enter megnyomása után az LCD -re másolja.: 0x40) <& lt

LCD> (8) <<< szöveg beszúrása Írja be a kurzorpozícióba szúrandó szöveget. Bus Pirate v2go <<A második sorba írni egy kicsit bonyolultabb, valójában egy 4x20 -as LCD -n a 64 -es karakternél kezdődik. Ha az 1. sor végétől (20. karakter) folytatja az írást, akkor a harmadik sor elejére kerül! Ez az oldal a legtöbb karakteres LCD méret memória térképét tartalmazza. Először a kurzort a második sorra helyezzük (4: 0x40). Ezután a "szöveg beszúrása" makró megragadja a bevitt adatokat, és átmásolja az LCD -re. LCD> (4: 0x14) (8) (4: 0x54) (8) <<< több makró szintaxis Firmware v2.0+ <<< begépeltük Ezt a szöveget írja be a kurzor pozíciójába. VeszélyesA Bus Pirate több makrót fogad el ugyanazon a soron, így a teljes képernyő egyszerre írható. Az utolsó két sorhoz egyetlen szintaxis sort írtunk. Használhatjuk a következőt: '(3) (4: 0) (8) (4: 0x40) (8) (4: 0x14) (8) (4: 0x54) (8) ', hogy törölje az LCD -t, és írja be mind a négy sort egyetlen szintaktikai bejegyzéssel.

8. lépés: 6. lépés. Olvasás az LCD -ről

6. lépés. Olvasás az LCD -ről
6. lépés. Olvasás az LCD -ről

A Bus Pirate és az LCD adapter kártya olvasható az LCD -ről. Elolvassuk a képernyőn írt szöveget (DDRAM), de a beállításokat és az egyéni karakter ramot (CGRAM) is elolvashatja a megfelelő cím beállításával. LCD> [0b10000000 "" <<< állítsa be az olvasási mutatót "" '] HD44780 RS LOW, COMMAND MODE <<< register select pin lowCMD WRITE: 0x80 <<Először azt mondjuk a Bus Pirate -nek, hogy küldjön adatokat az LCD parancsregiszterbe ([). Ezután a set DDRAM address paranccsal (0b1xxxxxxx) állítjuk az olvasási mutatót a DDRAM elejére (xxxxxxx = 0000000).] LCD>] rrrrrrr <<< olvasom az adattárolótHD44780 RS HIGH, DATA MODE <<< register select PIN magas olvasott: 0x48 <<< 'H'READ: 0x44 <<<' D'READ: 0x34 <<< '4' OLVASSA: 0x34 <<< '4' OLVASSA: 0x37 <<< '7' OLVASSA: 0x38 < << '8'READ: 0x30 <<<' 0'LCD> Végül mondd meg a Bus Pirate -nek, hogy olvasson az adatmemóriából (]), majd olvasson el néhány bájtot (rrrrrrr). Megkaptuk a "HD44780" szöveget, amelyet az 5. lépésben írtunk a képernyőre. Használnia kell az r: 7 parancsikont is hét bájt olvasásához, de ez nem működik a jelenlegi firmware -ben - ezt megelőzően javítjuk. a következő kiadás.

9. lépés: Tegyen többet

Többet tenni
Többet tenni

Adja meg a lépés általános leírását. A HD44780 karakterű LCD adapter praktikus kiegészítő a Bus Pirate számára. Gyors tesztelésre vagy fejlettebb logikai fejlesztésre használható. Az LCD-k mellett a nyolc 2,5 voltos-5 voltos I/O érintkező hasznos lehet más nagy pin-számú buszkalóz alkalmazásokhoz. PCB-ket, készleteket, vagy a Seeed Studio által körülbelül 15 dollárért gyártott összeszerelt készletek, ideértve a világméretű szállítást is. Itt nem tudtam néhány formázási elemet és HTML táblázatot elhelyezni az Instructable -ben, az eredeti bejegyzést a Dangerous Prototypes blogon tekintheti meg.

Ajánlott: