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
Wie mehrere Bedingungen in if-Definition einbauen?
21.03.2015, 19:50
Beitrag #1
Wie mehrere Bedingungen in if-Definition einbauen?
Ich bin dabei, meinen ersten eigenen Sketch zu schreiben. Das ist natürlich nicht der typische Blinksḱetch sondern sofort ein etwas komplizierteres Dingen (für mich). Ich frage zwei verschiedene Eingänge ab und möchte je nach Kombination des Ergebnisses einen weiteren Eingang schalten. Wie muss dann der Befehl dafür lauten?

Beispiel, dass auch schon funktioniert:
Wenn Taster gedrückt wird, schalte Ausgang 4 für 0,6 Sekungen auf low, ansonsten lass ihn auf high. Der delay ist dort ganz bewußt gesetzt und soll auch so stehen bleiben.

Code:
if (taster < 1) {
    digitalWrite(4, LOW);
    delay(600);
    digitalWrite(4, HIGH);
  }
  else {
     digitalWrite(4, HIGH);
  }

Nun gibt es aber auch folgende Kombination:

Wenn Pin2 high und Pin5 high, dann Pin4 low

oder

Wenn Pin2 low und Pin5 low, dann Pin1 high, etc.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
21.03.2015, 19:54 (Dieser Beitrag wurde zuletzt bearbeitet: 21.03.2015 19:57 von HaWe.)
Beitrag #2
RE: Wie mehrere Bedingungen in if-Definition einbauen?
Zitat:Wenn Pin2 high und Pin5 high, dann Pin4 low
Code:
if ((pin2==HIGH) && (pin5==HIGH)) digitalWrite(pin4, LOW);

oder
Zitat:Wenn Pin2 low und Pin5 low, dann Pin1 high, etc.
Code:
if((pin2==LOW) && (pin5==LOW)) digitalWrite(pin1, HIGH);


HTH !
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
21.03.2015, 20:04 (Dieser Beitrag wurde zuletzt bearbeitet: 21.03.2015 21:01 von Gelegenheitsbastler.)
Beitrag #3
RE: Wie mehrere Bedingungen in if-Definition einbauen?
Perfekt. Vielen Dank. Dann werde ich mal weiter basteln.


edit:
Einen habe ich noch. Kann man den Zustand eines Pins, der über eine if-Regel gesetzt wurde, abfragen und daraus eine neue Regel erstellen? Das wäre dann ziemlich verschachtelt, würde mir aber Arbeit ersparen.

Nehmen wir das zweite Beispiel:

Pin2 ist low und Pin5 ist low, dann wird Pin1 high, so wie in der Regel definiert. Die nächste Regel wäre dann:

Wenn... ...und Pin1 high, dann...

Würde das so funktionieren?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
22.03.2015, 00:37
Beitrag #4
RE: Wie mehrere Bedingungen in if-Definition einbauen?
Ja, Du kannst auch den Status eines Ausganges mit digitalRead abfragen.

Gruss Ralf
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Mehrere HX711 mit einem Arduino Uno be14b029 5 137 08.02.2017 18:09
Letzter Beitrag: Binatone
  Mehrere Servos gleichzeitig steuern (Hexapod) scritch 7 277 25.01.2017 08:18
Letzter Beitrag: scritch
  mehrere Taster entprellen Kitt 15 837 24.10.2016 21:17
Letzter Beitrag: georg01
  Taster für mehrere Funktionen matthias3579 5 504 16.08.2016 16:00
Letzter Beitrag: StephanBuerger
  Mehrere Wertabfragen blebbens 5 485 18.06.2016 22:58
Letzter Beitrag: Scheams
  2 und mehrere Led´s mit Fernbedienung AN / AUS + Blinkfunktion Golffahrer 22 1.149 07.06.2016 11:31
Letzter Beitrag: hotsystems
  Mehrere Abläufe gleichteitig mit "Millis" MarkusSpielt 3 900 11.04.2016 18:23
Letzter Beitrag: MarkusSpielt
  Mehrere MCP23017 dynamisch verwenden itsy 5 731 14.02.2016 13:22
Letzter Beitrag: itsy
  I ch brauche mehrere SDA und SCL am MEGA2560 arduinofan 5 887 10.01.2016 21:15
Letzter Beitrag: arduinofan
  Mehrere Geräte über eine IR Fernbedienung Respun 20 2.310 07.01.2016 23:51
Letzter Beitrag: hotsystems

Gehe zu:


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