Das Arduino Projekt 22 setzt die Experimente mit der LED-Matrix fort…

Vorbereitungen:

Für dieses Projekt werden folgende Bauteile benötigt:

Schaltungsaufbau:

Im ersten LED-Matrix Projekt wurde eine Matrix mit gemeinsamer Kathode genutzt und für dieses Projekt soll eine Matrix mit gemeinsamer Anode benutzt werden. Es handelt sich um eine 8×8 Matrix vom Typ KWM-20882.

Die folgende Tabelle zeigt die Verbindungen zwischen Arduino und den zwei Schieberegistern.

Arduino-PinSchieberegister-Pin
Ground13 + 8an beiden Schieberegistern
5 Volt10 + 16an beiden Schieberegistern
614an Zeilen Schieberegister
812an beiden Schieberegister
1011an beiden Schieberegister

Die Verbindung zwischen den beiden Schieberegistern:

Schieberegister ZeilenSchieberegister Spalten
16 + 1016 + 105 Volt
914
1212über Arduino Pin 8
1111über Arduino Pin 10

Die folgende Tabelle zeigt die Verbindungen zwischen den Schieberegistern und der LED-Matrix.

Schieberegister ZeilenMatrixpinSchieberegister SpaltenMatrixpin
151155
1216
2327
3438
412416
511515
610614
79713

Programmierung:

#define DATA 6
#define LATCH 8
#define CLOCK 10

void setup()
{
pinMode (LATCH, OUTPUT);
pinMode (CLOCK, OUTPUT);
pinMode (DATA, OUTPUT);
randomSeed(analogRead(0));
}

int binary[] = {1, 2, 4, 8, 16, 32, 64, 128};
int r, c=0;
void setLED(int row, int column, int del)
{
digitalWrite(LATCH, LOW);
shiftOut(DATA, CLOCK, MSBFIRST, binary[row]);
shiftOut(DATA, CLOCK, MSBFIRST, ~binary[column]);
digitalWrite(LATCH, HIGH);
delay(del);
}

void loop()
{
r = random(8);
c = random(8);
setLED(r, c, 40);
}

Von Torsten