Obsah:

Tlačidlo LED matice: 4 kroky
Tlačidlo LED matice: 4 kroky

Video: Tlačidlo LED matice: 4 kroky

Video: Tlačidlo LED matice: 4 kroky
Video: Arduino návody | LED matice MAX7219 2024, November
Anonim
Tlačidlová matica LED
Tlačidlová matica LED

Tento projekt je možné považovať za ďalší úvodný projekt Arduino, ktorý je o niečo pokročilejší ako váš typický projekt „blikajúce LED“. Tento projekt obsahuje maticu LED, tlačidlá, posuvné registre (ktoré môžu ukladať piny na doske Arduino) a kľúčový koncept nazývaný multiplexovanie. Dúfam, že vám tento návod príde poučný a vyzvete sa, aby ste ho zlepšili!

Zásoby

(1x) Arduino Uno

(5x) Hmatateľné tlačidlá

(2x) 0,1 uF kondenzátory

(2x) 1 uF kondenzátory

(8x) 1k rezistory

(5x) 10k odpory

(2x) 74HC595 posuvné registre

Prepojovacie vodiče

Čierny drôt

Červený drôt

Krok 1: Krok 1: Vytvorenie matice LED

Krok 1: Vytvorenie matice LED
Krok 1: Vytvorenie matice LED
Krok 1: Vytvorenie matice LED
Krok 1: Vytvorenie matice LED
Krok 1: Vytvorenie matice LED
Krok 1: Vytvorenie matice LED

Tutoriál, ktorý som použil na výrobu matice LED 8x8 v tomto projekte, nájdete tu. Pre maticu LED existujú bežné konfigurácie:

a) Spoločná anóda

b) Katóda obyčajná

Keďže som použil usporiadanie matice Common Row Cathode, budem o tom predovšetkým diskutovať a rovnakú logiku môžete rozšíriť na usporiadanie anód Common Row. V usporiadaní katód zo spoločného radu sú katódy diód LED (alebo záporné svorky, ktoré sú na LED diódach kratšie), navzájom spojené v radoch, zatiaľ čo anódy (alebo kladné svorky, ktoré sú dlhšími ramenami diódy LED) sú spolu spojené v stĺpcoch.. Ak chcete adresovať konkrétnu diódu LED, potiahnite rad katódy, na ktorom je LED katóda nízka, a potiahnite stĺpček anódy, na ktorom je anóda LED vysoko.

Poznámka: Pri vytváraní matice LED uvedenej na vyššie uvedenom odkaze spojte anódové stĺpce s odpormi 1 kOhm pred nanesením akéhokoľvek napätia na LED diódy.

Krok 2: Krok 2: Zapojenie tlačidiel a posuvných registrov

Krok 2: Zapojenie tlačidiel a posuvných registrov
Krok 2: Zapojenie tlačidiel a posuvných registrov
Krok 2: Zapojenie tlačidiel a posuvných registrov
Krok 2: Zapojenie tlačidiel a posuvných registrov
Krok 2: Zapojenie tlačidiel a posuvných registrov
Krok 2: Zapojenie tlačidiel a posuvných registrov
Krok 2: Zapojenie tlačidiel a posuvných registrov
Krok 2: Zapojenie tlačidiel a posuvných registrov

Zapojenie tlačidiel a posuvných registrov je uvedené vyššie. Chcel by som poznamenať, že posuvné registre v schéme zapojenia nezobrazujú piny uzemnenia (pin 8 IC) a Vcc alebo napájania (pin 16 IC) pre čipy; uzemňovací kolík je pripojený k kolíku GND dosky Arduino a Vcc je pripojený k 5V kolíku dosky Arduino. Kolík Vcc každého posuvného registra je tiež pripojený k kondenzátoru 0,1 uF pripojenému k zemi.

Poznámka: Výstupy každého posuvného registra sú uvedené ako QA až QH (QH*ignorovať). Sú uvedené z hľadiska najmenej významného bitu (LSB) (pre QA) až po najvýznamnejší bit (MSB) (pre QH), t.j. QA by riadil 0. riadok alebo stĺpec atď.

Krok 3: Krok 3: Odovzdanie kódu

K tomuto tutoriálu je priložený kód na ovládanie matice LED. Snažil som sa okomentovať čo najviac kódu, aby bolo úplne jasné, ako program funguje. Hlavným základom programu je matica, ktorá sleduje, ktoré diódy LED by mali byť zapnuté alebo vypnuté. Aby sa rôzne LED diódy zobrazovali správne bez náhodného zapnutia nežiaducich diód, použite koncept nazývaný multiplexovanie. Multiplexovanie je v podstate rozsvietenie jednotlivých LED v konkrétnom rade, zatiaľ čo všetky ostatné LED v iných radoch, potom to isté platí pre zostávajúce rady. Ide o to, že ak diódy LED cyklujú v radoch dostatočne rýchlo, vaše oči môžu rozpoznať, že jednotlivé rady svietia jeden po druhom. Ak by ste chceli preskúmať viac spôsobov, ako môžete oklamať oči diódami LED, možno by ste sa mali pozrieť na koncept pretrvávajúceho videnia (ľahko vyhľadateľné na stránkach Google alebo Instructables).

Aktualizácia anódových stĺpcov a katódových radov prebieha prostredníctvom používateľom definovanej funkcie s názvom „UpdateShiftRegisters“. Táto funkcia najskôr otočí západkový kolík, ktorý riadi, či je na výstup odoslaný nový bajt (8 bitov), nízky, takže počas zápisu nových bitov na čip nie sú možné žiadne zmeny výstupov. Potom pomocou vstavanej funkcie Arduino s názvom „ShiftOut“, ktorá konkrétne spracováva odosielanie údajov do posuvných registrov, program napíše ktorýkoľvek (katódový) riadok by bol nízky a ktoré (anódové) stĺpce by mali byť vysoké. Nakoniec je kolík západky vytiahnutý vysoko, aby sa aktualizoval výstup (LED diódy).

Krok 4: Ďalšie informácie/zdroje

Tu je niekoľko odkazov na webové stránky alebo knihy, ktoré môžu poskytnúť ďalšie informácie týkajúce sa tohto projektu:

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

Začíname s Arduinom, 2. vydanie od Massima Banziho

Odporúča: