Sisukord:

Arduino MAX7219 7-segmendi kuvamise õpetus: 5 sammu
Arduino MAX7219 7-segmendi kuvamise õpetus: 5 sammu

Video: Arduino MAX7219 7-segmendi kuvamise õpetus: 5 sammu

Video: Arduino MAX7219 7-segmendi kuvamise õpetus: 5 sammu
Video: How to use TM1637 4 digits seven segment display with Arduino 2024, Juuli
Anonim
Arduino MAX7219 7-segmendi kuvamise õpetus
Arduino MAX7219 7-segmendi kuvamise õpetus

MAX7219 on IC, mida kasutatakse 7-segmendiliste valgusdioodide (kuni 8 numbrit), blokeerivate kuvarite (ribakuvarite) ja 64 üksikute kodukoodidega LED-ide juhtimiseks. Mikrokontrolleriga suhtlemiseks kasutab MAX7219 SPI sidesüsteemi. Nii et 64 LED -i juhtimiseks on vaja ainult 3 mikrokontrolleri porti.

Selles artiklis näitan teile, kuidas kasutada 7-segmendilist moodulit, mis kasutab draiverina IC MAX7219.

Nõutavad komponendid:

  • MAX7219 7-segmendiline moodul
  • Arduino Nano
  • traadi hüppaja
  • USB mini

Nõutav raamatukogu:

LedControl

Selles õpetuses kasutan Arduino Nano plaati. Kui te pole seda kunagi kasutanud. Soovitan lugeda minu eelmist artiklit teemal "Kuidas kasutada Arduino Nano".

Samm: koguge kõik komponendid kokku

Pange kõik komponendid kokku
Pange kõik komponendid kokku

Ühendage Arduino plaat 7-segmendilise mooduliga. Vaadake allolevat pilti või juhist:

Arduino kuni 7-segmendiline

+5 V => VCC

GND => GND

D12 => DIN

D11 => CLK

D10 => CS/LOAD

Samm: kogu lisamine

Lisa kogu
Lisa kogu

Pärast vooluringi lõppu. Lisage Arduino IDE -le kogu "LedControl".

Arduinole raamatukogu lisamiseks saate seda lugeda artiklist "Kuidas Arduinole välist raamatukogu lisada", mille tegin varem ".

3. samm: lisafunktsioonid

Lisafunktsioonid
Lisafunktsioonid

Pärast LedControli kogu lisamist. 7-segmendilise mooduli juhtimiseks saate kasutada lisafunktsioone.

Argument

addr - ekraani aadress

number - numbri asukoht ekraanil (0..7) väärtus - kuvatav väärtus. (0x00..0x0F)

dp määrab kümnendkoha.

Funktsioon

setChar (addr, number, value.dp); // 7-bitise ASCII kodeeringu char tüüpi väärtuse kuvamiseks

setDigit (addr, number, value, bolean dp); // numbrite ja märkide kuvamiseks ühes funktsioonikomplektisRow (addr, number, value, boolean dp); // objekti kuvamiseks soovitud numbrina

Lisateavet leiate siit.

4. samm: laadige üles visand

Eskiisi üleslaadimine
Eskiisi üleslaadimine

Olen visandanud selle 7-segmendilise mooduli prooviversiooni. Saate allpool oleva koodi kopeerida ja seejärel oma visandisse kleepida.

// Me peame alati raamatukogu kaasama

#include "LedControl.h"

/*

Nüüd vajame töötamiseks LedControli. ***** Need PIN -numbrid teie riistvaraga tõenäoliselt ei tööta *****

tihvt 12 on ühendatud DataIn -iga

tihvt 11 on ühendatud CLK -ga

tihvt 10 on ühendatud LOAD -iga

Meil on ainult üks MAX72XX.

*/

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

/ * ootame alati ekraani värskenduste vahel natuke * */

allkirjastamata pikk viivitusaeg = 500;

tühine seadistus () {

/ * MAX72XX on käivitamisel energiasäästurežiimis, peame tegema äratuskõne */

lc.sulgemine (0, vale);

/ * Seadke heledus keskmisele väärtusele */

lc.setIntensity (0, 8);

/ * ja tühjendage ekraan */

lc.clearDisplay (0);}

tühine tere () {

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

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

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

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

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

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

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

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

viivitus (viivitusaeg+1000);

lc.clearDisplay (0);

viivitus (viivitusaeg);

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

viivitus (viivitusaeg);

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

viivitus (viivitusaeg);

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

viivitus (viivitusaeg);

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

viivitus (viivitusaeg);

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

viivitus (viivitusaeg);

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

viivitus (viivitusaeg);

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

viivitus (viivitusaeg);

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

viivitus (1500);

lc.clearDisplay (0);

viivitus (viivitusaeg);

}

void loop () {tere ();

}

Või laadige alla järgmine fail:

5. samm: tulemus

Nautige tulemust.

Kui teil on küsimusi, kirjutage need lihtsalt kommentaaride veergu.

Kohtumiseni järgmises artiklis.

Soovitan: