Ziel von Projekt 24 ist es den Smiley aus dem vorherigen Projekt auf der LED-Matrix zu animieren.

Das Gesicht wird schrittweise nach rechts aus der Matrix geschoben…

Vorbereitungen:

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

Schaltungsaufbau:

Abhängig davon ob eine LED-Matrix mit gemeinsamer Anode oder gemeinsamer Kathode genutzt wird, gilt es den Schaltungsaufbau anzupassen.

Programmierung:

#define DATA 6 // Verbindung mit Pin 14 am 74HC595
#define LATCH 8 // Verbindung mit Pin 12 am 74HC595
#define CLOCK 10 // Verbindung mit Pin 11 am 74HC595

byte smile [] = {B00000000, B00000110, B01000110, B00000000, B00011000, B00000000, B11000011, B01111110};

int binary[] = {1, 2, 4, 8, 16, 32, 64, 128};

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

void loop()
{
int a, hold, shift;
for ( shift = 0 ; shift < 9 ; shift++)
{
for (hold = 0; hold < 25 ; hold++)
{
for (a = 0; a < 8 ; a++)
{
digitalWrite(LATCH, LOW);
shiftOut(DATA, CLOCK, LSBFIRST, smile[a]>>shift);
shiftOut(DATA, CLOCK, MSBFIRST, ~binary[a]);
digitalWrite(LATCH, HIGH);
delay(1);
}
}
}
}

Von Torsten