Sisukord:

HD44780 LCD -I2C adapterplaat bussipiraadile: 9 sammu
HD44780 LCD -I2C adapterplaat bussipiraadile: 9 sammu

Video: HD44780 LCD -I2C adapterplaat bussipiraadile: 9 sammu

Video: HD44780 LCD -I2C adapterplaat bussipiraadile: 9 sammu
Video: Мои заказы на ALIEXPRESS 2 2024, November
Anonim
HD44780 LCD -I2C adapterplaat bussipiraadile
HD44780 LCD -I2C adapterplaat bussipiraadile
HD44780 LCD -I2C adapterplaat bussipiraadile
HD44780 LCD -I2C adapterplaat bussipiraadile

HD44780 kiibistikul põhinevaid odavaid tähemärke sisaldavaid LCD -ekraane on erinevates suurustes: 2x16, 4x20 jne. Nendel kuvaritel on kaks standardset liideserežiimi, 4 -bitised ja 8 -bitised paralleelsed. 8-bitine nõuab kokku 11 andmerida, 4-bitine 7 (ainult kirjutamiseks 6). Mõned LCD -d toetavad täiendavat seeriaandmete režiimi, näiteks VFD I, mis on kaetud Hack a Day'ga. HD44780 LCD -ekraanid on tavaliselt 5 -voldised osad, millel on eraldi taustvalgustuse toide. Bussipiraadil on ainult viis 5 volti tolerantset sisend-/väljundpistikut, seega tegime väikese adapterplaadi, millel oli piisavalt tihvte LCD -ekraani juhtimiseks. Bus Pirate juhib adapterplaati oma LCD -liidese kogu kaudu. Jätkake lugemist Bus Pirate HD44780 sümboliga LCD -adapterplaadi ja liideseteegi kohta. Mul võib olla SeeB Studio poolt toodetud PCB -sid, komplekte või kokkupandud komplekte umbes 15 dollari eest, sealhulgas ülemaailmne kohaletoimetamine. Veel. Ma ei saanud mõnda vorminduselementi ja HTML -tabelit lisada juhendisse, näete esialgset postitust ohtlikes prototüüpides blogi.

Samm: riistvara

Riistvara
Riistvara
Riistvara
Riistvara
Riistvara
Riistvara

Selles artiklis kirjeldame HD44780-põhiste LCD-ekraanide I2C-adapteriplaati. Me demonstreerime seda Bus Pirate universaalse jadaliidesega. Bussi piraatide lähtekood I2C-põhise HD44780 liidesekogu jaoks on üldkasutatav, nii et saate oma projektidega kohaneda tasuta. Riistvara Täissuuruses vooluahela pilt [PNG]. Vooluahel ja trükkplaat on loodud Cadsoft Eagle'i tasuta versiooniga. Kujundusfaile saab alla laadida Bus Pirate SVN -ist. Enne adapteriplaadi kasutamist kontrollige kindlasti oma vedelkristallekraani andmelehte adapteri pessa. Kõik LCD -ekraanid pole ühesugused. PCF8574 I/O laiendaja IC See on lihtne 8 I/O laiendaja kiip, mida juhitakse kahe juhtmega I2C liidese kaudu. I2C liides on saadaval päisest JP1. PCF8574 töötab 2,5 kuni 5 volti. Sisend-/väljundpistikud töötavad toitepinge juures, nii et kui toite seda 5 volti, ühendab see LCD -ga 5 volti. C1 (0,1uF) lahutab IC toiteallika kõikumistest. Üks PCF8574 tihvt juhib 3 mm LED -i (LED1) läbi voolu piirava takisti R2 (1000 oomi). LED -tuled näitavad bussipiraadi ja adapteri vahelist edukat suhtlust. PCF8574 ei saa LED -i toiteks piisavalt voolu, nii et toidame LED -i 5 -voldisest toiteallikast ja vahetame maandust. LCD Adapterplaat suhtleb HD44780-põhise LCD-ekraaniga 4-bitise paralleelliidese režiimis. 4 -bitised liidese tihvtid - RS, RW, EN ja D4 -D7 - on ühendatud seitsme PCF8574 sisend-/väljundpistikuga. Meile meeldib kasutada adapteri ühendamiseks LCD -ekraaniga 0,1 -tollist isast tihvtiga päist, tavaliselt saate LCD -ekraani tihvtide vastu toetada, et luua piisav kontakt kiireks testimiseks. Trimmertakisti R1 (10K) tagab kontrasti reguleerimispinge kontaktile 3 LCD -päis. Me ei ühendanud taustvalgustuse tihvte, kuna taustavalgustuse stiile on palju. LED -taustvalgustuse toide võib kahjustada negatiivset pinget nõudvat ekraani. Toide Enamik LCD -ekraanidest vajab 5 -voldist toiteallikat, pakkudes välist toiteallikat päis JP2. Pakkusime teise toiteploki Bus Pirate tõmbe takistite ühendamiseks. PCB Vooluahel ja trükkplaat on loodud Cadsoft Eagle'i tasuta versiooniga. Disainifailid saab alla laadida Bus Pirate SVN-ist. PCB on ühepoolne, kõik läbi aukude disain ühe hüppaja juhtmega (näidatud punasega). Meil võib olla SeeB Studio toodetud PCBsid, komplekte või komplekteeritud komplekte umbes 15 dollari eest, sealhulgas ülemaailmne kohaletoimetamine. kõik th krobeline auk) C10.1uF/10volts+R110000 (10K) oomi ühe pöördega trimmer/potentsiomeeter, 6mmR21000 (1K) oomi takisti, 1/4 vatti LED13mm (T1) LED, punaneJP1+JP20.1 "isane päis, 5 kontaktiIC1PCF8574N, 8bit I2C I/O laiendaja DIP16ICS116 tihvtiga DIP -pistikupesa IC1I jaoks ei saanud mõnda vorminduselementi ja HTML -tabelit Instructable'i lisada, originaalpostitust näete ohtlike prototüüpide ajaveebis.

Samm 2: Ühendused

Ühendused
Ühendused

Seade: HD44780 sümboliga LCD. Buss: 4-bitine paralleelne, PCF8574 I2C adapterplaadiga. Võimsusnõuded: 5 volti. Viited: andmelehe näide [PDF], HD44780 käsuviide, HD44780 LCD uber-sait. Selle demonstratsiooni täielik bussipiraatide seansilogi. konstrueeris adapteri Bus Pirate universaalse jadaliidese LCD -raamatukogu jaoks, kuid see töötab kõigega, mis suudab rääkida I2C -protokollist. Vaadake bussipiraadi lähtekoodi I2C-> HD44780 näite teostamiseks. Ühendage bussipiraat adapterplaadiga, nagu on näidatud tabelis. Tabelis on näidatud ka töötlemata ühendused PCF8574 IC -ga, kui jälgite ilma adapteritahvlita. Ühendage adapter toiteallikaga, mis on piisav LCD -ekraanile, tavaliselt 5 volti. I2C ühendus adapteri ja bussipiraadi vahel nõuab tõmbetakistusi vahemikus 2 kuni 10K. Siit leiate lisateavet tõmbejõuga segatud pingega liideste ja rongisiseste tõmbetakistuste Bus Pirate kohta. Ma ei saanud mõnda vorminduselementi ja HTML-tabelit lisada juhendisse, näete esialgset postitust ohtlike prototüüpide ajaveebis.

3. samm: 1. samm. Teegi seadistamine

Samm 1. Seadistage raamatukogu
Samm 1. Seadistage raamatukogu

Liidesed Oleme käsitlenud adapteri disaini ja selle ühendamist bussipiraadiga, nüüd on lõpuks aeg LCD -le midagi kirjutada. Hi> m <<11 <<1 <<W <

p <<2 <<v <<< saada pingearuannePINGEMONITOR: 5V: 4,9 | 3.3V: 3.3 | VPULLUP: 5.0 <<Vajutage bussipiraadi terminalis nuppu „m” ja valige LCD -teek. Praegu toetab see ainult HD44780 sümboliga LCD-ekraane, kasutades käesoleva artikli esimeses pooles kirjeldatud adapterit PFC8574 (valik 1). Lülitage toiteallikad (suur „W”) ja tõmbetakistused (menüü „p”) sisse. Kontrollige pingemonitori (menüü "v") ja veenduge, et tõmbepinge (Vpullup) on umbes 5 volti.

4. samm: 2. samm. Lähtesta ja initsialiseeri

Samm 2. Lähtestamine ja lähtestamine
Samm 2. Lähtestamine ja lähtestamine
Samm 2. Lähtestamine ja lähtestamine
Samm 2. Lähtestamine ja lähtestamine

See tabel kirjeldab ühebaidiseid käske, mis juhivad HD44780 LCD-d, siin on üksikasjalik viide. Neid käske saab sisestada käsurealt Bus Pirate, kuid enamiku jaoks oleme aja säästmiseks teinud makrosid. LCD> (0) <<< kuva makro menüü0. Makromenüü <<< see menüü <lähtestage LCD2. Alustage LCD <<< lähtestamist ja initsialiseerige LCD3. LCD -ekraani tühjendamine <<< tühjendage, viige kursor tagasi 04. Kursori asukoht ex: (4: 0) <<< määrake kursori asend 5. Kirjutage testtekst <<Makro 0 kuvab kõigi menüü Bus Pirate režiimide makro menüü. LCD> (2) <<< LCD makro lähtestamine Kuva read: 1. 1 <<< üherealine kuva2. Mitu <<2 'RESET <<< makro 2 sisaldab lähtestamisjärjestust INIT <<LCD makro lähtestamine (2) konfigureerib ekraani 4 -bitise liidese režiimi jaoks, võimaldab kursori kuvamist ja määrab mõned muud kasulikud valikud. Seadistage kuvatavate ridade arv, valige 1 ühe rea kuvamiseks või 2 kõigi muude näidikute jaoks. Pärast lähtestamist peaks ekraan olema selge ja nurgas nähtav kursor. Kui see ei töötanud, kontrollige I2C ühendust, tõmbetakistusi ja toiteallikat ning proovige uuesti. HD44780 LCD-ekraanid tuleb lähtestada spetsiaalse signaalijärjestusega, enne kui neid saab 4-bitise või 8-bitise liideserežiimi jaoks lähtestada. Makro 1 loob selle jada. Makro 2 sisaldab lähtestamisjärjestust, seega pole vaja makro 1 kasutada enne makro 2.

5. samm: 3. samm. Kirjutage testimärgid

Samm 3. Kirjutage testimärgid
Samm 3. Kirjutage testimärgid
Samm 3. Kirjutage testimärgid
Samm 3. Kirjutage testimärgid

LCD> (6:80) <<Kirjutamisnumbrite makro täidab vedelkristallekraani testarvudega vahemikus 0 kuni 9. Koolonile järgnev number ütleb bussipiraadile, kui palju testnumbreid kirjutada, me kasutame 4x20LCD -d, seega kirjutame selle täitmiseks 80 numbrit. Pange tähele, et kursor lõpeb positsiooniga 0 esimese "0" all. LCD> (7:80) <<Kirjutusmärkide makro täidab vedelkristallekraani ASCII märkidega, sisestage kogus pärast koolonit. Pange tähele, et rusikajoon jätkub kolmandal, kolmas teisel ja teine viimasel. Märgid ei ole pidevad, sest sümbolite LCD -ekraanid ei liigu ühelt realt teisele. Sellest räägime hiljem veidi rohkem.

6. samm: 4. samm. Tühjendage LCD -ekraan

Samm 4. Tühjendage LCD
Samm 4. Tühjendage LCD

LCD> (3) <<Selge LCD -makro saadab käsu HD44780, mis kustutab ekraani ja tagastab kursori esimesse kohta. Saate neid toiminguid teha ka ilma makrodeta, vaadake selle jaotise alguses olevat käsutabelit. Sisestage bussipiraadile „[0b1”, et seadistada liides käsurežiimile ([) ja saata HD44780 selge ekraani käsk (0b00000001) ilma makrota.]

Samm 7: 5. samm. Tippige tekst

Samm 5. Tippige tekst
Samm 5. Tippige tekst
Samm 5. Tippige tekst
Samm 5. Tippige tekst

LCD> (8) <<< sisesta kasutajatekst Sisesta tekst, mis tuleb kursori asukohta sisestada. HD44780 LCD -demo <<Pärast LCD -ekraani kustutamist 4. sammus asetatakse kursor esimese ploki juurde. Võiksime selle määrata ka makroga (4: 0), mis viib kursori esimesele tähemärgile. Sisestage tekst kursori makro juurde küsib tekstisisestust ja kopeerib selle seejärel LCD -le, kui vajutate sisestusklahvi. LCD> (4: 0x40) <& lt

LCD> (8) <<< sisesta tekst Sisestage kursori asukohta lisatav tekst. Bus Pirate v2go <<Teisele reale kirjutamine on pisut keerulisem, tegelikult algab see 4x20 LCD -l 64 -st tähemärgist 64. Kui jätkate kirjutamist rea 1 lõpust (märk 20), siis jõuate kolmanda rea algusesse! Sellel lehel on kena mälukaartide kogum enamiku tähemärkide LCD -suuruste jaoks. Esiteks asetame kursori teisele reale (4: 0x40). Järgmisena haarab makro "sisesta tekst" meie sisendi ja kopeerib selle LCD -ekraanile. LCD> (4: 0x14) (8) (4: 0x54) (8) <<< mitme makro süntaks Sisestage kursori asukohta lisatav tekst. Püsivara v2.0+ <<< sisestasime selle Sisestage tekst, mis sisestatakse kursori asukohta. Ohtlikud prototüübid <<Bussipiraat aktsepteerib samal real mitu makrot, nii et kogu ekraani saab korraga kirjutada. Kirjutasime kahele viimasele reale ühe süntaksireaga. Võiksime kasutada '(3) (4: 0) (8) (4: 0x40) (8) (4: 0x14) (8) (4: 0x54) (8) 'LCD -ekraani tühjendamiseks ja kõigi nelja rea kirjutamiseks ühe süntaksikirjega.

8. samm: 6. samm. Lugemine LCD -ekraanilt

Samm 6. Lugemine LCD -ekraanilt
Samm 6. Lugemine LCD -ekraanilt

Bus Pirate ja LCD -adapteriplaat saab LCD -lt lugeda. Me loeme ekraanile kirjutatud teksti (DDRAM), kuid saate ka seadeid ja kohandatud märgi mälu (CGRAM) lugeda, määrates õige aadressi. LCD> [0b10000000 "" <<< määrake lugemisosuti " '] HD44780 RS LOW, COMMAND MODE <<< registreeri vali pin lowCMD WRITE: 0x80 <<Esiteks käsime bussipiraadil saata andmed LCD käsuregistrisse ([). Järgmisena kasutame määratud DDRAM -aadressi käsku (0b1xxxxxxx), et seada lugemiskursor DDRAM -i algusesse (xxxxxxx = 0000000).] LCD>] rrrrrrr <<< loe andmemäluHD44780 RS HIGH, DATA MODE <<< register vali pin highLUGEGE: 0x48 <<< 'H'LUGEGE: 0x44 <<<' LUGEGE: 0x34 <<< '4'LUGEGE: 0x34 <<<' 4'LUGEGE: 0x37 <<< '7'LUGEGE: 0x38 < << '8'LUGEGE: 0x30 <<<' 0'LCD> Lõpuks öelge bussipiraadile, et ta loeks andmemälu (]) ja seejärel loeks mõne baidi (rrrrrrr). Saime "HD44780", teksti, mille kirjutasime ekraanile 5. sammus. Seitsme baidi lugemiseks peaksite saama kasutada ka otseteed r: 7, kuid see ei tööta praeguses püsivaras - parandame selle enne järgmine väljalase.

9. samm: tehke rohkem

Veelgi rohkem
Veelgi rohkem

Andke sammude üldine kirjeldus. HD44780 sümboliga LCD -adapter on bussipiraadi käepärane tarvik. Seda saab kasutada kiirtestiks või arenenumaks loogikaarenduseks. Lisaks vedelkristallkuvaritele võivad kaheksa 2,5-voldise sisend-/väljundpistikut olla kasulikud ka teiste suure pin-number bussi piraatrakenduste jaoks. Meil võib olla trükkplaate, komplekte, või Seeed Studio toodetud komplekteeritud komplektid umbes 15 dollari eest, sealhulgas ülemaailmne kohaletoimetamine, rohkem siin. Ma ei saanud mõnda vorminduselementi ja HTML -tabelit lisada Instructable'i, näete esialgset postitust ohtlike prototüüpide ajaveebis.

Soovitan: