Indholdsfortegnelse:

Arduino MAX7219 7-segment displayvisning: 5 trin
Arduino MAX7219 7-segment displayvisning: 5 trin

Video: Arduino MAX7219 7-segment displayvisning: 5 trin

Video: Arduino MAX7219 7-segment displayvisning: 5 trin
Video: 7 Segment Displays & Arduino the EASY way! with MAX7219 Driver 2024, November
Anonim
Arduino MAX7219 7-Segment Display Tutorial
Arduino MAX7219 7-Segment Display Tutorial

MAX7219 er en IC, der bruges til at drive lysdioder med 7 segmenter (op til 8 cifre), blokdisplays (søjledisplay) og 64 individuelle lysdioder, der er fælles katoder. For at kommunikere med en mikrokontroller bruger MAX7219 SPI -kommunikationssystemet. Så for at drive 64 lysdioder behøver du kun 3 porte på mikrokontrolleren.

I denne artikel vil jeg vise dig, hvordan du bruger et 7-segment modul, der bruger IC MAX7219 som driver.

Påkrævede komponenter:

  • MAX7219 7-segment modul
  • Arduino Nano
  • wire jumper
  • USB mini

Påkrævet bibliotek:

LedControl

I denne tutorial bruger jeg Arduino Nano board. Hvis du aldrig har brugt det. Jeg foreslår at læse min tidligere artikel om "Sådan bruges Arduino Nano".

Trin 1: Saml alle komponenter

Saml alle komponenter
Saml alle komponenter

Tilslut Arduino-kortet til 7-segment modulet. Se billedet eller instruktionen, som jeg skrev herunder:

Arduino til 7-segment

+5V => VCC

GND => GND

D12 => DIN

D11 => CLK

D10 => CS/LOAD

Trin 2: Tilføj bibliotek

Tilføj bibliotek
Tilføj bibliotek

Efter kredsløbet er færdigt. Tilføj biblioteket "LedControl" til Arduino IDE.

For at tilføje et bibliotek til Arduino kan du læse det i artiklen "Sådan tilføjes et eksternt bibliotek til Arduino", som jeg lavede tidligere ".

Trin 3: Yderligere funktioner

Yderligere funktioner
Yderligere funktioner

Efter tilføjelse af LedControl -biblioteket. Du kan bruge yderligere funktioner til at styre 7-segment modulet.

Argument

addr - displayets adresse

ciffer - placeringen af cifret på displayet (0..7) værdi - værdien, der skal vises. (0x00..0x0F)

dp angiver decimaltegnet.

Fungere

setChar (addr, ciffer, værdi.dp); // for at vise værdien af char-typen for 7-bit ASCII-kodning

setDigit (addr, ciffer, værdi, bolean dp); // for at vise cifre og tegn i en funktion setRow (addr, ciffer, værdi, boolsk dp); // for at vise objektet i det ønskede ciffer

For flere detaljer, læs venligst her.

Trin 4: Upload skitse

Upload skitse
Upload skitse

Jeg har skitseret til prøveversionen af dette 7-segment modul. Du kan kopiere koden herunder og derefter indsætte den i din skitse.

// Vi skal altid inkludere biblioteket

#include "LedControl.h"

/*

Nu har vi brug for en LedControl at arbejde med. ***** Disse pin -numre vil sandsynligvis ikke fungere med din hardware *****

pin 12 er forbundet til DataIn

pin 11 er forbundet til CLK

pin 10 er forbundet til LOAD

Vi har kun en enkelt MAX72XX.

*/

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

/ * vi venter altid lidt mellem opdateringer af displayet */

usigneret lang forsinkelse = 500;

ugyldig opsætning () {

/ * MAX72XX er i strømbesparende tilstand ved opstart, vi skal foretage et vågneopkald */

lc.lukning (0, falsk);

/ * Indstil lysstyrken til et medium værdier */

lc.setIntensity (0, 8);

/ * og ryd displayet */

lc.clearDisplay (0);}

void hej () {

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

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

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

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

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

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

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

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

forsinkelse (forsinkelse+1000);

lc.clearDisplay (0);

forsinkelse (forsinkelse);

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

forsinkelse (forsinkelse);

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

forsinkelse (forsinkelse);

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

forsinkelse (forsinkelse);

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

forsinkelse (forsinkelse);

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

forsinkelse (forsinkelse);

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

forsinkelse (forsinkelse);

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

forsinkelse (forsinkelse);

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

forsinkelse (1500);

lc.clearDisplay (0);

forsinkelse (forsinkelse);

}

void loop () {hej ();

}

Eller download filen herunder:

Trin 5: Resultat

Nyd resultatet.

Hvis der er spørgsmål, skal du bare skrive dem i kommentarfeltet.

Vi ses i næste artikel.

Anbefalede: