int shiftPin = 8; //SHCP
int storePin = 9; //STCP
int dataPin = 10; //DS
//Status der einzelnen LEDs
int led1 = 1;
int led2 = 1;
int led3 = 1;
int led4 = 1;
int led5 = 1;
int led6 = 1;
int led7 = 1;
int led8 = 1;
//Quelle:draeger-it.blog
//maximale Anzahl der LEDs
//(Wenn ein weiteres Schieberegister angeschlossen wird
//muss diese Zahl ensprechend erhöht werden.)
const int ANZAHL_LEDS = 8;
//Array mit Daten für das Schieberegister.
int muster[ANZAHL_LEDS] = {
led1,led2,led3,led4,
led5,led6,led7,led8
};
void setup() {
//setzen der Pins als Ausgang
pinMode(storePin, OUTPUT);
pinMode(shiftPin, OUTPUT);
pinMode(dataPin, OUTPUT);
//setzen des Pins am digitalen Pin D8
//auf LOW quasi Status "AUS"
digitalWrite(storePin, LOW);
//Schleife über das Muster welches
//auf das Schieberegister geschrieben
//werden soll.
for (int i=0; i<ANZAHL_LEDS; i++) {
digitalWrite(shiftPin, LOW);
digitalWrite(dataPin, muster[i]);
digitalWrite(shiftPin, HIGH);
}
//aktivieren des Musters
digitalWrite(storePin, HIGH);
}
void loop () {
//bleibt leer
}