Gast
#2058918
Hallo, ich möchte aus dem ADC Wert die Temeratur errechnen. Der KTY ist mit 4,7k in reihe geschaltet und ich messe am Spannungsteiler. VRef sind die internen 2,56 V Ich habe die ADC Werte per RS232 ausgegeben, funktioniert alles soweit. hier habe ich ein Beispiel gefunden: Beitrag "KTY10-7" Leider bekomme ich den code nicht komplett kompiliert. #include <avr/io.h> #include <stdio.h> #include <stdlib.h> #include <math.h> #define KTY_R25 2030.0 #define KTY_RS 4700.0 #define KTY_ALPHA 0.00788 #define KTY_BETA 0.00001937 float V_REF = 2.56; float tempHighbyte; float tempLowbyte; float vcc 5.0; float temp_calc(int adcwert) { float vAdc, temp, kt; vAdc = (adcwert * V_REF) / 1024.0; kt = (KTY_RS / (5.0 / vAdc - 1.0)) / KTY_R25; temp = pow(KTY_ALPHA, 2.0) - 4.0 * KTY_BETA + 4.0 KTY_BETA kt; temp = 2.05 + ((sqrt(temp) - KTY_ALPHA) / (2.0 * KTY_BETA)); tempHighbyte = temp; tempLowbyte = (temp - tempHighbyte) * 10; return temp; } in der Zeile bekomme ich den Fehler: temp = pow(KTY_ALPHA, 2.0) - 4.0 * KTY_BETA + 4.0 KTY_BETA kt; error: expected ';' before numeric constant wird die pow Funktion falsch aufgerufen ? Hat jemand einen Tipp für mich. viele Grüße Michael