Obsah:

Doska adaptéra LCD na I2C HD44780 pre zbernicu Pirate: 9 krokov
Doska adaptéra LCD na I2C HD44780 pre zbernicu Pirate: 9 krokov

Video: Doska adaptéra LCD na I2C HD44780 pre zbernicu Pirate: 9 krokov

Video: Doska adaptéra LCD na I2C HD44780 pre zbernicu Pirate: 9 krokov
Video: Как настроить LCD ДИСПЛЕЙ и I2C на Arduino ?! 2024, November
Anonim
Doska adaptéra LCD na I2C HD44780 pre zbernicový pirát
Doska adaptéra LCD na I2C HD44780 pre zbernicový pirát
Doska adaptéra LCD na I2C HD44780 pre zbernicový pirát
Doska adaptéra LCD na I2C HD44780 pre zbernicový pirát

Lacné LCD displeje založené na čipovej sade HD44780 sa dodávajú v rôznych veľkostiach: 2x16, 4x20 atď. Tieto displeje majú dva štandardné režimy rozhrania, 4bitové a 8bitové paralelné. 8bitový vyžaduje celkom 11 dátových riadkov, 4bitový vyžaduje 7 (6 iba na zápis). Niektoré LCD displeje podporujú ďalší režim sériových dát, ako napríklad VFD, na ktorý som sa zameral na Hack a Day. Displeje HD44780 LCD sú spravidla 5voltové diely so samostatným napájaním pre zadné svetlo. Bus Pirate má iba päť 5voltových tolerančných I/O pinov, a preto sme vyrobili malú dosku adaptéra s dostatkom pinov na ovládanie LCD. Bus Pirate ovláda dosku adaptéra prostredníctvom svojej knižnice rozhrania LCD. Pokračujte v čítaní o doske adaptéra LCD Bus Bus Pirate HD44780 a knižnici rozhrania. Môžem nechať PCB, súpravy alebo zostavené súpravy vyrábané spoločnosťou Seeed Studio za približne 15 dolárov, vrátane celosvetovej dopravy, viac tu. V návode na použitie som nemohol zahrnúť niektoré formátovacie prvky a tabuľky HTML, pôvodný príspevok môžete vidieť na stránke Dangerous Prototypes blog.

Krok 1: Hardvér

Hardvér
Hardvér
Hardvér
Hardvér
Hardvér
Hardvér

Prehľad V tomto článku načrtávame dosku adaptéra I2C pre displeje HD44780. Ukazujeme to na univerzálnom sériovom rozhraní Bus Pirate. Zdrojový kód Bus Pirate pre knižnicu rozhrania HD44780 založenú na I2C je verejným vlastníctvom, takže sa môžete voľne prispôsobiť svojim vlastným projektom. Hardvér Obrázok obvodu v plnej veľkosti [PNG]. Obvod a PCB boli navrhnuté s bezplatnou verziou Cadsoft Eagle. Súbory návrhu je možné stiahnuť z Bus Pirate SVN. Pred použitím dosky adaptéra si overte údajový list pre svoj LCD displej vzhľadom na vývod adaptéra. Nie všetky displeje LCD sú rovnaké. PCF8574 I/O expandér IC Jedná sa o jednoduchý 8 I/O expandér, ktorý sa ovláda pomocou dvojvodičového rozhrania I2C. Rozhranie I2C je prístupné z hlavičky JP1. PCF8574 pracuje od 2,5 do 5 voltov. I/O piny pracujú na napájacom napätí, takže ak ho napájame 5 voltov, prepojí LCD s napätím 5 voltov. C1 (0,1uF) oddeľuje IC od kolísania napájania. Jeden pin PCF8574 ovláda 3mm LED (LED1) cez odpor obmedzujúci prúd R2 (1000 ohmov). LED dióda indikuje úspešnú komunikáciu medzi Bus Pirate a adaptérom. PCF8574 nemôže dodávať dostatok prúdu na napájanie LED, preto napájame LED z 5voltového zdroja a prepíname uzemnenie. LCD Doska adaptéra komunikuje so znakovým LCD displejom založeným na HD44780 v 4bitovom režime paralelného rozhrania. 4bitové piny rozhrania - RS, RW, EN a D4 -D7 - sú pripojené k siedmim pinom I/O PCF8574. Na pripojenie adaptéra k LCD monitoru radi používame 0,1 -palcovú kolíkovú zástrčku, zvyčajne môžete LCD oprieť o kolíky, aby ste vytvorili dostatočný kontakt na rýchly test. Rezistor trimra R1 (10K) poskytuje napätie na úpravu kontrastu na kolíku 3 záhlavie LCD. Nepripájali sme piny podsvietenia, pretože existuje toľko rôznych štýlov podsvietenia. Poskytovanie energie pre podsvietenie LED môže poškodiť obrazovku, ktorá vyžaduje napájanie záporným napätím. Napájanie Väčšina displejov LCD vyžaduje 5 voltov, externý zdroj napájania poskytuje prostredníctvom záhlavie JP2. Poskytli sme druhý napájací kolík na pripojenie výsuvných odporov Bus Pirate. PCB Obvod a PCB boli navrhnuté s bezplatnou verziou Cadsoft Eagle. Súbory s návrhmi je možné stiahnuť z webu Bus Pirate SVN. jednostranný dizajn s priechodnými otvormi s jediným prepojovacím káblom (zobrazený červenou farbou). PCB, súpravy alebo zostavené súpravy vyrábané spoločnosťou Seeed Studio môžeme ponúkať za približne 15 dolárov vrátane celosvetovej dopravy, viac tu. Časť zoznamu súčiastok (všetky th hrubý otvor) C10.1uF/10voltov+R110000 (10K) ohm jednootáčkový trimer/potenciometer, 6mmR21000 (1K) ohmový odpor, 1/4 watt LED dióda LED 13 mm (T1), červená zásuvka JPJ+JP20,1 ", 5 pinovIC1PCF8574N, 8 bitov I2C I/O expander DIP16ICS116 pinový DIP socket pre IC1I nemohol obsahovať niektoré formátovacie prvky a HTML tabuľky v Instructable, pôvodný príspevok môžete vidieť na blogu Dangerous Prototypes.

Krok 2: Pripojenia

Pripojenia
Pripojenia

Zariadenie: LCD displej HD44780. Autobus: 4bitový paralelný, s doskou PCF8574 I2C. Požiadavky na napájanie: 5 voltov. Referencie: príkladový list [PDF], odkaz na príkaz HD44780, LCD server HD44780 uber-site. Kompletný protokol relácie Bus Pirate pre túto ukážku. My navrhol adaptér pre knižnicu LCD univerzálneho sériového rozhrania Bus Pirate, ale bude fungovať s čímkoľvek, čo dokáže hovoriť protokolom I2C. Pozrite sa na zdrojový kód Bus Pirate, kde je príklad implementácie I2C-> HD44780. Pripojte Bus Pirate k doske adaptéra podľa tabuľky. Tabuľka tiež zobrazuje surové pripojenia k PCF8574 IC, ak idete spolu bez dosky adaptéra. Pripojte adaptér k napájaniu dostatočnému pre LCD, spravidla 5 voltov. Pripojenie I2C medzi adaptérom a zbernicou Pirate vyžaduje vyťahovacie odpory medzi 2 a 10 K. Tu je viac informácií o prepojení zmiešaného napätia s výsuvmi a palubných odpínačoch Bus Pirate. V inštrukcii som nemohol zahrnúť niektoré formátovacie prvky a tabuľky HTML, pôvodný príspevok si môžete pozrieť na blogu Dangerous Prototypes.

Krok 3: Krok 1. Inštalácia knižnice

Krok 1. Inštalácia knižnice
Krok 1. Inštalácia knižnice

Rozhranie Rozoberali sme návrh adaptéra a spôsob jeho pripojenia k Bus Pirate, teraz je konečne čas napísať niečo na LCD. HiZ> m <<11 <<1 <<W <

p <<2 <<v <<< získajte správu o napätíMONITOR VOLTAGE: 5V: 4,9 | 3,3 V: 3,3 | VPULLUP: 5,0 <<Na termináli Bus Pirate stlačte „m“a zvoľte LCD knižnicu. V súčasnej dobe podporuje iba HD44780 znakové LCD pomocou adaptéra PFC8574 popísaného v prvej polovici tohto článku (možnosť 1). Zapnite napájanie (veľké „W“) a výsuvné odpory (ponuka „p“). Skontrolujte monitor napätia (ponuka „v“) a uistite sa, že napätie (Vpullup) dosahuje približne 5 voltov.

Krok 4: Krok 2. Reset a inicializácia

Krok 2. Reset a inicializácia
Krok 2. Reset a inicializácia
Krok 2. Reset a inicializácia
Krok 2. Reset a inicializácia

Táto tabuľka popisuje jednobajtové príkazy, ktoré ovládajú LCD displej HD44780, tu je podrobný odkaz. Tieto príkazy je možné zadávať z príkazového riadka Bus Pirate, ale pre väčšinu z nich sme urobili makrá, aby sme ušetrili čas. LCD> (0) <<< zobraziť ponuku makier0. Makro menu <<< toto menu1. LCD Reset << <resetujte LCD2. Zapnite LCD <<< resetujte a inicializujte LCD3. Čisté LCD <<< jasné LCD, vráťte kurzor na 04. Poloha kurzora ex: (4: 0) <<< nastavte pozíciu kurzora 5. Napíšte testovací text <<Makro 0 zobrazuje ponuku makier pre akýkoľvek režim Bus Pirate. LCD> (2) <<< inicializuje LCD makro Riadky displeja: 1. 1 <<< jednoriadkovy displej2. Viacnásobné <<2 'Makro 2 RESET <<< obsahuje sekvenciu resetovania INIT <<Inicializačné makro LCD (2) konfiguruje obrazovku pre režim 4 -bitového rozhrania, umožňuje zobrazenie kurzora a nastavuje niekoľko ďalších užitočných možností. Nakonfigurujte počet riadkov displeja, zvoľte 1 pre jednoriadkový displej alebo 2 pre všetky ostatné displeje. Po inicializácii by mala byť obrazovka čistá s kurzorom viditeľným v rohu. Ak to nefungovalo, skontrolujte pripojenie I2C, výsuvné odpory a napájanie a potom to skúste znova. Displeje HD44780 je potrebné resetovať pomocou špeciálnej sekvencie signálov, aby mohli byť inicializované pre režim 4bitového alebo 8bitového rozhrania. Túto sekvenciu vytvára makro 1. Makro 2 obsahuje sekvenciu resetov, takže pred makrom 2 nie je potrebné používať makro 1.

Krok 5: Krok 3. Napíšte testovacie znaky

Krok 3. Napíšte testovacie znaky
Krok 3. Napíšte testovacie znaky
Krok 3. Napíšte testovacie znaky
Krok 3. Napíšte testovacie znaky

LCD> (6:80) <<Makro zapisovacích čísel zaplní displej LCD testovacími číslami od 0 do 9. Číslo za dvojbodkou informuje Bus Pirate o tom, koľko testovacích čísel má napísať. Používame disk 4x20LCD, takže na jeho vyplnenie napíšeme 80 čísel. Všimnite si, že kurzor končí na pozícii 0, pod prvou '0'. LCD> (7:80) <<Makro znakov pre zápis zaplní displej LCD znakmi ASCII, zadajte množstvo za dvojbodkou. Všimnite si, že prvá línia pokračuje tretím, tretím druhým a druhým posledným. Znaky nie sú spojité, pretože znakové displeje LCD sa nezalamujú z jedného riadka na druhý. O tom si povieme trochu viac neskôr.

Krok 6: Krok 4. Vyčistite LCD

Krok 4. Vymažte LCD
Krok 4. Vymažte LCD

LCD> (3) <<Jasné makro LCD odošle príkaz HD44780, ktorý vymaže obrazovku a vráti kurzor na prvé miesto. Všetky tieto operácie môžete vykonať aj bez makier, pozrite si tabuľku príkazov na začiatku tejto časti. Do poľa „Bus Pirate“zadajte „[0b1“, čím rozhranie nastavíte na príkazový režim ([) a bez makra odošlete príkaz na čistú obrazovku HD44780 (0b00000001).]

Krok 7: Krok 5. Napíšte text

Krok 5. Napíšte text
Krok 5. Napíšte text
Krok 5. Napíšte text
Krok 5. Napíšte text

LCD> (8) <<< vložiť užívateľský text Zadajte text, ktorý chcete vložiť na pozíciu kurzora. HD44780 LCD ukážka <<Po vymazaní obrazovky LCD v kroku 4 je kurzor umiestnený v prvom bloku. Mohli by sme to tiež nastaviť pomocou makra (4: 0), ktoré presunie kurzor na prvý znak. Vložiť text do makra kurzora požiada o zadanie textu a potom ho skopíruje na LCD displej, keď stlačíte kláves Enter. LCD> (4: 0x40) <& lt

LCD> (8) <<< vložiť text Zadajte text, ktorý chcete vložiť na pozíciu kurzora. Bus Pirate v2go <<Zápis do druhého riadku je trochu komplikovanejší, v skutočnosti sa začína na znaku 64 na LCD 4x20. Ak budete pokračovať v písaní od konca riadka 1 (znak 20), skončíte na začiatku riadku tri! Táto stránka má peknú zbierku pamäťových máp pre väčšinu veľkostí znakov LCD. Najprv umiestnime kurzor na druhý riadok (4: 0x40). Ďalej makro „vložiť text“zachytí náš vstup a skopíruje ho na LCD. LCD> (4: 0x14) (8) (4: 0x54) (8) <<< viacnásobná syntax makra Zadajte text, ktorý chcete vložiť na pozíciu kurzora. Firmvér v2.0+ <<< zadali sme toto Zadajte text, ktorý sa má vložiť na pozíciu kurzora. Nebezpečné prototypy <<Bus Pirate akceptuje viac makier na rovnakom riadku, takže je možné napísať celú obrazovku naraz. Napísali sme do posledných dvoch riadkov jediným riadkom syntaxe. Mohli by sme použiť '(3) (4: 0) (8) (4: 0x40) (8) (4: 0x14) (8) (4: 0x54) (8) 'na vymazanie obrazovky LCD a zapísanie všetkých štyroch riadkov jediným záznamom syntaxe.

Krok 8: Krok 6. Čítanie z LCD

Krok 6. Čítanie z LCD
Krok 6. Čítanie z LCD

Doska Bus Pirate a adaptér LCD môžu čítať z LCD. Text, ktorý sme napísali, prečítame na obrazovku (DDRAM), ale môžete tiež čítať nastavenia a vlastný znakový bar (CGRAM) nastavením správnej adresy. LCD> [0b10000000 '' '<<< nastavte ukazovateľ čítania' '] HD44780 RS NÍZKY, PRÍKAZOVÝ REŽIM <<< register vyberte pin lowCMD ZAPISTE: 0x80 <<Najprv povieme Bus Pirate, aby odoslal údaje do príkazového registra LCD ([). Ďalej použijeme príkaz set DDRAM address (0b1xxxxxxx) na nastavenie ukazovateľa čítania na začiatok DDRAM (xxxxxxx = 0000000).] LCD>] rrrrrrr <<< čítaná dátová pamäťHD44780 RS HIGH, DATA MODE <<< register select špendlík ČÍTAJTE: 0x48 <<< 'H'READ: 0x44 <<<' D'READ: 0x34 <<< '4'READ: 0x34 <<<' 4'READ: 0x37 <<< '7'READ: 0x38 < << '8'READ: 0x30 <<<' 0'LCD> Nakoniec povedzte Bus Pirate, aby čítal z dátovej pamäte (]) a potom prečítal niekoľko bajtov (rrrrrrr). Získali sme „HD44780“, text, ktorý sme napísali na obrazovku v kroku 5. Na prečítanie siedmich bajtov by ste mali tiež použiť skratku r: 7, ale v aktuálnom firmvéri nefunguje - opravíme to pred nasledujúce vydanie.

Krok 9: Urobte viac

Robiť viac
Robiť viac

Uveďte všeobecný popis zariadenia StepThe HD44780 znakový adaptér LCD je praktickým doplnkom pre Bus Pirate. Môže byť použitý na rýchly test alebo pokročilejší vývoj logiky. Okrem LCD displejov môže byť osem I/O kolíkov 2,5volt-5volt užitočných pre ďalšie aplikácie Bus Pirate s vysokým počtom pinov. Môžeme mať PCB, súpravy, alebo zostavené súpravy vyrábané spoločnosťou Seeed Studio za približne 15 dolárov vrátane celosvetovej dopravy, viac tu. Do formátu Instructable som nemohol zahrnúť niektoré formátovacie prvky a tabuľky HTML, pôvodný príspevok si môžete pozrieť na blogu Dangerous Prototypes.

Odporúča: