//LEDS
int LED1 = 12;
int LED2 = 11;
int LED3 = 10;
int LED4 = 9;
int LED5 = 13;
int LED6 = 7;
int LED7 = 8;
//Taster
int Taster = 6;
//Schalter
int Schalter = 5;
//Sensor
//TRIG
int Starter = 4;
//ECHO
int Ausgabe = 3;
//Wert
int zufall;
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);
pinMode(Schalter, INPUT_PULLUP);
//Sensor
Serial.begin(115200);
pinMode(LED_BUILTIN, OUTPUT);
pinMode(Starter, OUTPUT);
pinMode(Ausgabe, INPUT);
randomSeed(analogRead(0));
}
void loop() {
//Würfel
if(digitalRead(Schalter))
{
//Start des Würfels
if(digitalRead(Taster))
{
digitalWrite(LED1, LOW);
digitalWrite(LED2 ,LOW);
digitalWrite(LED3, LOW);
digitalWrite(LED4, LOW);
digitalWrite(LED5, LOW);
digitalWrite(LED6, LOW);
digitalWrite(LED7, LOW);
zufall = random(1, 7);
delay(500);
}
}
//Zähler
else
{
digitalWrite(Starter, LOW);
delayMicroseconds(2);
digitalWrite(Starter, HIGH);
delayMicroseconds(10);
digitalWrite(Starter, LOW);
//auslesen
int distanz = (pulseIn(Ausgabe, HIGH) / 58);
Serial.print("cm: ");
Serial.println(distanz);
//anzeigen
if(distanz < 200)
{
delay(1000);
digitalWrite(LED1, LOW);
digitalWrite(LED2 ,LOW);
digitalWrite(LED3, LOW);
digitalWrite(LED4, LOW);
digitalWrite(LED5, LOW);
digitalWrite(LED6, LOW);
digitalWrite(LED7, LOW);
zufall = zufall + 1;
delay(500);
}
if(digitalRead(Taster))
{
digitalWrite(LED1, LOW);
digitalWrite(LED2 ,LOW);
digitalWrite(LED3, LOW);
digitalWrite(LED4, LOW);
digitalWrite(LED5, LOW);
digitalWrite(LED6, LOW);
digitalWrite(LED7, LOW);
zufall = zufall + 1;
}
if(zufall > 6)
{
zufall = 0;
}
}
//Anzeige des Wertes
if(zufall == 1)
{
digitalWrite(LED4, HIGH);
}
if(zufall == 2)
{
digitalWrite(LED3, HIGH);
digitalWrite(LED5, HIGH);
}
if(zufall == 3)
{
digitalWrite(LED3, HIGH);
digitalWrite(LED4, HIGH);
digitalWrite(LED5, HIGH);
}
if(zufall == 4)
{
digitalWrite(LED1, HIGH);
digitalWrite(LED3, HIGH);
digitalWrite(LED5, HIGH);
digitalWrite(LED7, HIGH);
}
if(zufall == 5)
{
digitalWrite(LED1, HIGH);
digitalWrite(LED3, HIGH);
digitalWrite(LED4, HIGH);
digitalWrite(LED5, HIGH);
digitalWrite(LED7, HIGH);
}
if(zufall == 6)
{
digitalWrite(LED1, HIGH);
digitalWrite(LED2, HIGH);
digitalWrite(LED3, HIGH);
digitalWrite(LED5, HIGH);
digitalWrite(LED6, HIGH);
digitalWrite(LED7, HIGH);
}
}