voy a poner parte del codigo haber si hago algo mal...
long int LAST_VOLUME=0;
long int codigo1=9753;
long int codigo2=2580;
long int codigo3=4268;
long int codig1,codig2,codig3;
write_eeprom(LAST_VOLUME,codigo1); //escritura de los mensajes...
LAST_VOLUME++;
write_eeprom(LAST_VOLUME,codigo2);
LAST_VOLUME++;
write_eeprom(LAST_VOLUME,codigo3);
Envia(CMD,CLR);
codig1= read_EEPROM (LAST_VOLUME); //almacena mensaje de la direccion eeprom
printf(lcd_putc,"codigo 1 = %lu",codig1) ;
delay_ms(1500);
y obtengo un 172 en vez del 9753