#define LED_COUNT 10 // da 0 mit gezählt wird
int led[LED_COUNT] = {0, 12, 11, 10, 9, 8, 7, 6, 5, 4}; // 0 als dummy
int Taster = 3;
int null[] = {0};
int eins[] = {5};
int zwei[] = { 9, 1};
int drei[] = {1, 5, 9};
int vier[] = {7, 1, 9, 3};
int fuenf[] = {7, 1, 5, 9, 3};
int sechs[] = {1, 4, 7, 3, 6, 9};
int* wuerfel[] = {null, eins, zwei, drei, vier, fuenf, sechs};
void aus() {
// Alle Leds ausschalten
delay(1000);
for (int b = 1; b < LED_COUNT; b++)
{
digitalWrite(led[b], LOW);
}
delay(500);
}
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
// Schnellere Pinbelegung
for ( int i = 1; i < LED_COUNT; i++)
{
pinMode(led[i], OUTPUT);
}
// Belegung Taster
pinMode(Taster, INPUT_PULLUP);
// Würfel von 1 bis 6 zeigen
for (int w = 1; w < 7; w++)
{
int* augen = wuerfel[w];
for ( int a = 0; a < w; a++)
{
digitalWrite(led[augen[a]], HIGH);
}
aus();
}
// Auslesen des seriellen Monitor
Serial.println("Bitte geben Sie eine Zahl von 1 bis 6 ein.");
delay(5000);
int eingabe = Serial.parseInt();
Serial.println(eingabe);
// Einsetzen und Anzeige des Würfel.
if (eingabe != 0)
{
Serial.println("Alles klar!");
int* augen = wuerfel[eingabe];
for ( int a = 0; a < eingabe; a++)
{
digitalWrite(led[augen[a]], HIGH);
}
aus();
}
else
{
Serial.println("Es wurde keine Zahl gefunden!");
}
Serial.println("Drücken Sie auf den Taster!");
delay(5000);
Serial.println(digitalRead(Taster));
if (digitalRead(Taster) == 0)
{
Serial.println("Taster wurde Betätigt");
int Zufall = random(1,7);
int* augen = wuerfel[Zufall];
for ( int a = 0; a < Zufall; a++)
{
digitalWrite(led[augen[a]], HIGH);
}
aus();
}
}
void loop() {
// put your main code here, to run repeatedly:
}