int led1 = 2;
int led2 = 3;
int led3 = 4;
int led4 = 5;
int led5 = 6;
int led6 = 7;
int led7 = 8;
int randNr;
int randNrOld;
int taster = 10;
int iButtenState;
int iUeberschl;
int iSpeed;
void setup() {
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(led4, OUTPUT);
pinMode(led5, OUTPUT);
pinMode(led6, OUTPUT);
pinMode(led7, OUTPUT);
pinMode(taster, INPUT);
randomSeed(analogRead(0));
Serial.begin(9600);
}
void loop() {
iButtenState = digitalRead(taster);
iUeberschl = random(5, 16);
if (iButtenState == HIGH) {
for (int i = 0; i < iUeberschl; i++) {
do {
randNr = random(1, 7);
} while ((randNrOld == randNr) || (randNrOld + randNr == 7));
randNrOld = randNr;
iSpeed = (50 / iUeberschl) + (i * (500 / iUeberschl));
Serial.print("Speed = ");
Serial.println(iSpeed);
delay(iSpeed);
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
digitalWrite(led4, LOW);
digitalWrite(led5, LOW);
digitalWrite(led6, LOW);
digitalWrite(led7, LOW);
delay(iSpeed);
if (randNr == 1) {
digitalWrite(led1, HIGH);
} // 1
if (randNr == 2) {
digitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);
} //2
if (randNr == 3) {
digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);
} //3
if (randNr == 4) {
digitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);
digitalWrite(led4, HIGH);
digitalWrite(led5, HIGH);
} //4
if (randNr == 5) {
digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);
digitalWrite(led4, HIGH);
digitalWrite(led5, HIGH);
} //5
if (randNr == 6) {
digitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);
digitalWrite(led4, HIGH);
digitalWrite(led5, HIGH);
digitalWrite(led6, HIGH);
digitalWrite(led7, HIGH);
} //6
}
}
}