Innehållsförteckning:

Arduino MAX7219 7-segment displayutbildning: 5 steg
Arduino MAX7219 7-segment displayutbildning: 5 steg

Video: Arduino MAX7219 7-segment displayutbildning: 5 steg

Video: Arduino MAX7219 7-segment displayutbildning: 5 steg
Video: Using MAX7219 8 Digits Seven Segment Display - Robojax 2024, November
Anonim
Arduino MAX7219 7-segment displayutbildning
Arduino MAX7219 7-segment displayutbildning

MAX7219 är en IC som används för att driva 7-segmentiga lysdioder (upp till 8 siffror), blockdisplayer (stapeldisplayer) och 64 enskilda lysdioder som är gemensamma katoder. För att kommunicera med en mikrokontroller använder MAX7219 SPI -kommunikationssystemet. Så för att driva 64 lysdioder behöver du bara tre portar på mikrokontrollen.

I den här artikeln kommer jag att visa dig hur du använder en 7-segmentsmodul som använder IC MAX7219 som drivrutin.

Nödvändiga komponenter:

  • MAX7219 7-segmentsmodul
  • Arduino Nano
  • trådbygel
  • USB mini

Obligatoriskt bibliotek:

LedControl

I denna handledning använder jag Arduino Nano board. Om du aldrig har använt det. Jag föreslår att du läser min tidigare artikel om "Hur man använder Arduino Nano".

Steg 1: Montera alla komponenter

Montera alla komponenter
Montera alla komponenter

Anslut Arduino-kortet till 7-segmentsmodulen. Se bilden eller instruktionen som jag skrev nedan:

Arduino till 7-segment

+5V => VCC

GND => GND

D12 => DIN

D11 => CLK

D10 => CS/LOAD

Steg 2: Lägg till bibliotek

Lägg till bibliotek
Lägg till bibliotek

När kretsen är klar. Lägg till "LedControl" -biblioteket i Arduino IDE.

För att lägga till ett bibliotek i Arduino kan du läsa det i artikeln "Hur man lägger till ett externt bibliotek till Arduino" som jag gjorde tidigare ".

Steg 3: Ytterligare funktioner

Ytterligare funktioner
Ytterligare funktioner

Efter att ha lagt till LedControl -biblioteket. Du kan använda ytterligare funktioner för att styra 7-segmentsmodulen.

Argument

addr - displayens adress

siffra - siffrans position på displayen (0..7) värde - värdet som ska visas. (0x00..0x0F)

dp anger decimalpunkten.

Fungera

setChar (addr, digit, value.dp); // för att visa värdet för char-typ för 7-bitars ASCII-kodning

setDigit (addr, digit, value, bolean dp); // för att visa siffror och tecken i en funktion setRow (addr, digit, value, boolean dp); // för att visa objektet i önskad siffra

För mer information, läs här.

Steg 4: Ladda upp Sketch

Ladda upp skiss
Ladda upp skiss

Jag har skissat inför testet av denna 7-segmentsmodul. Du kan kopiera koden nedan och sedan klistra in den i din skiss.

// Vi måste alltid inkludera biblioteket

#inkludera "LedControl.h"

/*

Nu behöver vi en LedControl att arbeta med. ***** Dessa pin -nummer fungerar förmodligen inte med din maskinvara *****

stift 12 är anslutet till DataIn

stift 11 är anslutet till CLK

stift 10 är anslutet till LOAD

Vi har bara en enda MAX72XX.

*/

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

/ * vi väntar alltid lite mellan uppdateringar av displayen */

osignerad lång fördröjning = 500;

void setup () {

/ * MAX72XX är i energisparläge vid uppstart, vi måste ringa upp */

lc.avstängning (0, falskt);

/ * Ställ in ljusstyrkan till ett medelvärde */

lc.setIntensity (0, 8);

/ * och rensa displayen */

lc.clearDisplay (0);}

void hej () {

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

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

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

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

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

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

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

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

fördröjning (fördröjningstid+1000);

lc.clearDisplay (0);

fördröjning (fördröjningstid);

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

fördröjning (fördröjningstid);

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

fördröjning (fördröjningstid);

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

fördröjning (fördröjningstid);

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

fördröjning (fördröjningstid);

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

fördröjning (fördröjningstid);

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

fördröjning (fördröjningstid);

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

fördröjning (fördröjningstid);

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

fördröjning (1500);

lc.clearDisplay (0);

fördröjning (fördröjningstid);

}

void loop () {hej ();

}

Eller ladda ner filen nedan:

Steg 5: Resultat

Njut av resultatet.

Om det finns frågor skriver du dem bara i kommentarsfältet.

Vi ses i nästa artikel.

Rekommenderad: