Gast
#4278703
Hallo zusammen,
ich würde gerne über die serielle Schnittstelle Kommazahlkonstanten in
den EEprom meines Atmega schreiben. Mit int-Variablen funktioniert das
alles sehr gut, nur wenn ich es auf float-Variable ändere, wird der Wert
gleich 0, sobald ich in der switch-Abfrage etwas reinschreiben will.
Als Befehl im Terminalprogramm gebe ich z.Bsp. "0 17.59" ein.
Was mache ich da falsch ?
float eeWertA EEMEM = 17.59;
float eeWertB EEMEM = -0.293;
float eeWertC EEMEM = 648.8;
float eeWertD EEMEM = -1.94;
float Wert;
uart_gets(Buffer, 20); // Auf eine Zeile vom Benutzer warten
switch (Buffer[0] - '0')
{
case (0): //Wert A
Wert = atof( &Buffer[10] );
eeprom_write_float (&eeWertA, Wert);
break;
case (1): //Wert B
Wert = atof( &Buffer[10] );
eeprom_write_float (&eeWertB, Wert);
break;
}