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
BME 280 float -> string problem
25.02.2020, 22:37
Beitrag #9
RE: BME 280 float -> string problem
Moin!

Hinweis angenommen. Habe ich berichtigt.

Da scheint es irgendwie mit der Speicherzuordung nicht zu klappen.

Aber es ist nun klar was ich gestern meinte?

73 de Bernd
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
25.02.2020, 22:39
Beitrag #10
RE: BME 280 float -> string problem
Ja, eine der anderen Umwandlungen (hier Druck) schreibt über die eigenen Arraygrenzen hinaus und zerstört die Feuchte-Ausgabe.
Mein Fehler, ich habe nie das Gesamtprogramm getestet.

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
27.02.2020, 19:27
Beitrag #11
RE: BME 280 float -> string problem
Hallo Bernd, hallo Tommy,

danke, danke, danke.
Ich hab´s fürs erste hinbekommen:

Char muss man offenbar eine Stelle länger machen als man die Länge bei dtostrf definiert. Also:

char pressureString[8];
und dann
dtostrf(p, 7, 2, pressureString);

Das Array ist dann 8 Stellen lang, für den eigentlichen Wert sind aber nur 7 Stellen Platz, danach terminiert ein Zeichen (welches, habe ich vergessen) die Zahlenfolge.
Bei dtostrf habe ich dann incl. Dezimalpunkt 7 Stellen, zwei davon hinter dem Komma.
Für ein evt. Minus vor der Zahl habe ich eine weitere Stelle reserviert. Scheint zu gehen. Habe auch sklavisch die Abfolge eingehalten: in der Reihenfolge, in der ich die char definiert habe, habe ich die floats auch umgewandelt...

Wie ich die Zahlen jetzt runden könnte (also z.B. Nachkommastellen unterdrücken) ohne die Arrays zu zerschiessen, ist mir noch nicht so ganz klar. Wisst Ihr das genau? Wäre es evt. einfacher, die Floatzahl zu runden? (habe aber auch keine Ahnnung, wie das geht...)

Kann gerne nochmal den ganzen Code schicken, langweilt Euch aber vielleicht... :-)

Super Hilfe hier im Forum!

Gruß,

Stephan
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
27.02.2020, 19:32
Beitrag #12
RE: BME 280 float -> string problem
Du solltest Dich mal etwas näher mit Zeichenketten beschäftigen.
Ich habe dazu einige Infos aufgeschrieben.

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
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Esp32 FIFO-Problem miq19 7 557 22.08.2020 14:33
Letzter Beitrag: miq19
  float -> char Umwandlung Problem ESP8266 und BME 280 drstewa 2 1.027 24.02.2020 23:08
Letzter Beitrag: Bitklopfer
  MQTT / RSL problem am Wemos D1 Mini myreal84 7 1.352 19.01.2020 13:42
Letzter Beitrag: Fips
  Wie weise ich einen String aus einer Datei zu? Pfeilebastler 4 881 30.12.2019 19:57
Letzter Beitrag: Fips
  esp32 Float in EEPROM schreiben lesen wwilhelm 8 2.423 02.12.2019 11:13
Letzter Beitrag: wwilhelm
Question ESP32 Webserver Problem opitzh 31 4.628 28.11.2019 16:27
Letzter Beitrag: Tommy56
  Flash-Problem ESP32 Jonny 3 1.673 25.09.2019 18:56
Letzter Beitrag: Tommy56
  Wemos D1 mini - MQTT Problem PetA90 6 2.296 13.07.2019 21:40
Letzter Beitrag: PetA90
  Interrupt Problem Gandalf 6 2.004 12.05.2019 14:59
Letzter Beitrag: Tommy56
  Problem mit Login bei ESP8266 mit ESP-Easy Koenig 2 1.495 05.05.2019 20:11
Letzter Beitrag: Tommy56

Gehe zu:


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