TODOPIC

Microcontroladores PIC => * PROYECTOS * => Mensaje iniciado por: elreypic2 en 17 de Diciembre de 2015, 01:16:26

Título: Copiador (clonador) de EEPROM
Publicado por: elreypic2 en 17 de Diciembre de 2015, 01:16:26
Saludos a todos los forereos de este maravilloso foro.
Ya han pasado varios años desde que publiqué mi primer post y ahora me gustaría compartir un proyecto que realice hace algún tiempo para un buen amigo, al que nunca conocí en persona, pero que rcuerdo con mucho cariño y respeto, para ti mi buen amigo Carlos Guerra que ahora estas descansando.

El proyecto consiste en un clonador o copiador de memorias EEPROM seriales de la serie 24 (con protocolo I2C). Este clonador es capaz de detectar el tipo y el tamaño de la memoria y en su caso realizar la copia exacta del contenido.
El clonador es capaz de clonar las memorias:
24C01
24C02
24C04
24C08
24C16
24C32
24C64
24C128
24C256
24C512
24c1024
24C1026
AT24CM01
AT24CM02

El procedimiento es como sigue:

1. Encender el clonador
2. Esperar las instrucciones en el LCD
3. Insertar la memoria fuente en el socket de source y la memoria destino en el socket "destiny" y seleccionar el modo 'Standard' o 'Smart' . Ver la nota en el esquemático.
4. Presionar el boton de START
5. Si alguna o ambas memorias no es insertada en el socket mostrará un mensaje de que no fue detectada la memoria
6. Si las memorias no son iguales no realiza la copia y muestra el mensaje de que las memorias no son iguales.
7. Si las memorias son iguales entonces procede a realizar la copia.

He adjuntado el un archivo zip que contiene la simulacion en proteus, el codigo fuente realizado en PBP y los archivos de inicializacion de las memorias para fines de simulacion.
Tambien he adjuntado el codigo para el compilador basic del PIC Simulator IDE.

Ojalá que se de gran utilidad para alguien y si hubiera un interesado en realizar el PCB en eagle estaría fabuloso. Cualquier pregunta, aporte o sugerencia es bienvenida.

Elreypic.
Título: Re:Copiador (clonador) de EEPROM
Publicado por: stk500 en 17 de Diciembre de 2015, 04:17:43
Gracias amigo elreypic2 por compartir tu projecto!! ((:-))
Título: Re:Copiador (clonador) de EEPROM
Publicado por: Chaly29 en 17 de Diciembre de 2015, 05:19:59
Hola elreypic2, gracias por compartir el proyecto.

Un saludo.

Atte. CARLOS.

Título: Re:Copiador (clonador) de EEPROM
Publicado por: elreypic2 en 17 de Diciembre de 2015, 10:56:59
Olvidé mencionar que también puede realizar la copia de las memorias 24C00 de Microchip.

Saludos.

Elreypic.
Título: Re:Copiador (clonador) de EEPROM
Publicado por: elreypic2 en 29 de Diciembre de 2015, 12:55:53
Que tal a todos,

Espero que hayan tenido una feliz navidad, pero sobre todo mis deseos es que tengan un mejor año 2016.
He encontrado un pequeño bug en el código del eeprom cloner usando el compilador Basic del PIC Simulator IDE. Este bug no existe en el PIC Basic Pro. Así que he creado un nuevo código corrigiendo el bug en cuestión.

Saludos,

Elreypic.

P.D Algún interesado en crear el PCB? :( :( :(
Título: Re:Copiador (clonador) de EEPROM
Publicado por: Stban en 09 de Enero de 2016, 20:46:19
Hola elreypic2.

Me tomé la molestia de diseñar el PCB, usé como referencia un PCB para un LCD serial que diseñé anteriormente, adjunto la imagen y si te agrada el diseño subiré el archivo completo...

Saludos
Título: Re:Copiador (clonador) de EEPROM
Publicado por: elreypic2 en 14 de Enero de 2016, 15:06:55
Hola elreypic2.

Me tomé la molestia de diseñar el PCB, usé como referencia un PCB para un LCD serial que diseñé anteriormente, adjunto la imagen y si te agrada el diseño subiré el archivo completo...

Saludos

Muchas gracias Stban, el pcb te ha quedado muy bien. Podrias subir los archivos, me gustaría mandar fabricar el pcb.
De verdad te luciste.

Elreypic.
Título: Re:Copiador (clonador) de EEPROM
Publicado por: Stban en 16 de Enero de 2016, 14:26:35
Ok, aqui les dejo el PCB, está diseñado en Eagle 6.3.

Saludos a todos los usuarios del foro. :-/
Título: Re:Copiador (clonador) de EEPROM
Publicado por: maxmusron en 13 de Junio de 2016, 17:11:08
Olá amigos, obrigado pelo projeto.
Título: Re:Copiador (clonador) de EEPROM
Publicado por: maxmusron en 14 de Junio de 2016, 08:04:55
Hola amigos, tengo el problema siguiente: El Trabajo En Una tienda de reventa CÁMARAS IMPORTADOS ONU vino en application Montón 24C128 EEPROM defectuoso, Hecho Una Tarjeta de Leer la EEPROM y ya tengo el archivo HEX. Mi duda es si es para ver el Código del archivo HEX que DeSEA modificar. Gracias a todo el mundo. descupem traductor google español.
Título: Re:Copiador (clonador) de EEPROM
Publicado por: indus05 en 09 de Noviembre de 2020, 08:04:51
Hola.

Se que este post lleva mucho tiempo sin tener actividad, pero lo he visto y me resultaria de mucho interes este proyecto. La cuestion es que me he descargado todo el proyecto y lo he simulado en Proteus y funciona perfectamente.

El problema es que yo necesito que la memoria fuente sea con la dirección "001" es decir, con valor "CTL=A2". He intentado modificar el programa y compilarlo, pero nada... me da errores. Uso el Microcode 4.0 y el PBP 2.6 con el update al 2.6C... y no me compila bien. El MPLAB IDE V8.92

Y tal cual esta el código del CLONE 1_4 no me compila, me da estos errores (no me deja copiar y pegar los errores y no se por que...):
- Symbol not previously defined (_CP_ON)
- Symbol not previously defined (_DATA_CP_ON)
- Overwriten previos address contents (2007)
 y luego muchos mas de "Argument out of range· referidos a pbppic14.lib

A ver si me puedes ayudar a solucioar el problema y asi puedo usar este magnifico programa.


Título: Re:Copiador (clonador) de EEPROM
Publicado por: elreypic2 en 09 de Noviembre de 2020, 12:00:22
Que tal indus05,

Para poder compilar el código de PBP 2.6, necesitas realizar lo siguiente:

En el path donde tienes instalado el compilador PICBasic Pro, que regularmente es en C:\PBP, busca el archivo 16F648A.inc
Abre el archivo con un editor de texto como un lock de notas o incluso lo puedes abrir con el IDE Microcode Studio.
Una vez abierto el archivo, busca la siguiente siguiente línea:

__config _XT_OSC & _WDT_ON & _MCLRE_ON & _LVP_OFF & _CP_OFF

Simplemente coloca un ";" al inicio de esa línea como se muestra a continuación:

;__config _XT_OSC & _WDT_ON & _MCLRE_ON & _LVP_OFF & _CP_OFF

Guarda el archivo. Listo Ahora puedes compilar el código y ya no te mostrará los errores que mencionas.

saludos,

elreypic.
Título: Re:Copiador (clonador) de EEPROM
Publicado por: indus05 en 09 de Noviembre de 2020, 16:53:23
Muchas gracias. Voy a probar y te cuento. De todos modos que te parece lo que te he comentado de cambiar la dirección de la memoria fuente? Serviría tal y como te he comentado?
Título: Re:Copiador (clonador) de EEPROM
Publicado por: indus05 en 09 de Noviembre de 2020, 17:08:46
Nada, probado y sigue dado errores, te comento lo que dice:

Symbol no definido previamente _DATA_CP_ON
c:\pbp\pbppic14.lib 661: crossing page boundary -- ensure page bits are set
c:\pbp\pbppic14.lib 587: crossing page boundary -- ensure page bits are set
c:\pbp\pbppic14.lib 743: crossing page boundary -- ensure page bits are set

ni idea de lo que pasa..la cosa es que no he cambiado nada, es la ersion 1_$ sin tocar nada y con el compilador y version que te comento. tambien estoy probando con el micro code studio plus 3.0.0.5
Título: Re:Copiador (clonador) de EEPROM
Publicado por: elreypic2 en 10 de Noviembre de 2020, 11:04:24
Indus05 te envié un mensaje privado.

La manera más fácil de resolver tu problema es que elimines o comentes la línea de código en la que defino los fusibles, pero al momento de grabar el PIC debes definir esos fusibles, de lo contrario no operará correctamente

Elreypic
Título: Re:Copiador (clonador) de EEPROM
Publicado por: indus05 en 16 de Noviembre de 2020, 06:23:10
Buenos dias elreypic.

Pues por fin me compila y ya he montado el prototipo y al parecer funciona, y digo al parecer por que lo que programo en la memoria origen y lo que copia en la memoria destino no coincide...
la cuestión es que he montado el prototipo en una Protoboard, y digo... "será por ruido"... pero es que he hecho la prueba 7 veces y siempre lee lo mismo... y no me cuadra...

He probado con la versión 1_4, con ambas direcciones (A0, A1 y A2) a "00" y con la diferencia que te comente de modificar el programa de la memoria origen.. y tampoco, hay pequeñas diferencias en la lectura pero no coinciden...

Uso memorias 24LC256, eso puede ser un problema?