Jaecko
06.12.2008, 23:20
Moin.
Und mal wieder ein Problem in C:
Von einem Temperatursensor (DS1629) soll die Temperatur gelesen und angezeigt werden. Idealerweise wird dazu ein Algorithmus nach Datenblatt verwendet, der eine höhere Auflösung als die bei 9 Bit üblichen 0,5°C bietet.
Das Ergebnis muss hier natürlich als double gespeichert werden (irgend ein Integer bringt dann nicht viel).
Problem ist jetzt: Wenn ich versuche, diesen double-Wert per printf oder sprintf auszugeben, dann ist der angezeigte Wert ein Fragezeichen (?).
Also das hier
sprintf(lcdtext, "Temp: %+3.2f", DS1629_GetTempPrecise());
kopft mir in die Variable lcdtext "Temp: ?" rein.
Wo liegt hier der Fehler?
mfG
Und mal wieder ein Problem in C:
Von einem Temperatursensor (DS1629) soll die Temperatur gelesen und angezeigt werden. Idealerweise wird dazu ein Algorithmus nach Datenblatt verwendet, der eine höhere Auflösung als die bei 9 Bit üblichen 0,5°C bietet.
Das Ergebnis muss hier natürlich als double gespeichert werden (irgend ein Integer bringt dann nicht viel).
Problem ist jetzt: Wenn ich versuche, diesen double-Wert per printf oder sprintf auszugeben, dann ist der angezeigte Wert ein Fragezeichen (?).
Also das hier
sprintf(lcdtext, "Temp: %+3.2f", DS1629_GetTempPrecise());
kopft mir in die Variable lcdtext "Temp: ?" rein.
Wo liegt hier der Fehler?
mfG