Obsah:

Tlačítko LED matice: 4 kroky
Tlačítko LED matice: 4 kroky

Video: Tlačítko LED matice: 4 kroky

Video: Tlačítko LED matice: 4 kroky
Video: Arduino návody | LED matice MAX7219 2024, Červenec
Anonim
Tlačítko LED matice
Tlačítko LED matice

Tento projekt lze považovat za další úvodní projekt Arduino, který je o něco pokročilejší než váš typický projekt „blikající LED“. Tento projekt obsahuje LED matici, tlačítka, posuvné registry (které mohou ukládat piny na desce Arduino) a klíčový koncept nazývaný multiplexování. Doufám, že vám tento návod přijde poučný a vyzvete se, abyste ho vylepšili!

Zásoby

(1x) Arduino Uno

(5x) Taktilní tlačítka

(2x) 0,1 uF kondenzátory

(2x) 1 uF kondenzátory

(8x) 1k odpory

(5x) 10k odpory

(2x) 74HC595 posuvné registry

Propojovací dráty

Černý drát

Červený drát

Krok 1: Krok 1: Vytvoření matice LED

Krok 1: Vytvoření matice LED
Krok 1: Vytvoření matice LED
Krok 1: Vytvoření matice LED
Krok 1: Vytvoření matice LED
Krok 1: Vytvoření matice LED
Krok 1: Vytvoření matice LED

Tutoriál, který jsem použil k výrobě matice LED 8x8 v tomto projektu, najdete zde. Pro matici LED existují běžné konfigurace:

a) Společná anoda

b) Katoda obecná

Protože jsem použil uspořádání matice Common Row Cathode, budu o tom hlavně diskutovat a stejnou logiku můžete rozšířit na uspořádání Common Row Anode. V uspořádání Common Row Cathode jsou katody LED (nebo záporné svorky, které jsou na LED diodách kratší) spojeny dohromady v řadách, zatímco anody (nebo kladné svorky, které jsou na LED diodách delší), jsou spojeny dohromady ve sloupcích. Chcete -li oslovit konkrétní LED, zatáhněte za řadu katody, na které je LED katoda nízko, a zatáhněte za sloupec anody, kde je LED anoda vysoko.

Poznámka: Při vytváření matice LED zobrazené na výše uvedeném odkazu se ujistěte, že jste připojili anodové sloupce k odporům 1 k ohm, než na LED diody připojíte jakékoli napětí.

Krok 2: Krok 2: Zapojení tlačítek a posuvných registrů

Krok 2: Zapojení tlačítek a posuvných registrů
Krok 2: Zapojení tlačítek a posuvných registrů
Krok 2: Zapojení tlačítek a posuvných registrů
Krok 2: Zapojení tlačítek a posuvných registrů
Krok 2: Zapojení tlačítek a posuvných registrů
Krok 2: Zapojení tlačítek a posuvných registrů
Krok 2: Zapojení tlačítek a posuvných registrů
Krok 2: Zapojení tlačítek a posuvných registrů

Kabeláž tlačítek a posuvných registrů je uvedena výše. Chtěl bych poznamenat, že posuvné registry ve schématu zapojení neukazují piny uzemnění (pin 8 IC) a Vcc nebo napájení (pin 16 IC) pro čipy; zemnící kolík je připojen ke kolíku GND desky Arduino a Vcc je připojen k 5V pinu desky Arduino. Kolík Vcc každého posuvného registru je také připojen ke kondenzátoru 0,1 uF připojenému k zemi.

Poznámka: Výstupy každého posuvného registru jsou uvedeny jako QA až QH (ignorovat QH*). Jsou uvedeny z hlediska nejméně významného bitu (LSB) (pro QA) až po nejvýznamnější bit (MSB) (pro QH), tj. QA by řídil 0. řádek nebo sloupec atd.

Krok 3: Krok 3: Nahrání kódu

K tomuto kurzu je připojen kód pro ovládání matice LED. Snažil jsem se okomentovat co nejvíce kódu, aby bylo jasné, jak program funguje. Hlavním základem programu je matice, která sleduje, které diody LED by měly být zapnuty nebo vypnuty. Aby se různé LED diody zobrazovaly správně bez nechtěného zapnutí nežádoucích diod, použijte koncept zvaný multiplexování. Multiplexování je v podstatě rozsvícení jednotlivých LED v konkrétní řadě, zatímco všechny ostatní LED v jiných řadách, pak to samé pro zbývající řádky. Trik spočívá v tom, že pokud LED diody cyklují v řadách dostatečně rychle, vaše oči poznají, že jednotlivé řady svítí po jednom. Pokud byste chtěli prozkoumat více způsobů, jak oklamat oči pomocí LED diod, možná budete chtít nahlédnout do konceptu trvalé viditelnosti (snadno vyhledatelné na Googlu nebo Instructables).

Způsob, jakým jsou anodové sloupce a katodové řady aktualizovány, je prostřednictvím uživatelem definované funkce nazvané 'UpdateShiftRegisters'. Tato funkce nejprve otočí západkový kolík, který řídí, zda je na výstup odeslán nový byte (8 bitů), nízký, takže při zápisu nových bitů na čip nejsou možné žádné změny výstupů. Poté pomocí vestavěné funkce Arduino s názvem 'ShiftOut', která konkrétně zpracovává odesílání dat do posuvných registrů, program zapíše libovolný řádek (katodový), který by byl nízký a které (anodové) sloupce by měly být vysoké. Nakonec je kolík západky vytažen vysoko, aby se aktualizoval výstup (LED diody).

Krok 4: Další informace/zdroje

Zde je několik odkazů na webové stránky nebo knihy, které mohou poskytnout další informace týkající se tohoto 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čínáme s Arduino, 2. vydání od Massima Banziho

Doporučuje: