PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Float aus EEPROM lesen



brezelmann01
25.08.2008, 20:31
Hi!
Ich habe ein Problem mit dem Rücklesen von float Werten aus dem EEPROM.

Ins EEprom reingeschrieben werden die bei mir über folgende Funktion:

void write_float( unsigned short start_adress, float value )
{
eeprom_write_block( (void*)start_adress, &value, sizeof( value ) );
}

Allerdings bekomm ich die nicht zurückgelesen. kann mir jemand da weiterhelfen? Bitte dann auch gleich den Programmaufruf. Alles so kompliziert :-s

DANKE

sternst
25.08.2008, 21:40
Du hast die Reihenfolge der Parameter vertauscht.
Richtig wäre:

// Schreiben
eeprom_write_block (&value, (void*)start_adress, sizeof(value));

// Lesen
eeprom_read_block (&value, (void*)start_adress, sizeof(value));

// oder als Funktion
float read_float ( unsigned short start_adress ) {
float value;
eeprom_read_block (&value, (void*)start_adress, sizeof(value));
return value;
}

brezelmann01
26.08.2008, 08:07
Hallo!
Klasse, hat geklappt. Ich musste zwar den Datentyp noch ändern, weils für mich snst nicht klappte, aber die Funktionen gehen wunderbar. DANKE!!!