Turinys:

HD44780 LCD į I2C adapterio plokštė autobuso piratui: 9 žingsniai
HD44780 LCD į I2C adapterio plokštė autobuso piratui: 9 žingsniai

Video: HD44780 LCD į I2C adapterio plokštė autobuso piratui: 9 žingsniai

Video: HD44780 LCD į I2C adapterio plokštė autobuso piratui: 9 žingsniai
Video: Connect LCD to ESP32. HD44780 LCD Display Bundle 4x20 Characters with I2C. nodeMCU DevKit. Arduino 2024, Lapkritis
Anonim
HD44780 LCD į I2C adapterio plokštė autobusų piratui
HD44780 LCD į I2C adapterio plokštė autobusų piratui
HD44780 LCD į I2C adapterio plokštė autobusų piratui
HD44780 LCD į I2C adapterio plokštė autobusų piratui

Pigių simbolių LCD, pagrįsti HD44780 mikroschemų rinkiniu, yra įvairių dydžių: 2x16, 4x20 ir tt Šie ekranai turi du standartinius sąsajos režimus - 4 bitų ir 8 bitų lygiagrečius. 8 bitams iš viso reikia 11 duomenų eilučių, 4 bitams-7 (tik rašymui-6). Kai kurie skystųjų kristalų ekranai palaiko papildomą serijinių duomenų režimą, pvz., „VFD I. „Bus Pirate“turi tik penkis 5 voltų tolerancijos įvesties/išvesties kaiščius, todėl mes sukūrėme nedidelę adapterio plokštę su pakankamai kaiščių, skirtų valdyti LCD. „Bus Pirate“valdo adapterio plokštę per savo LCD sąsajos biblioteką. Toliau skaitykite apie „Bus Pirate HD44780“simbolių LCD adapterių plokštę ir sąsajos biblioteką. Čia galiu turėti „Seeed Studio“pagamintų PCB, rinkinių ar surinktų rinkinių už maždaug 15 USD, įskaitant pristatymą visame pasaulyje. Aš negalėjau įtraukti kai kurių formatavimo elementų ir HTML lentelių į „Instructable“, galite pamatyti originalų pranešimą pavojinguose prototipuose tinklaraštį.

1 žingsnis: Aparatūra

Techninė įranga
Techninė įranga
Techninė įranga
Techninė įranga
Techninė įranga
Techninė įranga

Šiame straipsnyje mes apibūdiname I2C adapterio plokštę, skirtą HD44780 LCD ekranams. Mes tai demonstruojame naudodami universaliąją „Bus Pirate“nuosekliąją sąsają. „I2C“pagrįstos HD44780 sąsajos bibliotekos „Autobusų piratų“šaltinio kodas yra viešas, todėl galite laisvai prisitaikyti prie savo projektų. „Hardware“Viso dydžio grandinės vaizdas [PNG]. Grandinė ir PCB buvo sukurti naudojant nemokamą „Cadsoft Eagle“versiją. Dizaino failus galima atsisiųsti iš „Bus Pirate SVN“. Prieš naudodami adapterio plokštę, būtinai patikrinkite LCD duomenų lapą, kad jis atitiktų adapterio kištuką. Ne visi LCD yra vienodi. PCF8574 I/O plėtiklio IC Tai paprastas 8 įvesties/išvesties lustas, valdomas per dviejų laidų I2C sąsają. I2C sąsaja pasiekiama iš antraštės JP1. PCF8574 veikia nuo 2,5 iki 5 voltų. Įvesties/išvesties kaiščiai veikia esant maitinimo įtampai, taigi, jei tiekiame jį 5 voltais, jis jungia LCD ekraną esant 5 voltų įtampai. C1 (0,1uF) atsieja IC nuo maitinimo šaltinio svyravimų. Vienas PCF8574 kaištis valdo 3 mm šviesos diodą (LED1) per srovės ribojimo rezistorių R2 (1000 omų). Šviesos diodas rodo sėkmingą ryšį tarp „Bus Pirate“ir adapterio. PCF8574 negali tiekti pakankamai srovės, kad galėtų maitinti šviesos diodą, todėl mes maitiname šviesos diodą iš 5 voltų maitinimo šaltinio ir perjungiame įžeminimą. LCD ekranas Adapterio plokštė palaiko ryšį su HD44780 pagrindu veikiančiu LCD ekranu 4 bitų lygiagrečios sąsajos režimu. 4 bitų sąsajos kaiščiai - RS, RW, EN ir D4 -D7 - yra prijungti prie septynių PCF8574 įvesties/išvesties kaiščių. Norėdami prijungti adapterį prie skystųjų kristalų ekrano, mums patinka naudoti 0,1 colio kištukinę antgalį, paprastai galite atremti skystųjų kristalų ekraną prie kaiščių, kad sukurtumėte pakankamą kontaktą greitam bandymui. Žoliapjovės rezistorius R1 (10K) suteikia kontrasto reguliavimo įtampą iki 3 kaiščio skystųjų kristalų antraštę. Mes neprijungėme foninio apšvietimo kaiščių, nes yra tiek daug skirtingų apšvietimo stilių. Maitinant LED foninį apšvietimą, galima sugadinti ekraną, kuriam reikalinga neigiama įtampa. Maitinimas Daugumai LCD reikia 5 voltų, o išorinis maitinimo šaltinis antraštė JP2. Pateikėme antrą maitinimo kaištį, skirtą „Bus Pirate“traukiamiesiems rezistoriams prijungti. PCB Grandinė ir PCB buvo sukurtos naudojant nemokamą „Cadsoft Eagle“versiją. Projektavimo failus galima atsisiųsti iš „Bus Pirate SVN“. PCB yra vienpusis, visas skylių dizainas su vienu trumpikliu (rodomas raudonai). Čia galime įsigyti „Seeed Studio“pagamintų PCB, rinkinių ar surinktų rinkinių už maždaug 15 USD, įskaitant pristatymą visame pasaulyje. Partlist Part Value (visi tūkst neapdorota skylė) C10.1uF/10volts+R110000 (10K) omų vieno posūkio žoliapjovė/potenciometras, 6 mmR21000 (1K) omo rezistorius, 1/4 vatų LED13 mm (T1) LED, raudonaJP1+JP20.1 col. antraštė, 5 kaiščiai I2C I/O plėtiklis DIP16ICS116 kaiščio DIP lizdas, skirtas IC1I, negalėjo įtraukti kai kurių formatavimo elementų ir HTML lentelių į „Instructable“, originalų įrašą galite pamatyti tinklalapyje „Pavojingi prototipai“.

2 žingsnis: jungtys

Sujungimai
Sujungimai

Įrenginys: HD44780 simbolių skystųjų kristalų ekranas. Autobusas: 4 bitų lygiagrečiai, su PCF8574 I2C adapterio plokšte. Maitinimo reikalavimai: 5 voltai. Nuorodos: duomenų lapo pavyzdys [PDF], HD44780 komandos nuoroda, HD44780 LCD „uber-site“. Pilnas autobusų piratų seanso žurnalas šiai demonstracijai. Mes sukūrė adapterį, skirtą universaliosios „Bus Pirate“sąsajos LCD bibliotekai, tačiau jis veiks su viskuo, kas gali kalbėti apie I2C protokolą. Pažvelkite į „Bus Pirate“šaltinio kodą, kuriame yra I2C-> HD44780 diegimo pavyzdys. Prijunkite „Bus Pirate“prie adapterio plokštės, kaip parodyta lentelėje. Lentelėje taip pat rodomi neapdoroti ryšiai su PCF8574 IC, jei sekate be adapterio plokštės. Prijunkite adapterį prie maitinimo šaltinio, kurio pakanka LCD, paprastai 5 voltų. I2C jungčiai tarp adapterio ir „Bus Pirate“reikalingi traukimo rezistoriai nuo 2 iki 10K. Čia yra daugiau informacijos apie mišrios įtampos sąsajas su prisitraukimais ir „Bus Pirate“traukos rezistorius. Į „Instructable“negalėjau įtraukti kai kurių formatavimo elementų ir HTML lentelių, originalų įrašą galite pamatyti tinklaraštyje „Pavojingi prototipai“.

3 veiksmas: 1 žingsnis. Sąrankos biblioteka

Žingsnis 1. Sąrankos biblioteka
Žingsnis 1. Sąrankos biblioteka

Sąsaja Mes aptarėme adapterio dizainą ir kaip jį prijungti prie „Bus Pirate“, dabar pagaliau atėjo laikas ką nors parašyti į skystųjų kristalų ekraną. Hi> m <<11 <<1 <<W <

p <<2 <<v <<< gauti įtampos ataskaitąĮTAMPOS MONITORIUS: 5V: 4.9 | 3.3V: 3.3 | VPULLUP: 5.0 <<Paspauskite „m“„Bus Pirate“terminale ir pasirinkite LCD biblioteką. Šiuo metu ji palaiko tik HD44780 simbolių skystųjų kristalų ekranus, naudojant PFC8574 adapterį, aprašytą pirmoje šio straipsnio pusėje (1 parinktis). Įjunkite maitinimo šaltinius (didelis „W“) ir ištraukiamieji rezistoriai (meniu „p“). Patikrinkite įtampos monitorių (meniu „v“) ir įsitikinkite, kad traukimo įtampa (Vpullup) yra maždaug 5 voltai.

4 veiksmas: 2 veiksmas. Iš naujo nustatyti ir inicijuoti

Žingsnis 2. Iš naujo nustatyti ir inicijuoti
Žingsnis 2. Iš naujo nustatyti ir inicijuoti
Žingsnis 2. Iš naujo nustatyti ir inicijuoti
Žingsnis 2. Iš naujo nustatyti ir inicijuoti

Šioje lentelėje pateikiamos vieno baito komandos, valdančios HD44780 LCD, čia pateikiama išsami nuoroda. Šias komandas galima įvesti iš komandų eilutės „Bus Pirate“, tačiau daugumai jų sukūrėme makrokomandas, kad sutaupytume laiko. LCD> (0) <<< rodyti makro meniu0. Makro meniu <<< šis meniu <iš naujo nustatyti LCD2. Pradėti LCD <<< atstatyti ir inicijuoti LCD3. Išvalyti LCD <<< išvalyti LCD, grąžinti žymeklį į 04. Žymeklio padėtis ex: (4: 0) <<< nustatyti žymeklio padėtįMakro 0 rodo bet kurio autobusų piratų režimo makro meniu. LCD> (2) <<< inicijuoti LCD makrokomandą Rodyti eilutes: 1. 1 <<< vienos eilutės ekranas2. Keli <<2 'RESET <<< makrokomanda 2 apima atkūrimo seką INIT <<Inicijuoti LCD makrokomandą (2) sukonfigūruoja ekraną 4 bitų sąsajos režimui, įgalina rodyti žymeklį ir nustato keletą kitų naudingų parinkčių. Konfigūruokite rodomų eilučių skaičių, pasirinkite 1 vienos eilutės ekranui arba 2 - visiems kitiems ekranams. Po inicijavimo ekranas turėtų būti aiškus, o kampe matomas žymeklis. Jei tai nepadėjo, patikrinkite I2C jungtį, prisitraukiančius rezistorius ir maitinimo šaltinį, tada bandykite dar kartą. Prieš pradedant inicijuoti 4 bitų arba 8 bitų sąsajos režimą, HD44780 LCD reikia iš naujo nustatyti naudojant specialią signalų seką. Makro 1 sukuria šią seką. „Macro 2“apima atkūrimo seką, todėl nereikia naudoti 1 makrokomandos prieš 2 makrokomandą.

5 veiksmas: 3 žingsnis. Parašykite bandomuosius simbolius

Žingsnis 3. Parašykite bandomuosius simbolius
Žingsnis 3. Parašykite bandomuosius simbolius
Žingsnis 3. Parašykite bandomuosius simbolius
Žingsnis 3. Parašykite bandomuosius simbolius

LCD> (6:80) <<Rašymo skaičių makrokomanda užpildo LCD ekraną bandymų skaičiais nuo 0 iki 9. Skaičius po dvitaškio nurodo „Bus Pirate“, kiek bandymų skaičių reikia parašyti, mes naudojame 4x20LCD, todėl užpildome 80 skaičių. Atkreipkite dėmesį, kad žymeklis baigiasi 0 padėtyje, po pirmuoju „0“. LCD> (7:80) <<Rašymo simbolių makrokomanda užpildo LCD ASCII simboliais, po dvitaškio įveskite kiekį. Atkreipkite dėmesį, kad kumščio linija tęsiasi trečią, trečia - antrą, o antroji - paskutinę. Simboliai nėra ištisiniai, nes simbolių skystųjų kristalų ekranai neperkeliami iš vienos eilutės į kitą. Vėliau apie tai kalbėsime šiek tiek daugiau.

6 veiksmas: 4 veiksmas. Išvalykite LCD ekraną

Žingsnis 4. Išvalykite LCD
Žingsnis 4. Išvalykite LCD

LCD> (3) <<Skaidri LCD makrokomanda siunčia HD44780 komandą, kuri ištrina ekraną ir grąžina žymeklį į pirmąją vietą. Taip pat galite atlikti bet kurią iš šių operacijų be makrokomandų, žr. Komandų lentelę šio skyriaus pradžioje. Įveskite „[0b1“į „Bus Pirate“, kad sąsaja būtų įjungta į komandų režimą ([) ir išsiųstų HD44780 ekrano išvalymo komandą (0b00000001) be makrokomandos.]

7 veiksmas: 5 veiksmas. Įveskite tekstą

5 veiksmas. Įveskite tekstą
5 veiksmas. Įveskite tekstą
5 veiksmas. Įveskite tekstą
5 veiksmas. Įveskite tekstą

LCD> (8) <<< įterpti vartotojo tekstą Įveskite tekstą, kurį norite įterpti žymeklio vietoje. HD44780 LCD demonstracija <<Išvalius LCD 4 žingsnyje, žymeklis yra ties pirmuoju bloku. Jį taip pat galėtume nustatyti naudodami makrokomandą (4: 0), kuri perkelia žymeklį į pirmąjį simbolį. Įterpti tekstą į žymeklio makrokomandą prašo įvesti tekstą, o paskui nukopijuoti jį į LCD, kai paspausite įvesti. LCD> (4: 0x40) <& lt

LCD> (8) <<< įterpti tekstą Įveskite tekstą, kurį norite įterpti žymeklio vietoje. Autobusas Pirate v2go <<Rašymas į antrąją eilutę yra šiek tiek sudėtingesnis, jis iš tikrųjų prasideda nuo 64 simbolio 4x20 LCD. Jei ir toliau rašysite nuo 1 eilutės pabaigos (20 simbolis), atsidursite trečios eilutės pradžioje! Šiame puslapyje yra gražus atminties žemėlapių rinkinys, skirtas daugeliui simbolių LCD dydžių. Pirma, žymeklį nustatome antroje eilutėje (4: 0x40). Toliau makrokomanda „įterpti tekstą“paima mūsų įvestį ir nukopijuoja ją į LCD. LCD> (4: 0x14) (8) (4: 0x54) (8) <<< kelių makro sintaksė Įveskite tekstą, kurį norite įterpti į žymeklio vietą. Firmware v2.0+ <<< mes įvedėme tai Įveskite tekstą, kurį norite įterpti į žymeklio vietą. Pavojingi prototipaiAutobuso piratas priima kelias makrokomandas toje pačioje eilutėje, todėl visą ekraną galima parašyti vienu metu. Į paskutines dvi eilutes rašėme naudodami vieną sintaksės eilutę. Galėtume naudoti „(3) (4: 0) (8) (4: 0x40) (8) (4: 0x14) (8) (4: 0x54) (8) “, kad išvalytumėte LCD ekraną ir parašytumėte visas keturias eilutes su vienu sintaksės įrašu.

8 veiksmas: 6 veiksmas. Skaitymas iš LCD

Žingsnis 6. Skaitymas iš LCD
Žingsnis 6. Skaitymas iš LCD

Bus Pirate ir LCD adapterių plokštė gali nuskaityti iš LCD. Mes perskaitysime tekstą, kurį parašėme ekrane (DDRAM), tačiau taip pat galite perskaityti nustatymus ir pasirinktinį simbolių šaltinį (CGRAM), nustatydami teisingą adresą. LCD> [0b10000000 "" <<< nustatykite skaitymo žymeklį " '] HD44780 RS LOW, COMMAND MODE <<< registracija pasirinkite kaištį žemas CMD WRITE: 0x80 <<Pirmiausia liepiame „Bus Pirate“siųsti duomenis į LCD komandų registrą ([). Tada mes naudojame nustatytą DDRAM adreso komandą (0b1xxxxxxx), kad nuskaitymo žymeklį nustatytume į DDRAM pradžią (xxxxxxx = 0000000).] LCD>] rrrrrrr <<< skaityti duomenų atmintįHD44780 RS HIGH, DATA MODE <<< register select SKAITYTI: 0x48 <<< 'SKAITYTI: 0x44 <<<' SKAITYTI: 0x34 <<< '4' SKAITYTI: 0x34 <<< '4' SKAITYTI: 0x37 <<< '7' SKAITYTI: 0x38 < << '8'SKAITA: 0x30 <<<' 0'LCD> Galiausiai liepkite autobuso piratui skaityti iš duomenų atminties (]), o tada perskaitykite kelis baitus (rrrrrrr). Gavome „HD44780“, tekstą, kurį parašėme ekrane atlikdami 5 veiksmą. Taip pat turėtumėte turėti galimybę naudoti spartųjį klavišą r: 7, kad perskaitytumėte septynis baitus, tačiau jis neveikia naudojant dabartinę programinę -aparatinę įrangą. kitą leidimą.

9 žingsnis: nuveikite daugiau

Daryti daugiau
Daryti daugiau

Pateikite bendrą žingsnio aprašymą HD44780 simbolių skystųjų kristalų adapteris yra patogus „Bus Pirate“priedas. Jis gali būti naudojamas greitam bandymui arba pažangesniam logikos kūrimui. Be skystųjų kristalų ekranų, aštuoni 2,5 voltų-5 voltų įvesties/išvesties kaiščiai gali būti naudingi kitoms didelio skaičiaus autobusų piratų programoms. Mes galime turėti PCB, rinkinių, arba surinktų rinkinių, kuriuos „Seeed Studio“pagamino už maždaug 15 USD, įskaitant pristatymą visame pasaulyje, daugiau čia. Aš negalėjau įtraukti kai kurių formatavimo elementų ir HTML lentelių į „Instructable“, originalų įrašą galite pamatyti tinklaraštyje „Pavojingi prototipai“.

Rekomenduojamas: