Inhaltsverzeichnis:

Arduino MAX7219 7-Segment-Anzeige-Tutorial - Gunook
Arduino MAX7219 7-Segment-Anzeige-Tutorial - Gunook

Video: Arduino MAX7219 7-Segment-Anzeige-Tutorial - Gunook

Video: Arduino MAX7219 7-Segment-Anzeige-Tutorial - Gunook
Video: Arduino Seven Segment display with Max7219 and LedControl 2024, Juli
Anonim
Arduino MAX7219 7-Segment-Anzeige-Tutorial
Arduino MAX7219 7-Segment-Anzeige-Tutorial

MAX7219 ist ein IC, der verwendet wird, um 7-Segment-LEDs (bis zu 8 Stellen), Blockanzeigen (Balkenanzeigen) und 64 einzelne LEDs, die gemeinsame Kathoden sind, anzusteuern. Zur Kommunikation mit einem Mikrocontroller verwendet MAX7219 das SPI-Kommunikationssystem. Um 64 LEDs anzusteuern, benötigen Sie also nur 3 Ports des Mikrocontrollers.

In diesem Artikel zeige ich Ihnen, wie Sie ein 7-Segment-Modul verwenden, das IC MAX7219 als Treiber verwendet.

Erforderliche Komponenten:

  • MAX7219 7-Segment-Modul
  • Arduino Nano
  • Draht Jumper
  • USB-Mini

Erforderliche Bibliothek:

LED-Steuerung

In diesem Tutorial verwende ich Arduino Nano Board. Wenn Sie es noch nie benutzt haben. Ich schlage vor, meinen vorherigen Artikel über "Wie man Arduino Nano verwendet" zu lesen.

Schritt 1: Alle Komponenten zusammenbauen

Alle Komponenten zusammenbauen
Alle Komponenten zusammenbauen

Verbinden Sie das Arduino-Board mit dem 7-Segment-Modul. Siehe das Bild oder die Anleitung, die ich unten geschrieben habe:

Arduino zu 7-Segment

+5V => VCC

GND => GND

D12 => DIN

D11 => CLK

D10 => CS/LOAD

Schritt 2: Bibliothek hinzufügen

Bibliothek hinzufügen
Bibliothek hinzufügen

Nachdem die Schaltung abgeschlossen ist. Fügen Sie der Arduino-IDE die Bibliothek "LedControl" hinzu.

Um Arduino eine Bibliothek hinzuzufügen, können Sie sie in dem Artikel "Wie man eine externe Bibliothek zu Arduino hinzufügt" lesen, den ich zuvor erstellt habe.

Schritt 3: Zusätzliche Funktionen

Zusätzliche Funktionen
Zusätzliche Funktionen

Nach dem Hinzufügen der LedControl-Bibliothek. Mit zusätzlichen Funktionen können Sie das 7-Segment-Modul steuern.

Streit

addr - Adresse des Displays

digit - die Position der Ziffer auf dem Display (0..7)\ value - der anzuzeigende Wert. (0x00..0x0F)

dp setzt den Dezimalpunkt.

Funktion

setChar(addr, digit, value.dp); // um den Wert des Zeichentyps für die 7-Bit-ASCII-Codierung anzuzeigen

setDigit(addr, digit, value, bolean dp); // um Ziffern und Zeichen in einer Funktion anzuzeigen setRow (addr, digit, value, boolean dp); // um das Objekt in der gewünschten Ziffer anzuzeigen

Für weitere Details lesen Sie bitte hier.

Schritt 4: Skizze hochladen

Skizze hochladen
Skizze hochladen

Ich habe für den Test dieses 7-Segment-Moduls skizziert. Sie können den folgenden Code kopieren und dann in Ihre Skizze einfügen.

//Wir müssen immer die Bibliothek mit einbeziehen

#include "LedControl.h"

/*

Jetzt brauchen wir eine LedControl, mit der wir arbeiten können. ***** Diese PIN-Nummern funktionieren wahrscheinlich nicht mit Ihrer Hardware *****

Pin 12 ist mit dem DataIn verbunden

Pin 11 ist mit CLK. verbunden

Pin 10 ist mit LOAD. verbunden

Wir haben nur einen einzigen MAX72XX.

*/

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

/* wir warten immer ein bisschen zwischen den Aktualisierungen der Anzeige */

lange Verzögerungszeit ohne Vorzeichen = 500;

Leere Einrichtung () {

/* Der MAX72XX befindet sich beim Start im Energiesparmodus, wir müssen einen Weckruf ausführen */

lc.shutdown(0, falsch);

/* Helligkeit auf mittlere Werte einstellen */

lc.setIntensity(0, 8);

/* und lösche die Anzeige */

lc.clearDisplay(0);}

leeres hallo (){

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

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

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

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

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

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

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

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

Verzögerung (Verzögerungszeit +1000);

lc.clearDisplay(0);

Verzögerung (Verzögerungszeit);

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

Verzögerung (Verzögerungszeit);

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

Verzögerung (Verzögerungszeit);

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

Verzögerung (Verzögerungszeit);

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

Verzögerung (Verzögerungszeit);

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

Verzögerung (Verzögerungszeit);

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

Verzögerung (Verzögerungszeit);

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

Verzögerung (Verzögerungszeit);

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

Verzögerung (1500);

lc.clearDisplay(0);

Verzögerung (Verzögerungszeit);

}

Leere Schleife () { Hallo ();

}

Oder laden Sie die folgende Datei herunter:

Schritt 5: Ergebnis

Freuen Sie sich auf das Ergebnis.

Bei Fragen einfach in die Kommentarspalte schreiben.

Wir sehen uns im nächsten Artikel.

Empfohlen: