Turinys:

LED matricos masyvo valdymas naudojant „Arduino Uno“(„Arduino Powered Robot Face“): 4 žingsniai (su paveikslėliais)
LED matricos masyvo valdymas naudojant „Arduino Uno“(„Arduino Powered Robot Face“): 4 žingsniai (su paveikslėliais)

Video: LED matricos masyvo valdymas naudojant „Arduino Uno“(„Arduino Powered Robot Face“): 4 žingsniai (su paveikslėliais)

Video: LED matricos masyvo valdymas naudojant „Arduino Uno“(„Arduino Powered Robot Face“): 4 žingsniai (su paveikslėliais)
Video: Control 32 Servo over Wi-Fi using ESP32 and PCA9685 via desktop or mobile phone V5 2024, Liepa
Anonim
Image
Image
Komponentai
Komponentai

Šioje instrukcijoje parodyta, kaip valdyti 8x8 LED matricų masyvą naudojant „Arduino Uno“. Šis vadovas gali būti naudojamas kuriant paprastą (ir palyginti pigų ekraną) savo projektams. Tokiu būdu galite rodyti raides, skaičius ar pasirinktinę animaciją.

Šiai technologijai iliustruoti naudojamas 5 matricų masyvas, naudojamas viename iš mūsų robotų projektų („Robô da Alegria“). Daugiau apie šį projektą galite rasti šiose nuorodose:

www.instructables.com/id/Joy-Robot-Rob%C3%B4-Da-Alegria-Open-Source-3D-Printed-A/

hackaday.io/project/12873-rob-da-alegria-joy-robot

github.com/ferauche/RoboAlegria

www.facebook.com/robodaalegria/

1 žingsnis: komponentai

Komponentai
Komponentai
Komponentai
Komponentai
Komponentai
Komponentai

Šiame projekte buvo naudojami šie komponentai:

  • „Arduino Uno“(pirkti)
  • 8x8 LED matricos matrica su MAX7219 tvarkykle (x5) [pirkti]
  • Moteriški jungiamieji laidai (4 trumpikliai po 5 kabelius)
  • Perjungimo laidai nuo vyrų iki vyrų (1 trumpiklis iš 5 kabelių)
  • 2 mm akrilo lakštas (neprivaloma tvirtinant komponentus)
  • M2 x 10 mm varžtai (x20) (neprivaloma tvirtinti komponentus)
  • M2 x 1, 5 mm veržlės (x20) (neprivaloma tvirtinti komponentus)
  • Kompiuteris („Arduino“kodo sudarymui ir įkėlimui)
  • Kūrybiškumas

Atkreipkite dėmesį, kad jums reikės dviejų tipų džemperių: tarp moterų ir moterų, kad būtų galima sujungti matricas, ir iš vyrų į moteris, kad sujungtumėte pirmąją matricą su „Arduino“.

Komponentų skaičius gali skirtis priklausomai nuo jūsų turimos struktūros.

2 žingsnis: Surinkimas

Surinkimas
Surinkimas
Surinkimas
Surinkimas
Surinkimas
Surinkimas
Surinkimas
Surinkimas

Prijunkite visus komponentus pagal schemą. Norint prijungti pirmąją matricą prie „Arduino“, reikia kiekvienos jungiamojo laido ir kiekvienos matricos prie kitos masyvo.

„Arduino Pinout“:

  • „Arduino“skaitmeninis kaištis 13 = pirmojo ekrano DIN
  • „Arduino“skaitmeninis kaištis 12 = kumščio ekrano CLK
  • „Arduino“skaitmeninis kaištis 11 = pirmojo ekrano CS
  • „Arduino 5V“kaištis = pirmojo ekrano Vcc
  • „Arduino“GND kaištis = pirmojo ekrano Gnd kaištis

Taip pat galbūt norėsite kiekvieną ekraną išdėstyti tam tikroje padėtyje. Tam galite naudoti akrilinį lakštą, kai kuriuos varžtus ir veržles (po keturis kiekvienam ekranui) ir įdėti kiekvieną komponentą į vietą. Norint surinkti grandinę, nereikia jokių įrankių, tačiau, jei norite pritvirtinti ekranus, jums reikės atsuktuvo arba aštraus įrankio prie paviršiaus su kai kuriais varžtais ir veržlėmis. Mūsų pavyzdyje penki ekranai buvo išdėstyti pagal veido modelį (dvi akys ir burna). Prijunkite USB kabelį prie „Arduino Uno“plokštės ir pereikite prie kito veiksmo.

3 žingsnis: kodavimas

Kodavimas
Kodavimas

Įdiegę naujausią „Arduino IDE“versiją, pridėkite biblioteką „LedControl.h“, kuri naudojama šviesos diodams valdyti. Atsisiųskite, sukompiliuokite ir įkelkite „Arduino“kodą, suskirstytą į 4 dalis: 1. Akių ir burnos apibrėžimas: kiekviena akis yra sukonfigūruota ir 8 baitų masyvas. Burnos yra apibrėžtos kaip 24 baitų masyvas; 2. Sąranka: konfigūruokite ekranus ir pradėkite ryšį; 3. Pagrindinis: palaukite nuoseklaus ryšio komandų ir pasirinkite, kuris veidas bus rodomas; 4. Pagalbinės funkcijos: akių ir burnos ekranų nustatymo funkcijos. „setRow“funkcija buvo naudojama kiekvienai LED ekrano eilutei nustatyti. Jis buvo naudojamas vietoj setColumn, nes jis veikia aštuonis kartus greičiau! Tokiu būdu kiekvieno ekrano brėžiniai turi būti paskelbti pasukti 90 laipsnių prieš laikrodžio rodyklę.

setIntensity buvo naudojamas šviesos diodų ryškumui apriboti. Jis buvo nustatytas kaip 1 (skalėje nuo 0 iki 15), siekiant sumažinti modulių energijos suvartojimą iki USB prievadui priimtino lygio.

4 žingsnis: naudojimas

Naudojimas
Naudojimas
Naudojimas
Naudojimas
Naudojimas
Naudojimas
Naudojimas
Naudojimas

Po įkėlimo laikykite „Arduino“prijungtą prie kompiuterio USB prievado ir atidarykite serijinį monitorių. Kodas užprogramuotas rodyti šypsenėlių rinkinį ant LED veido, atsižvelgiant į serijinio prievado gautą pranešimą. Buvo sukonfigūruotos šios komandos:

Dėl akių

  • : (normalios akys)
  • ; (mirksi)
  • 8 (baisios akys)

Dėl burnos:

  • ) (laimingas)
  • | (neutralus)
  • ((liūdnas)
  • D arba d (labai laimingas)
  • O arba o (nustebęs)
  • P arba p (liežuvis iškištas)

Įveskite porą simbolių (vieną akims ir kitą burnai) serijiniame monitoriuje, paspauskite „Enter“ir ekranai bus atnaujinti pagal jūsų komandą.

Galite pakeisti brėžinius (pvz., Pridėti naujų veidų) arba pakeisti valdymo metodą (įskaitant „Bluetooth“ar „Wi-Fi“sąsają) pagal savo poreikius.

Pasilinksmink!

Rekomenduojamas: