Usas ccs?? Si lo usas hay una libreria que te perimte hecar esto, se llama internal_eeprom.h. Con la funcion que pones tu podras almacenar variables solo de ocho bits. Prueba con esta libreria y nos cuentas.
void write_float_eeprom(address, float data) ////
//// Call to write a floating point number ////
//// ////
//// float read_float_eeprom(address) ////
//// Call to read a floating point number
Salu2