INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Tastereingabe sperren im Code?
12.08.2015, 12:47 (Dieser Beitrag wurde zuletzt bearbeitet: 12.08.2015 12:47 von Haustechno.)
Beitrag #1
Tastereingabe sperren im Code?
Malzeit,

ich habe zwei Taster als Beispiel,möchte mit jedem Taster die dazugehörige LED schalten,aber eine falsche Eingabe,also z.b. drücken beider Taster gleichzeitig unterdrücken/unterbinden.

Hier mein Code:
Code:
if (TasterMehr == LOW) {
    digitalWrite(9, HIGH);
    digitalWrite(10,LOW);  // TasterWeniger sperren
  }
  else {
    digitalWrite(9, LOW);
  }
if (TasterWeniger == LOW) {
    digitalWrite(10, HIGH);
    digitalWrite(9, LOW);   // TasterMehr sperren
  }
  else {
    digitalWrite(10, LOW);
  }

Gibt es eine feinere Lösung für sowas?

Gruß
Haustechno

Smarthome ist die Zukunft ;-)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.08.2015, 12:57
Beitrag #2
RE: Tastereingabe sperren im Code?
Hi,
wo ist das Problem?
Code:
if(TasterMehr != TasterWeniger) {
  ... und hier dann die normale Abfrage für beide Taster
}
Natürlich müsste da noch entsprechend entprellt werden etc. Wenn Du als Mensch zwei Tasten gleichzeitig drückst, dann sind da möglicherweise doch ein paar Millisekunden, während denen nur die eine Taste gedrückt ist.
Gruß,
Thorsten

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.08.2015, 13:22 (Dieser Beitrag wurde zuletzt bearbeitet: 12.08.2015 13:27 von Haustechno.)
Beitrag #3
RE: Tastereingabe sperren im Code?
(12.08.2015 12:57)Thorsten Pferdekämper schrieb:  Hi,
wo ist das Problem?
Code:
if(TasterMehr != TasterWeniger) {
  ... und hier dann die normale Abfrage für beide Taster
}
Natürlich müsste da noch entsprechend entprellt werden etc. Wenn Du als Mensch zwei Tasten gleichzeitig drückst, dann sind da möglicherweise doch ein paar Millisekunden, während denen nur die eine Taste gedrückt ist.
Gruß,
Thorsten

Nun so einfach ist es nicht :-(

Also mit deinem code geht zwar entwerder eine oder die andere diese beliben aber an!

Es soll halt :
- drücke TasterMehr =) LED mehr geht an
loslassen TasterMehr =) LED mehr geht aus

- drücke TasterWeniger =) LED weniger geht an
loslassen TasterWeniger =) LED weniger geht aus

- drücke beide Taster,nix passiert !!!

mit meinem Code von oben wird es wenigstens zum teil unterbunden.
DH.

beim drücken beider Taster geht immer die weniger led an,die mehr led bleibt aus

Smarthome ist die Zukunft ;-)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.08.2015, 14:48 (Dieser Beitrag wurde zuletzt bearbeitet: 12.08.2015 14:53 von Scherheinz.)
Beitrag #4
RE: Tastereingabe sperren im Code?
Und so?

Code:
if (TasterMehr == LOW && TasterWeniger == HIGH) {
digitalWrite(9, HIGH);
digitalWrite(10,LOW);
}
else {
digitalWrite(9, LOW);
}

if (TasterMehr == HIGH && TasterWeniger == LOW) {
digitalWrite(9, LOW);
digitalWrite(10,HIGH);
}
else {
digitalWrite(10, LOW);
}

Dein Problem ist das du niemals beide Taster ganz genau gleichzeitig drücken kannst. Da musst du dir über die Software was basteln. Z.B. Wenn Taster gedrückt -> warte ein paar millis() ab -> ist noch betätigt? -> weiter verarbeiten. So kannst du auch über die Software zusätzlich noch entprellen
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.08.2015, 14:48
Beitrag #5
RE: Tastereingabe sperren im Code?
Hi,
tja, da Du uns halt nicht das komplette Coding gönnst kann man dazu kaum was sagen.
Das mit dem Drücken beider Tasten liegt wahrscheinlich daran, dass halt ein Kontakt immer zuerst schließt.
Zitat:- drücke beide Taster,nix passiert !!!
Das wolltest Du doch, oder?
Gruß,
Thorsten

Falls ich mit einer Antwort helfen konnte, wuerde ich mich freuen, ein paar Fotos oder auch ein kleines Filmchen des zugehoerigen Projekts zu sehen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Einfacher Tacho für niedrige Geschwindigkeiten – Code optimieren Bastelo 2 259 12.10.2016 20:31
Letzter Beitrag: Bastelo
  Code mit Verifikation über Keypad & LCD machnetz 5 215 10.10.2016 15:01
Letzter Beitrag: torsten_156
  Tastereingang gegen mehrmaliges drücken sperren Haustechno 9 818 13.09.2016 17:47
Letzter Beitrag: garagenloeter
  Wo kann ich hier noch Code spahren? (SPI-,Ethernet-,SD-,GSM-Library) avoid 4 381 05.06.2016 14:16
Letzter Beitrag: avoid
  Serial Monitor Eingabe über Code Maxi290997 4 520 12.05.2016 18:57
Letzter Beitrag: SkobyMobil
  Problem: RFID code mit Inhalt einer Textdatei auf einer SD Karte vergleichen MartinK 6 512 29.03.2016 16:45
Letzter Beitrag: MartinK
  OSC Arduino Code Fabian_Fabian 5 433 10.03.2016 23:23
Letzter Beitrag: hotsystems
  Code bei fritzing Miro 3 1.369 08.02.2016 16:16
Letzter Beitrag: Uwa
  Code für Würfel korrekt? JanGamer11 12 807 12.01.2016 19:41
Letzter Beitrag: Claus_M
  Programm Code Erweitern hugolost 8 661 01.01.2016 20:02
Letzter Beitrag: Bitklopfer

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste