Obsah:

Výučba 7-segmentového displeja Arduino MAX7219: 5 krokov
Výučba 7-segmentového displeja Arduino MAX7219: 5 krokov

Video: Výučba 7-segmentového displeja Arduino MAX7219: 5 krokov

Video: Výučba 7-segmentového displeja Arduino MAX7219: 5 krokov
Video: M#3 MAX7219 7-сегментные и матричные дисплеи | Аутсил Дев. ПЛК Мега 2024, November
Anonim
Výukový program pre Arduino MAX7219 so 7 segmentmi displeja
Výukový program pre Arduino MAX7219 so 7 segmentmi displeja

MAX7219 je integrovaný obvod, ktorý sa používa na pohon 7-segmentových diód LED (až 8 číslic), blokových displejov (stĺpcové displeje) a 64 samostatných diód LED, ktoré sú bežnými katódami. Na komunikáciu s mikrokontrolérom používa MAX7219 komunikačný systém SPI. Na pohon 64 LED diód teda stačia 3 porty mikrokontroléra.

V tomto článku vám ukážem, ako používať modul 7-Segement, ktorý používa ako ovládač IC MAX7219.

Požadované komponenty:

  • 7-segmentový modul MAX7219
  • Arduino Nano
  • drôtený prepojka
  • USB mini

Požadovaná knižnica:

LedControl

V tomto návode používam dosku Arduino Nano. Ak ste ho nikdy nepoužili. Odporúčame prečítať si môj predchádzajúci článok o „Ako používať Arduino Nano“.

Krok 1: Zostavte všetky súčasti

Zostavte všetky komponenty
Zostavte všetky komponenty

Pripojte dosku Arduino k 7-segmentovému modulu. Pozrite sa na obrázok alebo návod, ktorý som napísal nižšie:

Arduino na 7-segmentový

+5V => VCC

GND => GND

D12 => DIN

D11 => CLK

D10 => CS/ZAŤAŽENIE

Krok 2: Pridajte knižnicu

Pridať knižnicu
Pridať knižnicu

Po dokončení obvodu. Pridajte knižnicu „LedControl“do Arduino IDE.

Ak chcete do Arduina pridať knižnicu, môžete si to prečítať v článku „Ako pridať externú knižnicu do Arduina“, ktorý som vytvoril predtým „.

Krok 3: Ďalšie funkcie

Doplnkové funkcie
Doplnkové funkcie

Po pridaní knižnice LedControl. Na ovládanie 7-segmentového modulu môžete použiť ďalšie funkcie.

Hádka

addr - adresa displeja

číslica - pozícia číslice na displeji (0..7) hodnota - hodnota, ktorá sa má zobraziť. (0x00..0x0F)

dp nastavuje desatinnú čiarku.

Funkcia

setChar (addr, číslica, hodnota.dp); // pre zobrazenie hodnoty typu char pre 7-bitové kódovanie ASCII

setDigit (addr, číslica, hodnota, bolean dp); // zobrazenie číslic a znakov v jednej funkcii setRow (addr, digit, value, boolean dp); // na zobrazenie objektu v požadovanej číslici

Viac informácií nájdete tu.

Krok 4: Nahrajte skicu

Nahrať náčrt
Nahrať náčrt

Načrtol som skúšobnú verziu tohto 7-segmentového modulu. Môžete skopírovať kód nižšie a potom ho vložiť do náčrtu.

// Knižnicu musíme vždy zahrnúť

#include "LedControl.h"

/*

Teraz potrebujeme LedControl, s ktorým budeme pracovať. ***** Tieto čísla pinov pravdepodobne nebudú fungovať s vašim hardvérom *****

pin 12 je pripojený k DataIn

pin 11 je pripojený k CLK

pin 10 je pripojený k LOAD

Máme iba jeden MAX72XX.

*/

LedControl lc = LedControl (12, 11, 10, 1);

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

dlhá doba bez znamienka = 500;

neplatné nastavenie () {

/ * MAX72XX je pri spustení 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);}

void ahoj () {

lc.setChar (0,7, 'H', nepravda);

lc.setChar (0, 6, 'E', nepravda);

lc.setChar (0, 5, 'L', false);

lc.setChar (0, 4, 'L', false);

lc.setChar (0, 3, '0', nepravda);

lc.setChar (0, 2, '.', false);

lc.setChar (0, 1, '.', false);

lc.setChar (0, 0, '.', false);

oneskorenie (doba zdržania+1000);

lc.clearDisplay (0);

oneskorenie (čas oneskorenia);

lc.setDigit (0, 7, 1, false);

oneskorenie (čas oneskorenia);

lc.setDigit (0, 6, 2, false);

oneskorenie (čas oneskorenia);

lc.setDigit (0, 5, 3, false);

oneskorenie (čas oneskorenia);

lc.setDigit (0, 4, 4, nepravda);

oneskorenie (čas oneskorenia);

lc.setDigit (0, 3, 5, nepravda);

oneskorenie (čas oneskorenia);

lc.setDigit (0, 2, 6, false);

oneskorenie (čas oneskorenia);

lc.setDigit (0, 1, 7, nepravda);

oneskorenie (čas oneskorenia);

lc.setDigit (0, 0, 8, false);

oneskorenie (1500);

lc.clearDisplay (0);

oneskorenie (čas oneskorenia);

}

void loop () {ahoj ();

}

Alebo si stiahnite súbor nižšie:

Krok 5: Výsledok

Užite si výsledok.

Ak máte otázky, napíšte ich do stĺpca komentárov.

Uvidíme sa v nasledujúcom článku.

Odporúča: