Gast
#346097
Hi,
Ich würde gern für nen SHT75 die Taupunkberechnung durchführen. Dazu
hab ich folgende Funktion geschrieben:
signed long int sht_calcdewpoint(int temp, int humi){
signed long int temp1=(10000*(log10(humi)-2)-2*10000) / 4343 * 100;
signed long int temp2=1762*temp/(24312+temp);
signed long int H100=temp1+temp2;
signed long int Dp=24312*H100/(1762-H100);
return Dp;
}
Die Parameter temp und humi kommen bereits multiplizert mit 100 rein.
Z.B. Temperatur 2500 (25,00) und Humi 1000 (10,00). Raus kommen muss
-877, also -8,77 Grad.
Leider bekomme ich bei der Multiplikation zur Berechnung von temp2
immer 0 als Ergebnis. (real und in der simulation, ich vermute einen
Überlauf bei der Multiplikation)
Ich steh grad etwas aufm Schlauch, wie ich diese Berechnung mit
Fixkommarithmetik machen kann.
Hat jemand ne Idee wie man das irgendwie geschickter machen kann?
Gruß und Danke,
Andreas