Loading...
Pages: [1]   Go Down
Author Topic: Nachkommastellen bei float  (Read 404 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Sr. Member
****
Karma: 1
Posts: 294
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hi,
jetzt komm ich mal wieder nicht weiter. Vllt. steh ich ja auch auf dem Schlauch.  smiley
Ich lese mit der DallasTemperature-Lib einige 1820er aus.
Code:
...
   float TempFloat[7];
   TempFloat[1] = sensors.getTempC(Sensor1);
   Serial.println (TempFloat[1]);
...

Ich sehe dann Werte wie "22.50" im Serial Monitor. Auf dem LCD ist es genauso.
Wieso wird die Float auf genau 2 Nachkommastellen ausgegeben? Woher hat das Programm die Informationen? Er könnte ja auch "22.500" schreiben.
Warum frage ich das:
Zum einen, weils mich interessiert.  smiley-razz
Zum anderen, weil ich die zweite Nachkommastelle als überflüssig sehe. Wenn ich mit 9 Bit Auflösung einlese, dann hab ich eh nur 0,5° Schritte.
Und da reicht mir dann eine Nachkommastelle. Kann ich das meiner float beibringen, daß die nur "22,5" speichert? Und dann bei der Ausgabe ohne SPRINTF o.ä. den Wert ausgibt?

gruß/hk007







Logged

Arduino 1.0.1|Arduino UNO & MEGA

Forum Moderator
BZ (I)
Offline Offline
Brattain Member
*****
Karma: 162
Posts: 15712
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

http://arduino.cc/en/Serial/Print

also einfach:
Serial.println (TempFloat[1],1);

Default sind 2 Nachkommastellen, man kann aber angeben wieviel man will.
Grüße Uwe
Logged

Offline Offline
Sr. Member
****
Karma: 1
Posts: 294
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ja genau, das ist die Lösung. Und so einfach. Und ich hab noch nie davon gehört. [SCHÄM]
Und v.a.: Funktioniert auch mit LCD-Ausgabe und auch mit client.print für den Webserver.

Danke dir!!
Logged

Arduino 1.0.1|Arduino UNO & MEGA

Forum Moderator
BZ (I)
Offline Offline
Brattain Member
*****
Karma: 162
Posts: 15712
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bitte.
Müßte überall funktionieren wo xx.print steht.
Uwe
 
Logged

Pages: [1]   Go Up
Print
 
Jump to: