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
Ausgabe auf Serial Monitor
30.12.2020, 17:32
Beitrag #1
Ausgabe auf Serial Monitor
Hallo zusammen,
wie kann ich verhindern, dass das was auf dem Serial Monitor ausgegeben wird „endlos durchrauscht“.
Ich hätte gern das bei jeder Aktion nur eine Zeile geschrieben und dann auf die nächste Aktion gewartet wird.
Habe schon vieles versucht, aber ohne Erfolg.
Über eine Lösung wäre ich sehr dankbar.
Hänge mal einen Beispiel Sketch an.

MfG
Hans

Code:
int led1 = 12;
int led2 = 11;
int button1 = 8;
int button2 = 9;
int buttonStatus1;
int buttonStatus2;
                                            
void setup(){

  Serial.begin(9600);

  pinMode(led1, OUTPUT);
  pinMode(led2, OUTPUT);

  pinMode(button1, INPUT);
  digitalWrite(button1, HIGH);
  pinMode(button2, INPUT);
  digitalWrite(button2, HIGH);
}

void loop () {

  buttonStatus1 = digitalRead(button1);
if(buttonStatus1 == LOW){
   digitalWrite(led1, HIGH);
   Serial.println("LED1 ist an");
  }else{
   digitalWrite(led1, LOW);}
   Serial.println("LED1 ist aus");

   buttonStatus2 = digitalRead(button2);
if(buttonStatus2 == LOW){
   digitalWrite(led2, HIGH);
   Serial.println("LED2 ist an");
  }else{
   digitalWrite(led2, LOW);}
   Serial.println("LED2 ist aus");
}
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
30.12.2020, 17:54 (Dieser Beitrag wurde zuletzt bearbeitet: 30.12.2020 17:57 von MicroBahner.)
Beitrag #2
RE: Ausgabe auf Serial Monitor
Du darfst den Text eben nur ausgeben, wenn sich der Zusatnd der LED ändert. Dazu fragst Du vor dem Umschalten ab, ob der Zustand noch nicht richtig ist, und nur dann gibst Du den Text aus. Etwa so (ungetestet):
Code:
//
  if (buttonStatus1 == LOW) {
    if ( digitalRead(led1) == LOW ) Serial.println("LED1 ist an");
    digitalWrite(led1, HIGH);
  } else {
    if ( digitalRead(led1) == HIGH ) Serial.println("LED1 ist aus");
    digitalWrite(led1, LOW);
  }

Gruß, Franz-Peter
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
30.12.2020, 18:15
Beitrag #3
RE: Ausgabe auf Serial Monitor
Weiterhin noch die Frage, hast du an deinen Tastern Pullup-Widerstände angebaut ?
Ohne die könntest du Störungen haben, die dein System durcheinander bringt.

Entweder verwendest du externe Pullup-Widerstände direkt an den Tastern, oder interne im Sketch.
Beispiel:
Code:
pinMode (Button1, INPUT_PULLUP);

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
30.12.2020, 18:58
Beitrag #4
RE: Ausgabe auf Serial Monitor
Danke, werde ich mir anschauen.

Z.Z. kann ich nicht testen.


MfG
Hans
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
30.12.2020, 22:45
Beitrag #5
RE: Ausgabe auf Serial Monitor
OK,
wäre gut, wenn du uns über das Ergebnis informierst.

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
31.12.2020, 14:11
Beitrag #6
RE: Ausgabe auf Serial Monitor
(30.12.2020 17:54)MicroBahner schrieb:  Du darfst den Text eben nur ausgeben, wenn sich der Zusatnd der LED ändert. Dazu fragst Du vor dem Umschalten ab, ob der Zustand noch nicht richtig ist, und nur dann gibst Du den Text aus. Etwa so (ungetestet):

Danke, hat geklappt.

Was mich ein wenig irritiert ist, warum hinter der if-Zeile keine geschweifte Klammer steht.
Ich dachte es muss immer eine hinter der Zeile sein.
Muss ich mir noch mal anschauen.


MfG
Achim
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
31.12.2020, 14:13
Beitrag #7
RE: Ausgabe auf Serial Monitor
Nach if wird nur die nächste Anweisung ausgeführt. Wenn Du mehrere willst, dann musst Du die mit {} quasi zu einer zusammenbündeln.

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
31.12.2020, 14:35
Beitrag #8
RE: Ausgabe auf Serial Monitor
(31.12.2020 14:13)Tommy56 schrieb:  Nach if wird nur die nächste Anweisung ausgeführt. Wenn Du mehrere willst, dann musst Du die mit {} quasi zu einer zusammenbündeln.

Danke Tommy, werde ich bei meinen Tests mal einbauen.


MfG
Hans
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
Question Serial.print - Einfluss auf Code Natsnok 4 235 17.01.2021 16:48
Letzter Beitrag: Natsnok
  Ausgabe Binärzahlen Karl Stanger 1 199 09.01.2021 12:24
Letzter Beitrag: Tommy56
  Arrays und Serial Arduino DMX Master 38 965 22.12.2020 23:40
Letzter Beitrag: Arduino DMX Master
  zweiten Wert über Serial einlesen vlakvark 7 357 14.12.2020 21:06
Letzter Beitrag: Tommy56
  Ausgabe von formatierten Float-Werten auf LCD Herby007 7 388 10.12.2020 21:47
Letzter Beitrag: Tommy56
  Seriellen Monitor: Batch – Funktionalität Rainer2 3 398 14.10.2020 14:06
Letzter Beitrag: Tommy56
  Flag Übergabe Fehlerhaft bei Serial Kommunikation Tobias1886 5 719 26.08.2020 17:04
Letzter Beitrag: Tobias1886
  Ramps 1.4 mit #Accel Stepper Steuerung per Serial Monitor Arduino DMX Master 14 1.643 12.08.2020 15:26
Letzter Beitrag: Arduino DMX Master
  Serial.Print in Funktionen und Prozeduren Jonny 4 731 14.06.2020 15:52
Letzter Beitrag: Jonny
  Arduino DMX wert mit serial port auslesen Arduino DMX Master 2 1.042 10.06.2020 16:27
Letzter Beitrag: Chopp

Gehe zu:


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