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.printeln, Stellen verschwinden
26.05.2016, 21:44
Beitrag #1
Serial.printeln, Stellen verschwinden
Bei folgendem Befehl
Code:
Serial.println(123.456678);
, kommt folgende Ausgabe:
Code:
123.46
Wieso wird da gerundet ?
Kann man dies unterbinden ?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
26.05.2016, 22:01
Beitrag #2
RE: Serial.printeln, Stellen verschwinden
(26.05.2016 21:44)Mathias schrieb:  Bei folgendem Befehl
Code:
Serial.println(123.456678);
, kommt folgende Ausgabe:
Code:
123.46
Wieso wird da gerundet ?
Kann man dies unterbinden ?

...das ist so definiert...schau mal bei arduino.cc vorbei...der Mutter von Arduino..
lgbk

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
26.05.2016, 22:01
Beitrag #3
RE: Serial.printeln, Stellen verschwinden
(26.05.2016 21:44)Mathias schrieb:  Wieso wird da gerundet ?
Kann man dies unterbinden ?

Du must

Code:
Serial.println(123.456678, DEC);
eingeben.

Hier nachzulesen: SerialPrint

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
26.05.2016, 23:02 (Dieser Beitrag wurde zuletzt bearbeitet: 26.05.2016 23:04 von Bitklopfer.)
Beitrag #4
RE: Serial.printeln, Stellen verschwinden
(26.05.2016 22:01)hotsystems schrieb:  Serial.println(123.456678,6);
Serial.println(123.456678,DEC);

Code:
Serial.println(123.456678, DEC);
eingeben.

Hier nachzulesen: SerialPrint

..also so ganz passt das auch nicht... ich schreibs mal als Text..

bei:
Serial.println(123.456678,6);
wird 123.456680 ausgegeben....hier wird anscheinen auf die 5.Stelle gerundet.

bei:
Serial.println(123.456678,DEC);
wird 123.4566802978 ausgegeben... wo das ...2978 herkommt wissen die Götter.

hier der Test-Sketch:
Code:
void setup() {
Serial.begin(9600);
}

void loop() {
  Serial.println(123.456678,6);
  Serial.println(123.456678,DEC);
  delay(1000);
}

lgbk

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
26.05.2016, 23:25
Beitrag #5
RE: Serial.printeln, Stellen verschwinden
Dann rechnet da wohl wer falsch. Wink
Compilerproblem?

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
26.05.2016, 23:44 (Dieser Beitrag wurde zuletzt bearbeitet: 26.05.2016 23:49 von Bitklopfer.)
Beitrag #6
RE: Serial.printeln, Stellen verschwinden
...wo das letztendlich herkommt weis ich auch nicht...aber hier wird float erklärt...
...und da heißt es das es eben nur 6..7 Dezimalstellen gibt. d.h. je nachdem wieviele Stellen der Ganzzahlige Teil hat gibt es eben den Rest als Nachkommastellen..
Und den Wertebereich sollte man auch nicht überschreiten.
lgbk

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
27.05.2016, 17:44 (Dieser Beitrag wurde zuletzt bearbeitet: 27.05.2016 17:45 von Mathias.)
Beitrag #7
RE: Serial.printeln, Stellen verschwinden
Danke, bin jetzt ein bisschen schlauer geworden.

Wen ich
Code:
String s = String(n, DEC);
kommt es übrigens gleich.

Aber das mit
Code:
Serial.println(123.456678, 6);
habe ich verstanden.

Was ich aber noch festgestellt habe, wen ich 1.234E20 schreibe, hat der Arduino auch Probleme.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Serial Output Buffer abfragen BennIY 5 134 05.01.2017 18:51
Letzter Beitrag: Tommy56
  Korrekte serial.print Befehlszeile Franz54 16 612 22.12.2016 18:37
Letzter Beitrag: renid55
  Arduino IDE Serial Plotter futsch? SensorX10 2 216 13.12.2016 13:42
Letzter Beitrag: SensorX10
  Ausgabe Serial Monitor zu viele Byt`s Hannes 0 180 12.11.2016 20:29
Letzter Beitrag: Hannes
  Speicher sparen bei serial.print?? DL1AKP 3 280 02.09.2016 13:32
Letzter Beitrag: hotsystems
  Serial Monitor ASCII 1 schreiben BennIY 11 698 01.08.2016 16:42
Letzter Beitrag: Mathias
  Serial.write Mathias 6 511 29.07.2016 17:06
Letzter Beitrag: Mathias
  Serial Monitor Rudi 5 768 02.06.2016 11:37
Letzter Beitrag: Bitklopfer
  Kommunikation Serial Monitor --> Arduino BennIY 7 456 24.05.2016 07:48
Letzter Beitrag: hotsystems
  Serial Monitor Eingabe über Code Maxi290997 4 614 12.05.2016 18:57
Letzter Beitrag: SkobyMobil

Gehe zu:


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