hola gente, bueno resulta que estoy en un proyecto en el cual nesesito guardar 9 variables en mi eeprom del pic (int1 a=0,b=0,c=0,d=0,e=0,f=0,g=0,k=0,m=0,n=0;), bueno esto es lo ideal, pero no me logra resultar esto. las variables que voy a guardar solo toman valores 0 o 1.
ya que quiero que se mantengan entos datos cuando se corte la electricidad al pic, y cuando se buelva a enceder, los datos guardados aparescan, dejando el programa como estaba antes de apagarce.
lo que he echo es esto:
para lee eeprom del pic:
a=read_EEPROM(rec_eprom);
rec_eprom++;
b=read_EEPROM(rec_eprom);
rec_eprom++;
c=read_EEPROM(rec_eprom);
rec_eprom++;
d=read_EEPROM(rec_eprom);
rec_eprom++;
e=read_EEPROM(rec_eprom);
rec_eprom++;
f=read_EEPROM(rec_eprom);
rec_eprom++;
g=read_EEPROM(rec_eprom);
rec_eprom++;
k=read_EEPROM(rec_eprom);
rec_eprom++;
m=read_EEPROM(rec_eprom);
rec_eprom++;
n=read_EEPROM(rec_eprom);
y para guardar las variables:
write_eeprom(recorrido_eeprom,a);
recorrido_eeprom++;
write_eeprom(recorrido_eeprom,b);
recorrido_eeprom++;
write_eeprom(recorrido_eeprom,c);
recorrido_eeprom++;
write_eeprom(recorrido_eeprom,d);
recorrido_eeprom++;
write_eeprom(recorrido_eeprom,e);
recorrido_eeprom++;
write_eeprom(recorrido_eeprom,f);
recorrido_eeprom++;
write_eeprom(recorrido_eeprom,g);
recorrido_eeprom++;
write_eeprom(recorrido_eeprom,k);
recorrido_eeprom++;
write_eeprom(recorrido_eeprom,m);
recorrido_eeprom++;
write_eeprom(recorrido_eeprom,n);
pero el compilador me da error al poner esto, pero si pongo menos por ejemplo, unos 4 datos a guardar nada mas, me va bien.
por otro lado las datos que quiero guardar lo quiero dejar dentro de una funcion, por ejemplo asi:
void guardar_datos_eeprom(void){
write_eeprom(recorrido_eeprom,a);
recorrido_eeprom++;
write_eeprom(recorrido_eeprom,b);
recorrido_eeprom++;
write_eeprom(recorrido_eeprom,c);
recorrido_eeprom++;
write_eeprom(recorrido_eeprom,d);
recorrido_eeprom++;
write_eeprom(recorrido_eeprom,e);
recorrido_eeprom++;
write_eeprom(recorrido_eeprom,f);
recorrido_eeprom++;
write_eeprom(recorrido_eeprom,g);
recorrido_eeprom++;
write_eeprom(recorrido_eeprom,k);
recorrido_eeprom++;
write_eeprom(recorrido_eeprom,m);
recorrido_eeprom++;
write_eeprom(recorrido_eeprom,n);
//a=0,b=0,c=0,d=0,e=0,f=0,g=0,k=0,m=0,n=0;
}
se puede esto ??
y bueno para lee estos datos lo voy a hacer al principio de mi programa.
ahora, son muchos datos que tengo que guardar en la eeprom interna del pic,??? tendre que usar una eeprom externa ???
saludos y espero que me puedan ayudar en esto