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
Serial.println
05.01.2016, 11:24
Beitrag #1
Serial.println
Moin moin zusammen,

Wie kann ich es machen dass die Serial.println Auftrag nur 1 mal wird ausgeführt.

Code:
if (digitalRead(abschalt) == 1) // jenachdem wie geschaltet wird (0=LOW, 1=HIGH)
{      
    digitalWrite(alarm, LOW);
   Serial.println ("Alarm reset");// Alarm aus
   delay(3000);
    previousMillis = 0;
  }

  schwimmerState = digitalRead(schwimmer);
  if (schwimmerState == HIGH)
{digitalWrite(pumpe, HIGH);
    PumpeAn = 1;
    Serial.println ("Reset nich möchlich");
    hochwasser();
}
else
{
   digitalWrite(alarm, LOW);
   Serial.println ("System Ok");// Alarm aus
  }
}

Ich bekomme jetzt unendliche "System Ok" und es soll nur bei eine ändere der Status wieder etwas anzeigen.

Bitte um Hilfe. Blush

Danke

Mit freundliche grüßen
Andreas
--
Es tut mir Leid dass ich nicht immer oder direkt ihre Antwort verstehe, durch Konzentration Probleme ist es für mich leichter zu lehren durch "Learning by seeing" bitte um Verständnis.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
05.01.2016, 12:03
Beitrag #2
RE: Serial.println
Hallo,
ich würde dazu eine Variable nutzen, die nach dem Serial.println() wieder resetet wird. Du hast ja da bereits eine: PumpeAn = 1;
Wann setzt du diese denn auf PumpeAn = 0 ?

Gruß
Torsten
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
05.01.2016, 13:30
Beitrag #3
RE: Serial.println
Code:
else
{
   digitalWrite(alarm, LOW);
   Serial.println ("System Ok");// Alarm aus
  PumpeAn = 0;
  }

Diesen Option hat ich schon versucht aber dass funktioniert nicht.

Mit freundliche grüßen
Andreas
--
Es tut mir Leid dass ich nicht immer oder direkt ihre Antwort verstehe, durch Konzentration Probleme ist es für mich leichter zu lehren durch "Learning by seeing" bitte um Verständnis.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
05.01.2016, 13:41
Beitrag #4
RE: Serial.println
(05.01.2016 13:30)Atwist schrieb:  
Code:
else
{
   digitalWrite(alarm, LOW);
   Serial.println ("System Ok");// Alarm aus
  PumpeAn = 0;
  }

Diesen Option hat ich schon versucht aber dass funktioniert nicht.

Das Setzen der Variable ist schon mal korrekt so. Jetzt muss du halt nur noch dafür sorgen, dass das Serial.println() nur bei einem "PumpeAn = 1" ausgeführt wird Wink

Gruß
Torsten
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
05.01.2016, 14:27
Beitrag #5
RE: Serial.println
Hallo Torsten,

Zitat:Jetzt muss du halt nur noch dafür sorgen, dass das Serial.println() nur bei einem "PumpeAn = 1" ausgeführt wird

Dass verstehe ich nicht "System Ok" soll kommen wenn die pumpe aus (=0) ist oder mach ich jetzt einen denk Fehler???

Mit freundliche grüßen
Andreas
--
Es tut mir Leid dass ich nicht immer oder direkt ihre Antwort verstehe, durch Konzentration Probleme ist es für mich leichter zu lehren durch "Learning by seeing" bitte um Verständnis.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
05.01.2016, 14:43
Beitrag #6
RE: Serial.println
(05.01.2016 14:27)Atwist schrieb:  ...Dass verstehe ich nicht "System Ok" soll kommen wenn die pumpe aus (=0) ist oder mach ich jetzt einen denk Fehler???

Im else-Zweig schaltest du ja die Pumpe aus (=0). Wenn der SchwimmerState nicht HIGH ist, verzweigst du ja immer in die else. Demnach wird ja Serial.println() solange ausgeführt, bis der SchwimmerState == HIGH ist (und demnach ja auch die Pumpe wieder =1 ist).

Also soll doch in der else die Anweisung Serial.println() nur ausgeführt werden, bevor die Pumpe ausgeschaltet wird...

Ich gestehe, ist ein wenig kompliziert/unverständlich ausgedrückt. Aber dir fehlt halt nur noch eine if-Abfrage in der else...Cool

Versuch mal....
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
06.01.2016, 07:55 (Dieser Beitrag wurde zuletzt bearbeitet: 06.01.2016 07:55 von Atwist.)
Beitrag #7
RE: Serial.println
Hallo Thorsten.

Ich weiß nicht besser dann das man nicht einen if in einen else machen kann, darum verstehe ich es immer noch nicht.

Hab die Letzt Jahre dass Problem dass mir dass konzentrieren schwer Feld und dass ich die C Sprache nicht beherrsche Blush

Aber mit "Learning by seeing" komm ich für mein Gefühl sehr weit.

Mit freundliche grüßen
Andreas
--
Es tut mir Leid dass ich nicht immer oder direkt ihre Antwort verstehe, durch Konzentration Probleme ist es für mich leichter zu lehren durch "Learning by seeing" bitte um Verständnis.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
06.01.2016, 09:44
Beitrag #8
RE: Serial.println
Hallo Andreas,

(06.01.2016 07:55)Atwist schrieb:  Ich weiß nicht besser dann das man nicht einen if in einen else machen kann,...

Man kann durchaus eine if-Abfrage in einer vorherigen if-Abfrage einbinden. Nennt sich m.M. nach "verschachtelte Abfrage".

Also, was ich dir damit sagen will ist, dass man den Status einer Variablen auch in einem else-Zweig abfragen kann. In deinem Fall würde es dann so aussehen:

Code:
else
{
   digitalWrite(alarm, LOW);
        if (PumpeAn == 1)
          {  
             Serial.println ("System Ok");// Alarm aus
          }
  PumpeAn = 0;
  }

Demnach wird das Serial-println() nur ausgeführt, wenn die Pumpe im eingeschalteten Modus ausgeschaltet werden soll.

Viele Grüße
Torsten
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Wartet Serial.begin() auf COM-Port? tollewurst 4 435 19.08.2017 09:50
Letzter Beitrag: rkuehle
  Serial.write fraju 5 833 23.07.2017 21:57
Letzter Beitrag: Mathias
  Array mit Serial.read befüllen Gonmaus 4 517 01.05.2017 09:13
Letzter Beitrag: Gonmaus
  serial monitor, Ausgabe übereinander möglich?? silversurfer123 4 365 18.04.2017 19:19
Letzter Beitrag: silversurfer123
  Interrupt und Software Serial BennIY 6 626 29.03.2017 22:25
Letzter Beitrag: BennIY
  RGB Animation über Serial Steuern Medolino 5 668 20.02.2017 16:14
Letzter Beitrag: Medolino
  Serial Output Buffer abfragen BennIY 5 563 05.01.2017 18:51
Letzter Beitrag: Tommy56
  Korrekte serial.print Befehlszeile Franz54 16 1.454 22.12.2016 18:37
Letzter Beitrag: renid55
  Arduino IDE Serial Plotter futsch? SensorX10 2 691 13.12.2016 13:42
Letzter Beitrag: SensorX10
  Ausgabe Serial Monitor zu viele Byt`s Hannes 0 440 12.11.2016 20:29
Letzter Beitrag: Hannes

Gehe zu:


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