Bueno creo que es hora de hacerle un "resumen" y de allí que pruebe otra cosa. Porque se encerro en que el PIC debe tener algo y hay que borrarle todo y que no lo esta borrando, y parece que no quiere cambiar de idea. Por lo tanto este es el resumen:
- Al borrar el micro estas haciendole el hard reset/bulk erase o como quieras llamarle, si o si tenes que borrar toda la flash, lo unico que no borras es el Device ID que cambia segun el modelo y es fijo:
000101 = PIC24FJ64GA006
000110 = PIC24FJ96GA006
000111 = PIC24FJ128GA006
001000 = PIC24FJ64GA008
001001 = PIC24FJ96GA008
001010 = PIC24FJ128GA008
001011 = PIC24FJ64GA010
001100 = PIC24FJ96GA010
001101 = PIC24FJ128GA010Pero como decis es el mismo PIC, por lo tanto no cambiaria NADA.
- Si tiene EEPROM es externa, el micro no posee, por lo tanto no hay nada que se guarde aca, que el programador omita. Pero en la version vieja con EEPROM no le afecta cambiar de version de software, por lo tanto la EEPROM externa NO influye. Ademas tambien cambiaste los ICs, y nada.
- No hay forma de proteccion de una sola parte del codigo, o es todo o es nada en este PIC.
- Asumimos que no cambian los bits de configuración, ya que tenes el programa, y podrias modificarlo para que esten "parecidos" (sin modificar la parte del oscilador).
- ¿Probaste un micro de la placa vieja en una placa nueva (con el software viejo)? Si no funciona entonces es la placa
Pero lo mas importante:
- Sigo apostando que hay alguna diferencia en la placa que no estas viendo, sino uno no cambiaria la version de la placa.
Y esto resume todo... te quedan probar tres cosas:
- Grabar y verificar, para esto necesitas que la proteccion contra lectura sea quitada. Si es correcto, ya no hay mas excusas, es la placa.
- Probar un micro de una placa vieja en una nueva (con el software que no funcionaba, es decir el viejo). No funciona: es la placa.
- Comprar un PIC24 nuevo y grabarlo con el viejo software, usando la placa nueva. No funciona: es la placa.