PIC con problema de identidad

#1
Buenas tardes estimados!

Tenia un circuito funcionando bien con 16F877A hace un buen tiempo. Hace unos días cayó un rayo y el circuito dejo de funcionar, saque la plaqueta y la revisé bien y no encontré nada (las pistas, reguladores, capacitores etc funcionan bien).

Pensando que había un problema con el programa, lo conecté a mi pickit para verificar el código con el HEX original pero increíblemente ¡¡el pickit me lo detecta como un 16F876A!! :eek:o_O

Mas de una vez quemé PICs o conecté mal las lineas al pickit y siempre el programador me tiraba Device Unknown, pero nunca había visto o escuchado algo así.

Para los que no los tienen en mente les comento que los dos pertenecen a la familia 16F87XA, pero el 6 es de 28 pines, y el 7 es de 40.

¿Alguien sabe como puede ser que esto suceda? ¿Existe alguna manera de reprogramar la zona de "identidad" del PIC y restablecerlo a como estaba antes? :unsure:

Desde ya muchas gracias por su auyuda.

Saludos!
 
#2
Pues ni idea pero se puede haber corrompido la flash, la EEPROM y probablemente algo más.
¿Has intentado flasheado o leer el programa?
 
#4
No recuerdo haber leído ningún hoja de datos de microcontroladores en que se diga qué zona de datos alberga esa firma o que se pueda modificar. No digo que no exista, pero por ejemplo, estoy viendo el del PIC16F87XA y no lo encuentro por ningún lado.

Es posible que una parte del micro haya dejado de funcionar y el programador no detecte que es de 40 pines, y por eso deduce que es otro distinto.
 
#6
Nunca me imagine a un microcontrolador transgénero bueno el 17 de mayo es día de los LGBTI adjuntando a los microcontroladores.

Bueno a lo mejor se dañó el programa que hace función de BIOS.

Me toco saber de los 18f4550 que con un grabador y una laptop descargada se daña el puerto USB o se borraba el bootloader.
A mí me tocó que se dañó el puerto USB pero fuera de eso todo funcionaba perfectamente.
 
#7
Estimados, muchísimas gracias por su respuesta.

Repasé las lineas PGC, PGD y MCLR. Esta todo bien conectado, la lectura o identificación del micro no falla nunca, lo detecta a la primera como 16F876A... Tengo otra plaqueta igual (la aplicación requirió de 5 plaquetas idénticas) y en la otra detecta el micro correcto (16F877A) también al instante.

Lo mas triste es que hice la verificación entre el HEX original y el que esta grabado en el micro "dañado" y me da OK. O sea que el programa no se corrompió.

Borré la memoria de programa y EEPROM, pero sigue apareciendo como 16F876A, este "cabezal de datos" aparece apenas el pickit detecta el dispositivo, antes de hacer cualquier lectura o edicion de los espacios de memoria accesibles al usuario.

Si la falla modificó ese espacio, debería existir algún método para reprogramarlo. ¿O no? :unsure:

Saludos!
 
#8
Si la falla modificó ese espacio, debería existir algún método para reprogramarlo. ¿O no?
El documento Programming Specifications dice lo siguiente:
2.9 Programming Specifications dijo:
Program memory located at 0x800000 and above is utilized for device configuration data, Unit ID and Device ID.
This region is not available for user code execution and the PC can not access this area.
However, one may access this region of memory using table instructions.
For details on accessing the configuration data, Unit ID, and Device ID, refer to the specific device family reference manual.
Así que para acceder a esa zona, se tendrá que realizar un programa para ello.


PICmicro™ Mid-Range MCU Family Reference Manual
 
#10
Hola, yo no me fiaria de ese micro luego de lo que le sucedió. Sólo por curiosidad, intentaría cargarle un simple programa, para saber si lo corre. Si "perdió", su identidad, pues usar la nueva "identidad", sino a la basura nomás!
 
Arriba