8x8 LED-Dot-Matrix

Diese Matrix besteht aus 64 (8x8) ein einem Gehäuse vergossenen (hier: roten) LEDs, die separat durch einen Pin angesteuert werden können. Verwendet wurde hier allerdings ein DIY-Modul, welches zusätzlich zu einem Vorwiderstand auch den MAX7219-Chip, einen LED-Treiber mit serieller Schnittstelle verbaut hat. Somit muss man nicht die einzelnen LEDs mit je einem Pin auf den Arduino verbinden, sondern kann diese über SPI steuern.

Video: Live-Demonstration
8x8 LED-Dot-Matrix
Abb.: 8x8 LED-Dot-Matrix (links: LED-Matrix; rechts: LED-Matrix Modul mit MAX7219 seriellem LED-Treiber

Anschlüsse

Pinout der LED-Matrix
Abb.: Pinout der LED-Matrix
Aufbau des Moduls mit der seriellen Schnittstelle
Abb.: Aufbau des Moduls mit der seriellen Schnittstelle

Verwendete Bauteile

Aufbau

Aufbau der Schaltung
Abb.: Aufbau der Schaltung

Sketch

#define PIN_DIN 12
#define PIN_CLK 11
#define PIN_CS  10
#define NUM_DEVICES 1

#include <LedControl.h>

LedControl lc = LedControl(PIN_DIN, PIN_CLK, PIN_CS, NUM_DEVICES);

byte frames[3][8] = {
  {
    B00111100,
    B01000010,
    B10010101,
    B10100001,
    B10100001,
    B10010101,
    B01000010,
    B00111100
  },
  {
    B00111100,
    B01000010,
    B10010101,
    B10010001,
    B10010001,
    B10010101,
    B01000010,
    B00111100
  },
  {
    B00111100,
    B01000010,
    B10100101,
    B10010001,
    B10010001,
    B10100101,
    B01000010,
    B00111100
  }
};

void setup()
{
  lc.shutdown(0, false);

  // intensity level (0..15)
  lc.setIntensity(0, 2);

  lc.clearDisplay(0);
}

void loop()
{
  for (int frame=0; frame<3; frame++) {
    for (int dot=0; dot<8; dot++) {
      lc.setRow(0, dot, frames[frame][dot]);
    }
    delay(750);
  }
}
zurück