Miniaturlichterkette
Ziel: Bauen einer Reihe von LEDs, die als Lichterkette fungiert
Material: - 31 Steckverbindungen
- Arduino UNO
- Breadboard
- Taster
- 4 rote LEDs
- 4 grüne LEDs
- 4 blaue LEDs
- 3 Widerstände à 220 Ohm
- 1 Widerstand à 10 kOhm
Aufbau:
Code (mit Erläuterungen):
int ledRot = 5;//wir legen die roten LEDs an Pin 5
int ledGruen = 7;//wir legen die gruenen LEDs an Pin 7
int ledBlau = 9;//wir legen die blauen LEDs an Pin 9
int tasterPin = 11;//wir legen den Taster an Pin 11
int ledGruen = 7;//wir legen die gruenen LEDs an Pin 7
int ledBlau = 9;//wir legen die blauen LEDs an Pin 9
int tasterPin = 11;//wir legen den Taster an Pin 11
void setup() {
pinMode(ledRot, OUTPUT);//wir legen den Pin der roten LEDs als Ausgang fest
pinMode(ledGruen, OUTPUT);//wir legen den Pin der gruenen LEDs als Ausgang fest
pinMode(ledBlau, OUTPUT);//wir legen den Pin der blauen LEDs als Ausgang fest
pinMode(tasterPin, INPUT);//wir legen den Pin des Tasters als Ausgang fest
}
pinMode(ledRot, OUTPUT);//wir legen den Pin der roten LEDs als Ausgang fest
pinMode(ledGruen, OUTPUT);//wir legen den Pin der gruenen LEDs als Ausgang fest
pinMode(ledBlau, OUTPUT);//wir legen den Pin der blauen LEDs als Ausgang fest
pinMode(tasterPin, INPUT);//wir legen den Pin des Tasters als Ausgang fest
}
void loop() {
if(digitalRead(tasterPin) == HIGH){//wir fragen ob der Taster gedrückt ist
for(int i = 0; i < 10; i++){//wenn ja, dann führe die Schleife zehn Mal(zehn Sekunden, da ein Durchgang eine Sekunde ist) aus
digitalWrite(ledRot, HIGH);//schalte die roten LEDs an
delay(333);//warte 333 Millisekunden
digitalWrite(ledRot, LOW);//schalte die roten LEDs aus
digitalWrite(ledGruen, HIGH);//schalte die gruenen LEDs an
delay(333);//warte 333 Millisekunden
digitalWrite(ledGruen, LOW);//schalte die gruenen LEDs aus
digitalWrite(ledBlau, HIGH);//schalte die blauen LEDs an
delay(333);//warte 333 Millisekunden
digitalWrite(ledBlau, LOW);//schalte die blauen LEDs aus
}
}
else //falls der Taster nicht gedrückt ist
{
digitalWrite(ledBlau, LOW);//schalte die blauen LEDs aus
}
}
if(digitalRead(tasterPin) == HIGH){//wir fragen ob der Taster gedrückt ist
for(int i = 0; i < 10; i++){//wenn ja, dann führe die Schleife zehn Mal(zehn Sekunden, da ein Durchgang eine Sekunde ist) aus
digitalWrite(ledRot, HIGH);//schalte die roten LEDs an
delay(333);//warte 333 Millisekunden
digitalWrite(ledRot, LOW);//schalte die roten LEDs aus
digitalWrite(ledGruen, HIGH);//schalte die gruenen LEDs an
delay(333);//warte 333 Millisekunden
digitalWrite(ledGruen, LOW);//schalte die gruenen LEDs aus
digitalWrite(ledBlau, HIGH);//schalte die blauen LEDs an
delay(333);//warte 333 Millisekunden
digitalWrite(ledBlau, LOW);//schalte die blauen LEDs aus
}
}
else //falls der Taster nicht gedrückt ist
{
digitalWrite(ledBlau, LOW);//schalte die blauen LEDs aus
}
}
Erstellt: Adrian Schmidt (10.01.2017)
Letzte Änderung: Maximilian Stauch (28.06.2017)