Turinys:

Mygtuko LED matrica: 4 žingsniai
Mygtuko LED matrica: 4 žingsniai

Video: Mygtuko LED matrica: 4 žingsniai

Video: Mygtuko LED matrica: 4 žingsniai
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Lapkritis
Anonim
Mygtuko LED matrica
Mygtuko LED matrica

Šį projektą galima įsivaizduoti kaip dar vieną įvadinį „Arduino“projektą, kuris yra šiek tiek tobulesnis už įprastą „mirksintį LED“projektą. Šis projektas apima LED matricą, mygtukus, poslinkių registrus (kurie gali išsaugoti kaiščius jūsų „Arduino“plokštėje) ir pagrindinę koncepciją, vadinamą multipleksavimu. Tikiuosi, kad pamoka jums atrodys šviesi ir pakviesite save tobulėti!

Prekės

(1x) „Arduino Uno“

(5x) lytėjimo mygtukai

(2x) 0,1 uF kondensatoriai

(2x) 1 uF kondensatoriai

(8x) 1k rezistoriai

(5x) 10k rezistoriai

(2x) 74HC595 pamainų registrai

Trumpieji laidai

Juoda viela

Raudona viela

1 žingsnis: 1 žingsnis: LED matricos sukūrimas

1 žingsnis: sukurkite LED matricą
1 žingsnis: sukurkite LED matricą
1 žingsnis: sukurkite LED matricą
1 žingsnis: sukurkite LED matricą
1 žingsnis: sukurkite LED matricą
1 žingsnis: sukurkite LED matricą

Pamoką, kurią naudoju kurdamas 8x8 LED matricą šiame projekte, rasite čia. Yra bendros LED matricos konfigūracijos:

a) Bendras eilės anodas

b) Bendras eilių katodas

Kadangi naudojau matricos bendrojo eilės katodo išdėstymą, daugiausia jį aptarsiu čia ir tą pačią logiką galite išplėsti ir bendro eilės anodo išdėstymui. Taikant bendrą eilių katodą, šviesos diodų katodai (arba neigiami gnybtai, kurie yra trumpesnė šviesos diodo dalis) yra sujungti eilėmis, o anodai (arba teigiami gnybtai, kurie yra ilgesnė šviesos diodo dalis) yra sujungti stulpeliais. Norėdami kreiptis į tam tikrą šviesos diodą, patraukite katodo eilutę, kad šviesos diodo katodas yra žemas, ir patraukite anodo stulpelį, kuriame yra LED anodas.

Pastaba: kai darote aukščiau esančioje nuorodoje parodytą LED matricą, prieš prijungdami bet kokią įtampą prie šviesos diodų, būtinai prijunkite anodo stulpelius prie 1k omų rezistorių.

2 veiksmas: 2 veiksmas: mygtukų ir perjungimo registrų prijungimas

2 veiksmas: jungite mygtukus ir perjungimo registrus
2 veiksmas: jungite mygtukus ir perjungimo registrus
2 veiksmas: jungite mygtukus ir perjungimo registrus
2 veiksmas: jungite mygtukus ir perjungimo registrus
2 veiksmas: jungite mygtukus ir perjungimo registrus
2 veiksmas: jungite mygtukus ir perjungimo registrus
2 veiksmas: jungite mygtukus ir perjungimo registrus
2 veiksmas: jungite mygtukus ir perjungimo registrus

Mygtukų ir perjungimo registrų laidai parodyti aukščiau. Norėčiau atkreipti dėmesį, kad grandinės schemoje poslinkių registrai nerodo lustų įžeminimo (IC 8 kaištis) ir Vcc arba maitinimo šaltinio (IC 16 kaištis); įžeminimo kaištis yra prijungtas prie „Arduino“plokštės GND kaiščio, o „Vcc“- prie „Arduino“plokštės 5 V kaiščio. Kiekvieno poslinkio registro Vcc kaištis taip pat prijungtas prie 0,1uF kondensatoriaus, prijungto prie žemės.

Pastaba: kiekvieno poslinkio registro išėjimai yra išvardyti kaip QA – QH (ignoruoti QH*). Jie išvardyti atsižvelgiant į mažiausiai reikšmingą bitą (LSB) (QA) į reikšmingiausią bitą (MSB) (QH), ty QA kontroliuotų 0 -ąją eilutę ar stulpelį ir pan.

3 veiksmas: 3 veiksmas: kodo įkėlimas

Prie šios pamokos pridedamas LED matricos valdymo kodas. Stengiausi pakomentuoti kuo daugiau kodo, kad būtų labai aišku, kaip programa veikia. Pagrindinis programos pagrindas yra matrica, kuri stebi, kurie šviesos diodai turėtų būti įjungti arba išjungti. Norint, kad įvairūs šviesos diodai būtų rodomi teisingai, netyčia neįjungus nepageidaujamų diodų, reikia naudoti sąvoką, vadinamą multipleksavimu. Multipleksavimas iš esmės apšviečia atskirus šviesos diodus tam tikroje eilutėje, o visi kiti šviesos diodai kitose eilėse, tada tas pats daroma su likusiomis eilėmis. Triukas yra tas, kad jei šviesos diodai pakankamai greitai pereina per eilutes, jūsų akys gali pasakyti, kad atskiros eilutės yra apšviečiamos po vieną. Jei norite ištirti daugiau būdų, kaip apgauti akis šviesos diodais, galbūt norėsite panagrinėti regėjimo atkaklumo koncepciją (lengvai ieškoma „Google“arba „Instructables“).

Anodo stulpeliai ir katodo eilutės atnaujinamos naudojant vartotojo apibrėžtą funkciją „UpdateShiftRegisters“. Ši funkcija pirmiausia pasuka fiksatoriaus kaištį, kuris kontroliuoja, ar į išvestį siunčiamas naujas baitas (8 bitai), todėl žemas, todėl išvesties pakeitimai neįmanomi, kol į mikroschemą įrašomi nauji bitai. Tada naudojant įmontuotą „Arduino“funkciją, pavadintą „ShiftOut“, kuri konkrečiai tvarko duomenų siuntimą į pamainų registrus, programa rašo, kuri (katodo) eilutė būtų maža, o kurios (anodo) stulpeliai turėtų būti aukšti. Galiausiai fiksatoriaus kaištis pakeliamas aukštai, kad būtų atnaujinta išvestis (šviesos diodai).

4 žingsnis: papildoma informacija/ištekliai

Štai keletas nuorodų į svetaines ar knygas, kuriose gali būti pateikta papildomos informacijos apie šį projektą:

learn.adafruit.com/adafruit-arduino-lesson-4-eight-leds/arduino-code

www.arduino.cc/en/tutorial/ShiftOut

www.ti.com/lit/ds/symlink/sn74hc595.pdf

www.youtube.com/watch?v=7VYxcgqPe9A

www.youtube.com/watch?v=VxMV6wGS3NY

Darbo pradžia su „Arduino“, 2 -asis leidimas, Massimo Banzi

Rekomenduojamas: