Turinys:

48 X 8 slinkties LED matricos ekranas naudojant „Arduino“ir „Shift“registrus: 6 žingsniai (su paveikslėliais)
48 X 8 slinkties LED matricos ekranas naudojant „Arduino“ir „Shift“registrus: 6 žingsniai (su paveikslėliais)

Video: 48 X 8 slinkties LED matricos ekranas naudojant „Arduino“ir „Shift“registrus: 6 žingsniai (su paveikslėliais)

Video: 48 X 8 slinkties LED matricos ekranas naudojant „Arduino“ir „Shift“registrus: 6 žingsniai (su paveikslėliais)
Video: Arduino pamoka Nr. 13: Daugiau šokančių šviesos diodų – Postūmio registras 74HC595 2024, Lapkritis
Anonim
48 X 8 Slenkamas LED matricos ekranas naudojant „Arduino“ir „Shift“registrus
48 X 8 Slenkamas LED matricos ekranas naudojant „Arduino“ir „Shift“registrus
48 X 8 Slenkamas LED matricos ekranas naudojant „Arduino“ir „Shift“registrus
48 X 8 Slenkamas LED matricos ekranas naudojant „Arduino“ir „Shift“registrus

Sveiki visi

Tai yra mano pirmasis „Instructable“ir viskas apie 48 x 8 programuojamą slinkties LED matricą, naudojant „Arduino Uno“ir 74HC595 pamainų registrus. Tai buvo mano pirmasis projektas su „Arduino“plėtros lenta. Tai buvo iššūkis, kurį man pateikė mokytojas. Tuo metu, kai priėmiau šį iššūkį, aš net nežinojau, kaip mirksėti LED naudojant arduino. Taigi, manau, kad net pradedantysis gali tai padaryti, turėdamas šiek tiek kantrybės ir supratimo. Pradėjau nuo nedidelių tyrimų apie pamainų registrus ir multipleksavimą arduino. Jei nesate naujokas pamainų registruose, rekomenduoju prieš pradedant matricas išmokti pamainų registravimo ir keitimo grandinėmis pagrindus. Tai labai padės suprasti kodą ir slinkties ekrano veikimą.

1 žingsnis: įrankių ir komponentų surinkimas

Įrankių ir komponentų surinkimas
Įrankių ir komponentų surinkimas

Komponentai

  • 1. „Arduino Uno R3“- 1
  • 2. 74HC595 8 bitų nuoseklaus ir lygiagretaus poslinkio registrai. - 7
  • 3. BC 548/2N4401 tranzistoriai - 8
  • 4. 470 omų rezistoriai - stulpelių skaičius + 8
  • 5. Paruošimo lenta 6x4 colių - 4
  • 6. Spalvomis pažymėti laidai - pagal poreikį
  • 7. IC laikikliai - 7
  • 8. 5 mm arba 3 mm 8x8 bendrojo katodo vienspalvė LED matrica - 6
  • 9. Vyrų ir moterų antraštės - pagal poreikį.

Reikalingi įrankiai

  • 1. Litavimo komplektas
  • 2. Multimetras
  • 3. Klijų pistoletas
  • 4. Litavimo siurblys
  • 5. 5V maitinimo šaltinis

2 žingsnis: grandinės kūrimas ant duonos lentos

Grandinės kūrimas ant duonos lentos
Grandinės kūrimas ant duonos lentos
Grandinės kūrimas ant duonos lentos
Grandinės kūrimas ant duonos lentos
Grandinės kūrimas ant duonos lentos
Grandinės kūrimas ant duonos lentos
Grandinės kūrimas ant duonos lentos
Grandinės kūrimas ant duonos lentos

Pirmas dalykas, kurį turite padaryti prieš kurdami prototipą, yra gauti 8x8 matricos kaiščio diagramą ir pažymėti atskaitos tašką, kad būtų galima nustatyti kaiščius visose matricose. Tai gali padėti surinkti grandinę.

Pridėjau matricos modulio, kurį naudojau, schemą. Mano modulyje eilutės buvo neigiami kaiščiai. Ši kaiščių schema išlieka ta pati daugelyje rinkoje esančių modulių.

Grandinėje parodyta, kad 8 eilučių valdymui naudojamas vienas pamainų registras, o stulpeliams valdyti naudojamas vienas poslinkių registras kiekvienam 8 stulpeliui.

Sukurkime paprastą 8 x 8 slinkties ekraną ant lentos.

Grandinė yra padalinta į dvi dalis - eilutės valdymą ir stulpelio valdymą. Pirmiausia sukurkime stulpelio valdiklį.

4 kaištis iš arduino yra prijungtas prie pamainų registro 14 kaiščio (SER). (Tai yra poslinkių registro nuosekliųjų duomenų įvesties kaištis. Loginiai lygiai, reikalingi šviesos diodams įjungti, tiekiami per šį kaištį

„Arduino“kaištis 3 yra prijungtas prie pamainų registro 12 kaiščio (RCLK). (Pavadinkime šį kaištį kaip išvesties laikrodžio kaištį. Perkelimo registrų atmintyje esantys duomenys perkeliami į išvestį, kai šis laikrodis suaktyvinamas.)

2 kaištis iš arduino yra prijungtas prie pamainų registro 11 kaiščio (SRCLK). (Tai yra įvesties laikrodžio kaištis, kuris perkelia duomenis į atmintį.)

VCC +5V perduodamas perjungimo registrui per jo 16 kaištį ir tas pats yra prijungtas prie kaiščio 10. (Kodėl? 10 kaištis yra SRCLR kaištis, kuris suaktyvina pamainos registro duomenis. Tai aktyvus žemas kaištis, todėl norint išlaikyti duomenis pamainų registro atmintyje, šis kaištis turi būti nuolat tiekiamas su +5 V

Žemė yra prijungta prie GND kaiščio (8 poslinkio registro kaištis) ir OE kaiščio (13 pamainos registro kaištis). (Kodėl? Išėjimo įjungimo kaištį reikia suaktyvinti, kad būtų galima išvesti pagal laikrodžio signalą. Tai aktyvus žemas kaištis, kaip ir SRCLR kaištis, todėl jį visą laiką reikia išlaikyti pagrindinėje būsenoje, kad būtų galima išėjimai.)

Matricos stulpelių kaiščiai yra prijungti prie poslinkio registro, kaip parodyta schemoje, su 470 omų rezistoriumi tarp matricos ir poslinkio registro

Dabar eilučių valdymo grandinė.

7 kaištis iš arduino yra prijungtas prie pamainų registro 14 kaiščio (SER)

5 arduino kaištis prijungtas prie pamainų registro 11 kaiščio (SRCLK)

6 kaištis iš arduino yra prijungtas prie pamainos registro 12 kaiščio (RCLK)

VCC +5V suteikiamas 16 ir 10 kaiščiams, kaip aprašyta aukščiau

Įžeminimas prijungtas prie 8 ir 13 kaiščių

Kaip jau minėjau aukščiau, eilutės mano atveju buvo neigiamos smeigtukai. Neigiamus matricos kaiščius geriau laikyti ekrano eilutėmis. Įžeminimo jungtį reikia perjungti į šiuos neigiamus kaiščius, naudojant BC548/2N4401 tranzistorius, kuriuos valdo poslinkio registro išvesties loginiai lygiai. Taigi kuo daugiau neigiamų kaiščių, tuo daugiau tranzistorių mums reikia

Pateikite eilių jungtis, kaip parodyta grandinės schemoje

Jei jums pavyko sukurti 8 x 8 matricos ekrano prototipą, galite tiesiog pakartoti stulpelio valdymo grandinės dalį ir išplėsti matricą iki bet kokio stulpelių skaičiaus. Jums tereikia pridėti vieną 74HC595 kas 8 stulpelius (vieną 8 x 8 modulį) ir susieti jį su ankstesniu.

Daisy sujungia pamainų registrus, kad pridėtų daugiau stulpelių

„Daisy“grandinė elektros inžinerijoje yra laidų schema, kurioje keli įrenginiai sujungiami iš eilės.

Mechanizmas yra paprastas: SRCLK (įvesties laikrodis. 11 kaištis) ir RCLK (išvesties laikrodis. 12 kaištis) smeigtukai yra bendrinami visuose grandinės grandinės poslinkių registruose, o kiekvienas QH PIN kodas (9 kaištis) ankstesniame pamainos registre grandinė naudojama kaip nuoseklus įvestis kitam poslinkių registrui per SER PIN kodą (14 kaištis).

Paprastais žodžiais tariant, daisy sujungus pamainų registrus, juos galima valdyti kaip vieną pamainos registrą su didesne atmintimi. Pavyzdžiui, jei surinksite dviejų 8 bitų pamainų registrų grandinę, jie veiks kaip vienas 16 bitų pamainų registras.

Kodas

Kodu mes tiekiame stulpelius su atitinkamais loginiais lygiais pagal įvestį, kol mes nuskaitome išilgai eilučių. Simboliai nuo A iki Z kode apibrėžiami kaip loginiai lygiai baitų masyve. Kiekvienas simbolis yra 5 pikselių pločio ir 7 pikselių aukščio. Aš pateikiau išsamesnį paaiškinimą apie kodo veikimą kaip komentarus pačiame kode.

„Arduino“kodas pridedamas čia.

3 žingsnis: litavimas

Litavimas
Litavimas
Litavimas
Litavimas
Litavimas
Litavimas

Kad būtų lengviau suprasti litavimo grandinę, padariau ją kuo didesnę ir pateikiau atskiras eilių ir stulpelių valdiklių plokštes ir sujungiau jas naudodami antraštes ir laidus. Galite jį sumažinti daug, lituodami komponentus arčiau vienas kito arba, jei gerai mokate kurti PCB, galite pagaminti ir mažesnę pasirinktinę PCB.

Būtinai įdėkite 470 omų rezistorių prie kiekvieno kaiščio, vedančio į matricą. Visada naudokite antraštes, kad prijungtumėte LED matricas prie plokštės. Geriau jų ne lituoti tiesiai prie plokštės, nes ilgalaikis karščio poveikis gali juos visam laikui sugadinti.

Kadangi aš padariau atskiras plokštes eilių ir stulpelių valdikliams, aš prailginau laidus iš vienos plokštės į kitą, kad sujungčiau stulpelius. Čia viršuje esanti lenta skirta eilučių valdymui, o apačioje - stulpelių valdymui.

reikia tik vieno 74HC595, kad būtų galima vairuoti visas 8 eilutes. Tačiau, atsižvelgiant į stulpelių skaičių, reikėtų pridėti daugiau pamainų registrų, nėra teorinio stulpelių, kuriuos galite pridėti prie šios matricos, skaičiaus apribojimo. Kokio dydžio jūs galite tai padaryti? Praneškite man, kai ten pateksite!;)

4 žingsnis: išbandykite baigtą pirmąją grandinės pusę

Baigtos pirmosios grandinės pusės testavimas
Baigtos pirmosios grandinės pusės testavimas

Visada išbandykite iki pusės, kad surastumėte galimas klaidas, pvz., Atsilaisvinusius ryšius, neteisingą kaiščio jungtį ir tt: Daugelis žmonių, kurie manęs paprašė pagalbos ieškant klaidos savo matricoje, padarė klaidą naudodami matricos modulio eilutės stulpelio kaištį. Prieš litavimą patikrinkite jį du kartus ir naudokite spalvotus laidus, kad lengvai atskirtumėte kaiščius.

5 žingsnis: antrosios pusės kūrimas

Antrosios pusės kūrimas
Antrosios pusės kūrimas
Antrosios pusės kūrimas
Antrosios pusės kūrimas
Antrosios pusės kūrimas
Antrosios pusės kūrimas

Išplėskite tą pačią stulpelio valdymo grandinę. Eilutės yra nuosekliai sujungtos su ankstesne.

SRCLK ir RCLK kaiščiai imami lygiagrečiai, o baigtos grandinės paskutinio poslinkio registro QH (Serial data out. Pin 9) prijungiamas prie kito poslinkio registro SER (Serial Data in. Pin 14). VCC ir GND galia taip pat yra dalijama tarp visų IC.

6 žingsnis: rezultatas

Image
Image

Kai baigsite litavimą, kitas žingsnis yra padaryti ekrano dėklą. Visada geriau suprojektuoti pasirinktinį dėklą naudojant „Fusion 360“ar bet kurį kitą 3D projektavimo įrankį ir 3D spausdinti. Kadangi tuo metu neturėjau prieigos prie 3D spausdinimo, padėjau medinį dėklą padedamas medžio apdirbimą išmanančio draugo.

Tikimės, kad jums patiko skaityti šią pamoką. Paskelbkite savo projekto versijos nuotraukas žemiau esančiame komentarų skyriuje ir, jei turite klausimų, nedvejodami užduokite tai čia arba atsiųskite laišką adresu [email protected]. Aš mielai jums padėsiu.

Rekomenduojamas: