#define A 9
#define B 8
#define C 7
#define D 6
#define E 5
#define F 4
#define G 3
#define Punkt 2
#define Taster A2
int t = 0;
int zufallszahl = 0;
int a = 0;
void setup() {
pinMode(A, OUTPUT);
pinMode(B, OUTPUT);
pinMode(C, OUTPUT);
pinMode(D, OUTPUT);
pinMode(E, OUTPUT);
pinMode(F, OUTPUT);
pinMode(G, OUTPUT);
pinMode(Punkt, OUTPUT);
pinMode(Taster, INPUT);
Serial.begin(9600);
randomSeed(analogRead(0));
}
void loop() {
if (digitalRead(Taster) == HIGH) {
zufall();
}
}
void zufall() {
int zufallszahl = random(1, 7);
Serial.println(zufallszahl);
Lauflicht();
t = zufallszahl;
Schluss();
Zahlen();
delay(1000);
while (digitalRead(Taster) == LOW) {
delay(10);
}
Aus();
delay(500);
}
void Lauflicht() {
for (int a = 50; a <= 250; a = a + 25) {
for (int i = 1; i <= 6; i++) {
t = i;
Zahlen();
delay(a);
Aus();
}
}
}
void Schluss() {
if (t > 1) {
Eins();
delay(275);
Aus();
if (t > 2) {
Zwei();
delay(290);
Aus();
if (t > 3) {
Drei();
delay(315);
Aus();
if (t > 4) {
Vier();
delay(360);
Aus();
if (t > 5) {
Funf();
delay(420);
Aus();
}
}
}
}
}
}
void Zahlen() {
if (t == 0) {
Null();
}
if (t == 1) {
Eins();
}
if (t == 2) {
Zwei();
}
if (t == 3) {
Drei();
}
if (t == 4) {
Vier();
}
if (t == 5) {
Funf();
}
if (t == 6) {
Sechs();
}
if (t == 7) {
Sieben();
}
if (t == 8) {
Acht();
}
if (t == 9) {
Neun();
}
}
void Null() {
digitalWrite(A, HIGH);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
digitalWrite(D, HIGH);
digitalWrite(E, HIGH);
digitalWrite(F, HIGH);
}
void Eins() {
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
}
void Zwei() {
digitalWrite(A, HIGH);
digitalWrite(B, HIGH);
digitalWrite(D, HIGH);
digitalWrite(E, HIGH);
digitalWrite(G, HIGH);
}
void Drei() {
digitalWrite(A, HIGH);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
digitalWrite(D, HIGH);
digitalWrite(G, HIGH);
}
void Vier() {
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
digitalWrite(F, HIGH);
digitalWrite(G, HIGH);
}
void Funf() {
digitalWrite(A, HIGH);
digitalWrite(C, HIGH);
digitalWrite(D, HIGH);
digitalWrite(F, HIGH);
digitalWrite(G, HIGH);
}
void Sechs() {
digitalWrite(A, HIGH);
digitalWrite(C, HIGH);
digitalWrite(D, HIGH);
digitalWrite(E, HIGH);
digitalWrite(F, HIGH);
digitalWrite(G, HIGH);
digitalWrite(Punkt, HIGH);
}
void Sieben() {
digitalWrite(A, HIGH);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
}
void Acht() {
digitalWrite(A, HIGH);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
digitalWrite(D, HIGH);
digitalWrite(E, HIGH);
digitalWrite(F, HIGH);
digitalWrite(G, HIGH);
}
void Neun() {
digitalWrite(A, HIGH);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
digitalWrite(D, HIGH);
digitalWrite(F, HIGH);
digitalWrite(G, HIGH);
digitalWrite(Punkt, HIGH);
}
void Aus() {
digitalWrite(A, LOW);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
digitalWrite(D, LOW);
digitalWrite(E, LOW);
digitalWrite(F, LOW);
digitalWrite(G, LOW);
digitalWrite(Punkt, LOW);
}