Ovládanie matice LED pomocou Arduina: 5 krokov
Ovládanie matice LED pomocou Arduina: 5 krokov
Anonim
Ovládanie LED matice pomocou Arduina
Ovládanie LED matice pomocou Arduina
Ovládanie LED matice pomocou Arduina
Ovládanie LED matice pomocou Arduina

Ahoj kamarát.

V tomto článku vám ukážem, ako používať Led Matrix pomocou Arduina.

Led Matrix je zbierka LED diód vo forme polí. Led matice majú rôzne stĺpce a riadky, v závislosti od typu. Prezentáciou niekoľkých LED diód s určitou kombináciou môže matica LED zobrazovať množstvo znakov, písmen, symbolov a ďalšie. Ďalší názov pre Led Matrix je bodová matica.

Princíp činnosti Led Matrix je rovnaký ako „7-segmentový displej“, ktorý som vytvoril včera. Rozdiel medzi nimi je len vo vzhľade.

Krok 1: Špecifikácia Led Matrix

Špecifikácia Led Matrix
Špecifikácia Led Matrix

Tu sú špecifikácie Led Matrix:

  • Počet diód LED: 64
  • Počet riadkov: 8
  • Počet stĺpcov: 8
  • Prevádzkové napätie: 4,7 V - 5 V DC
  • Prevádzkový prúd: 320mA
  • Maximálny prevádzkový prúd: 2A

Krok 2: Požadované súčasti

Požadované komponenty
Požadované komponenty
Požadované komponenty
Požadované komponenty
Požadované komponenty
Požadované komponenty
Požadované komponenty
Požadované komponenty

Požadované komponenty:

  • Led Matrik
  • Arduino Nano
  • Prepojovací drôt
  • USBmini
  • Rada projektu

Požadovaná knižnica:

LedControl

Ak chcete do IDE Arduino pridať knižnicu, pozrite si tento článok „Pridať knižnicu do Arduina“

Krok 3: Pripojte Led Matrix k Arduino IDE

Pripojte Led Matrix k Arduino IDE
Pripojte Led Matrix k Arduino IDE

Pozrite sa na popis nižšie alebo na obrázok vyššie:

Led Matrix na Arduino

VCC ==> +5V

GND ==> GND

DIN ==> D6

CS ==> D7

CLK ==> D8

Krok 4: Programovanie

Programovanie
Programovanie

Toto je príklad náčrtu, ktorý je možné použiť na vyskúšanie matice LED:

// Vždy musíme zahrnúť knižnicu#zahrnúť „LedControl.h“

/*

Teraz potrebujeme LedControl, s ktorým budeme pracovať. ***** Tieto čísla pinov pravdepodobne nebudú fungovať s vašim hardvérom ***** pin 6 je pripojený k DataIn pin 8 je pripojený k CLK pin 7 je pripojený k LOAD Máme iba jeden MAX72XX. */

LedControl lc = LedControl (6, 8, 7, 1);

/ * medzi aktualizáciami displeja vždy chvíľu počkáme */

dlhá doba bez znamienka = 100;

neplatné nastavenie () {

/ * MAX72XX je pri štarte v úspornom režime, musíme zobudiť budík */ lc.shutdown (0, false); / * Nastavte jas na stredné hodnoty */ lc.setIntensity (0, 8); / * a vymažte displej */ lc.clearDisplay (0); }

/*

Táto metóda zobrazí na matici jeden po druhom znaky pre slovo „Arduino“. (na zobrazenie celých znakov potrebujete aspoň 5x7 LED) */ void writeArduinoOnMatrix () {/ *tu sú údaje pre znaky */ byte a [5] = {B01111110, B10001000, B10001000, B10001000, B01111110}; bajt r [5] = {B00111110, B00010000, B00100000, B00100000, B00010000}; bajt d [5] = {B00011100, B00100010, B00100010, B00010010, B11111110}; bajt u [5] = {B00111100, B00000010, B00000010, B00000100, B00111110}; bajt i [5] = {B00000000, B00100010, B10111110, B00000010, B00000000}; bajt n [5] = {B00111110, B00010000, B00100000, B00100000, B00011110}; bajt o [5] = {B00011100, B00100010, B00100010, B00100010, B00011100};

/ * teraz ich zobrazujte jeden po druhom s malým oneskorením */

lc.setRow (0, 0, a [0]); lc.setRow (0, 1, a [1]); lc.setRow (0, 2, a [2]); lc.setRow (0, 3, a [3]); lc.setRow (0, 4, a [4]); oneskorenie (čas oneskorenia); lc.setRow (0, 0, r [0]); lc.setRow (0, 1, r [1]); lc.setRow (0, 2, r [2]); lc.setRow (0, 3, r [3]); lc.setRow (0, 4, r [4]); oneskorenie (čas oneskorenia); lc.setRow (0, 0, d [0]); lc.setRow (0, 1, d [1]); lc.setRow (0, 2, d [2]); lc.setRow (0, 3, d [3]); lc.setRow (0, 4, d [4]); oneskorenie (čas oneskorenia); lc.setRow (0, 0, u [0]); lc.setRow (0, 1, u [1]); lc.setRow (0, 2, u [2]); lc.setRow (0, 3, u [3]); lc.setRow (0, 4, u [4]); oneskorenie (čas oneskorenia); lc.setRow (0, 0, i [0]); lc.setRow (0, 1, i [1]); lc.setRow (0, 2, i [2]); lc.setRow (0, 3, i [3]); lc.setRow (0, 4, i [4]); oneskorenie (čas oneskorenia); lc.setRow (0, 0, n [0]); lc.setRow (0, 1, n [1]); lc.setRow (0, 2, n [2]); lc.setRow (0, 3, n [3]); lc.setRow (0, 4, n [4]); oneskorenie (čas oneskorenia); lc.setRow (0, 0, o [0]); lc.setRow (0, 1, o [1]); lc.setRow (0, 2, o [2]); lc.setRow (0, 3, o [3]); lc.setRow (0, 4, o [4]); oneskorenie (čas oneskorenia); lc.setRow (0, 0, 0); lc.setRow (0, 1, 0); lc.setRow (0, 2, 0); lc.setRow (0, 3, 0); lc.setRow (0, 4, 0); oneskorenie (čas oneskorenia); }

/*

Táto funkcia rozsvieti niekoľko LED v rade. Vzor sa bude opakovať v každom riadku. Vzor bude blikať spolu s číslom riadka. riadok číslo 4 (index == 3) štyrikrát zabliká atď. */ neplatné riadky () {for (int riadok = 0; riadok <8; riadok ++) {oneskorenie (čas oneskorenia); lc.setRow (0, riadok, B10100000); oneskorenie (čas oneskorenia); lc.setRow (0, riadok, (bajt) 0); pre (int i = 0; i

/*

Táto funkcia rozsvieti niektoré LED v stĺpci. Vzor sa bude opakovať v každom stĺpci. Vzor bude blikať spolu s číslom stĺpca. stĺpec číslo 4 (index == 3) štyrikrát zabliká atď. */ neplatné stĺpce () {for (int col = 0; col <8; col ++) {delay (delaytime); lc.setColumn (0, col, B10100000); oneskorenie (čas oneskorenia); lc.setColumn (0, col, (byte) 0); pre (int i = 0; i

/*

Táto funkcia rozsvieti všetky LED diódy na matici. LED dióda bude blikať spolu s číslom riadku. riadok číslo 4 (index == 3) štyrikrát zabliká atď. */ void single () {for (int row = 0; row <8; row ++) {for (int col = 0; col <8; col ++) { oneskorenie (čas oneskorenia); lc.setLed (0, riadok, stĺpček, true); oneskorenie (čas oneskorenia); pre (int i = 0; i

prázdna slučka () {

writeArduinoOnMatrix (); riadky (); stĺpce (); single (); }

Tiež ho uvádzam ako súbor:

Krok 5: Užite si to

Užite si to
Užite si to

Bol to návod na tému LED matrix.

Ďakujem, že ste si prečítali tento článok. vidíme sa v nasledujúcom článku.

Odporúča: