Autor Tema: Problema para grabar EEPROM en dsPIC30f2010  (Leído 2178 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Pepin33

  • PIC10
  • *
  • Mensajes: 13
Problema para grabar EEPROM en dsPIC30f2010
« en: 07 de Diciembre de 2011, 20:19:08 »
Estoy intentando grabar algunos datos en la EEPROM del dspic30f2010, y no sé por qué cuando reviso lo grabado, a veces ha funcionado perfectamente, otras sólo parcialmente, y otras no ha grabado nada. Supongo que algo debo estar haciendo mal.

Pongo un ejemplo del código que utilizo para realizar la grabación de los datos:

Código: [Seleccionar]
int array_datos[16];
_prog_addressT direccion=0x7FFC00;
[...]
_erase_eedata_all(); //Borra la EEPROM completa
_wait_eedata();
for (contador=0;contador<16;contador++) {
  _write_eedata_word(direccion, (int)array_datos[contador]);
  _wait_eedata();
  direccion+=2;
}
Pues bien, cuando pongo a funcionar el dsPIC, la grabación de datos es totalmente impredecible (tanto funciona como no lo hace, o sólo parcialmente). He estado buscando información sobre la grabación de datos usando las funciones del C30, pero no he encontrado nada aparte de esas funciones. ¿Alguien sabe qué es lo que estoy haciendo mal?

Por cierto. Si el valor que se quisiera guardar en la EEPROM fuera del tipo float, al ser datos de 32 bits en vez de 16, ¿cómo habría que hacerlo?


 

anything