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
MultibleDigital Input
13.01.2016, 00:22
Beitrag #9
RE: MultibleDigital Input
(12.01.2016 19:50)hotsystems schrieb:  Das mit dem Sketch sieht jetzt gut aus.

Deinen Sketch kannst du auch für die Erweiterung mit den Variablen nutzen.

Das mit den Tastern ist schon richtig, funktioniert aber nur, wenn die Tasten gleichzeitig gedrückt werden müssen.
Sobald die Tasten nacheinander gedrückt werden geht es schief, da du ja mal 2 oder 3 drücken möchtest und das weiß der Code ja nicht.

Du kannst deinen Sketch auch optimieren, wenn du die "if-Abfragen" zusammenfügst.

Z.B.
Code:
if (sensor1 == HIGH ||  sensor2 == HIGH || sensor3 == HIGH) {
    digitalWrite(13, LOW);
  } else {
    digitalWrite(13, HIGH);
  }

Okay, vielen Dank schonmal für deine Hilfe !!

und das mit dem nacheinander drücken funktioniert mit Variablen, wenn ich das richtig verstanden habe oder ?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
13.01.2016, 09:47
Beitrag #10
RE: MultibleDigital Input
(13.01.2016 00:22)Nieda schrieb:  Okay, vielen Dank schonmal für deine Hilfe !!
und das mit dem nacheinander drücken funktioniert mit Variablen, wenn ich das richtig verstanden habe oder ?
Ja, den Zustand des Tasters speicherst du in einer Variablen.
Wie hier z.B.:
Code:
int sensor1Val = 0;
int sensor2Val = 0;
int sensor3Val = 0;

void setup() {
}

void loop() {
  int sensor1 = digitalRead(2);
  int sensor2 = digitalRead(3);
  int sensor3 = digitalRead(4);

  if (sensor1 == HIGH) {
    sensor1Val = 1;
  }

  if (sensor1 == HIGH) {
    sensor2Val = 1;
  }

  if (sensor1 == HIGH) {
    sensor3Val = 1;
  }

  if (sensor1Val == 1 &&  sensor2Val == 1 && sensor3Val == 1) {
    digitalWrite(13, LOW);
  } else {
    digitalWrite(13, HIGH);
  }
}

Beachte bitte, dies ist nur ein Beispiel.
Auch hier kann sicher noch einiges optimiert werden.

Was fehlt, ist die Auslösung, wenn nur 2 Tasten gedrückt werden sowie eine Rücksetzung der Variablen nach der Auslösung der drei Tasten. Dann müssen die ja irgendwie auf "0" gesetzt werden.

Das kann automatisiert, beispielsweise am Ende der "if-Abfrage" der Variablen oder durch eine weitere Taste erfolgen.

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
13.01.2016, 16:56
Beitrag #11
RE: MultibleDigital Input
(13.01.2016 09:47)hotsystems schrieb:  
(13.01.2016 00:22)Nieda schrieb:  Okay, vielen Dank schonmal für deine Hilfe !!
und das mit dem nacheinander drücken funktioniert mit Variablen, wenn ich das richtig verstanden habe oder ?
Ja, den Zustand des Tasters speicherst du in einer Variablen.
Wie hier z.B.:
Code:
int sensor1Val = 0;
int sensor2Val = 0;
int sensor3Val = 0;

void setup() {
}

void loop() {
  int sensor1 = digitalRead(2);
  int sensor2 = digitalRead(3);
  int sensor3 = digitalRead(4);

  if (sensor1 == HIGH) {
    sensor1Val = 1;
  }

  if (sensor1 == HIGH) {
    sensor2Val = 1;
  }

  if (sensor1 == HIGH) {
    sensor3Val = 1;
  }

  if (sensor1Val == 1 &&  sensor2Val == 1 && sensor3Val == 1) {
    digitalWrite(13, LOW);
  } else {
    digitalWrite(13, HIGH);
  }
}

Beachte bitte, dies ist nur ein Beispiel.
Auch hier kann sicher noch einiges optimiert werden.

Was fehlt, ist die Auslösung, wenn nur 2 Tasten gedrückt werden sowie eine Rücksetzung der Variablen nach der Auslösung der drei Tasten. Dann müssen die ja irgendwie auf "0" gesetzt werden.

Das kann automatisiert, beispielsweise am Ende der "if-Abfrage" der Variablen oder durch eine weitere Taste erfolgen.



Unser Programm funktioniert jetzt ! Vielen Dank nochmal Smile
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
13.01.2016, 17:05
Beitrag #12
RE: MultibleDigital Input
Prima, das freut mich.
Wäre gut, wenn du es für alle hier posten könntest.

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Altes Handy als Arduino Input evil76 2 2.486 17.07.2014 21:18
Letzter Beitrag: evil76

Gehe zu:


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