Hallo Geaorg,
Wo hast du dich dann da verrannt ???
Also nur so als Idee, ohne Fehlerschutz und nicht wirklich getestet:
Code:
unsigned char i = 0;
while ( r < t_kt81_110[i] )
{
++i;
}
// Hier muss noch getestet werden ob der Fund innerhalb der Tabelle war, bzw. ob die Temperatur < -55°C ist
// read the best matching lines
memcpy_P(&tmp, &t_kt81_110[i-1], sizeof(sensorvalues_flash)); t1 = tmp;
memcpy_P(&tmp, &t_kt81_110[i-2], sizeof(sensorvalues_flash)); t2 = tmp;
// interpolate
float dr = t2.r-t1.r;
float f = (r-t1.r)/dr;
return t1.t+(t2.t-t1.t)*f;
MfG Peter(TOO)
Lesezeichen