Problem przeogromny choć sprawa wydaje się prosta.
Jest kilka sposobów przekonwertowania stringa na typ zmiennoprzecinkowy, np:
sscanf( string_wejściowy, "%f", &liczba );
albo funkcja:
atof()
lub
liczba = strtod( string_wejściowy , NULL );
ŻADNA Z TYCH FUNKCJI NIE DZIAŁA!!!
Przynajmniej pod Atmegą8. Wartość przetworzonego stringa sprawdzam na lcd i dla pewności robie zapytanie w if (np if (liczba=3.14) zapal_leda) ale i to nie pomaga.
Nie jestem w stanie sprawdzić faktycznie przemielnej zmiennej. Zwykle na wyświetlaczu pali się :
16937.0000000
i delikatnie oscyluje w zależności od wartości stringa wejściowego.
Czy ktoś wie jak poprawnie zamienić string (char*) na float lub doube?