// TASTER
int taster = 11;
int tasterCount = 0;
// LEDs
int oben = 30; // 1R
int rechts1 = 31; // 2R
int rechts2 = 32; // 3R
int unten = 33; // 4R
int links2 = 34; // 5R
int links1 = 35; // 6R
int mitte = 36; // 7R
void setup() {
// Taster besetzen von 1 - 9 für 9 Eierplaetze
for (int i = 2; i <= taster; i++){
pinMode(taster, INPUT);
}
pinMode(oben, OUTPUT);
pinMode(rechts1, OUTPUT);
pinMode(rechts2, OUTPUT);
pinMode(unten, OUTPUT);
pinMode(links2, OUTPUT);
pinMode(links1, OUTPUT);
pinMode(mitte, OUTPUT);
}
void loop() {
tasterCount = 0;
// Var hochzählen
for (int i = 2; i <= taster; i++){
if(digitalRead(i) == HIGH){
tasterCount++;
}
if(i == taster){
// Je nach Count in den Case springen und die richtige Zahl anzeigen
changeLed();
}
}
// Delay, damit der Arduino sich auch mal entspannen kann
delay(1000);
}
int changeLed() {
// GAS AUF DIE LEDs
switch(tasterCount){
case 1:
digitalWrite(oben, HIGH);
digitalWrite(rechts1, LOW);
digitalWrite(rechts2, LOW);
digitalWrite(unten, HIGH);
digitalWrite(mitte, HIGH);
digitalWrite(links2, HIGH);
digitalWrite(links1, HIGH);
break;
case 2:
digitalWrite(oben, LOW);
digitalWrite(rechts1, LOW);
digitalWrite(rechts2, HIGH);
digitalWrite(unten, LOW);
digitalWrite(mitte, LOW);
digitalWrite(links2, LOW);
digitalWrite(links1, HIGH);
break;
case 3:
digitalWrite(oben, LOW);
digitalWrite(rechts1, LOW);
digitalWrite(rechts2, LOW);
digitalWrite(unten, LOW);
digitalWrite(mitte, LOW);
digitalWrite(links2, HIGH);
digitalWrite(links1, HIGH);
break;
case 4:
digitalWrite(oben, HIGH);
digitalWrite(rechts1, LOW);
digitalWrite(rechts2, LOW);
digitalWrite(unten, HIGH);
digitalWrite(mitte, LOW);
digitalWrite(links2, HIGH);
digitalWrite(links1, LOW);
break;
case 5:
digitalWrite(oben, LOW);
digitalWrite(rechts1, HIGH);
digitalWrite(rechts2, LOW);
digitalWrite(unten, LOW);
digitalWrite(mitte, LOW);
digitalWrite(links2, HIGH);
digitalWrite(links1, LOW);
break;
case 6:
digitalWrite(oben, LOW);
digitalWrite(rechts1, HIGH);
digitalWrite(rechts2, LOW);
digitalWrite(unten, LOW);
digitalWrite(mitte, LOW);
digitalWrite(links2, LOW);
digitalWrite(links1, LOW);
break;
case 7:
digitalWrite(oben, LOW);
digitalWrite(rechts1, LOW);
digitalWrite(rechts2, LOW);
digitalWrite(unten, HIGH);
digitalWrite(mitte, HIGH);
digitalWrite(links2, HIGH);
digitalWrite(links1, HIGH);
break;
case 8:
digitalWrite(oben, LOW);
digitalWrite(rechts1, LOW);
digitalWrite(rechts2, LOW);
digitalWrite(unten, LOW);
digitalWrite(mitte, LOW);
digitalWrite(links2, LOW);
digitalWrite(links1, LOW);
break;
case 9:
digitalWrite(oben, LOW);
digitalWrite(rechts1, LOW);
digitalWrite(rechts2, LOW);
digitalWrite(unten, LOW);
digitalWrite(mitte, LOW);
digitalWrite(links2, HIGH);
digitalWrite(links1, LOW);
break;
default:
// 0
digitalWrite(oben, LOW);
digitalWrite(rechts1, LOW);
digitalWrite(rechts2, LOW);
digitalWrite(unten, LOW);
digitalWrite(mitte, HIGH);
digitalWrite(links2, LOW);
digitalWrite(links1, LOW);
break;
}
}
9 Taster messen ob ein Ei auf ihnen liegt oder nicht. Der Arduino zählt diese Information hoch und schaltet daraufhin die Relais so, dass in der 8er-Digit die richtige Zahl ausgegeben wird.
Geht sicher wie immer auch noch effektiver, aber vielleicht hilfts ja jemandem.
Geht sicher wie immer auch noch effektiver, aber vielleicht hilfts ja jemandem.
1 Response
Ich ziehe meinen Webdesigner-Hut vor dir!
Write a comment
You can use [html][/html], [css][/css], [php][/php] and more to embed the code. Urls are automatically hyperlinked. Line breaks and paragraphs are automatically generated.