methoden
schaltung
code1
schreibe ein Programm welches die LEDs von links nach rechts einzeln ein und ausschaltet und dann wieder retour
/*
an den PINs 2-9 sind LEDs angeschlossen
*/
int pinArray[] = {2, 3, 4, 5, 6, 7, 8, 9};
int zaehler = 0;
int dauer = 33;
void setup() {
for (zaehler = 0; zaehler < 8; zaehler++) {
pinMode(pinArray[zaehler], OUTPUT);
}
}
void loop() {
// dein code
}
rider-01
code2
je nach potentiometer stellung bewegt sich das lauflicht schnell oder langsam
/*
an den PINs 2-9 sind LEDs angeschlossen
*/
int ledPin[] = {2, 3, 4, 5, 6, 7, 8, 9};
int anzahlLED = 8;
int richtung = 1;
int aktivePosition = 0;
int letztePosition = 0;
int dauer = 33;
int poti = 0;
void setup() {
Serial.begin(115200);
for (int i = 0; i < 8; i++) {
pinMode(ledPin[i], OUTPUT);
}
debugText();
}
void loop() {
poti = analogRead(0); // am A0-pin
dauer = map(poti, 0, 1023, 20, 333); //
debugText();
letztePosition = aktivePosition;
aktivePosition += richtung;
digitalWrite(ledPin[aktivePosition], HIGH);
digitalWrite(ledPin[letztePosition], LOW);
if (aktivePosition >= anzahlLED - 1 || aktivePosition < 1) {
richtung *= -1;
}
delay(dauer);
}
void debugText() {
if (aktivePosition == 0) {
Serial.println("-----------------------------------------------");
}
Serial.print(aktivePosition);
Serial.print("\t richtung: ");
Serial.print(richtung);
Serial.print("\t\t");
Serial.print(poti);
Serial.print(" :: ");
Serial.println(dauer);
}
