TODOPIC
Simuladores, editores de PCB, etc => Simuladores de circuitos => Proteus ISIS => Mensaje iniciado por: Menta en 23 de Abril de 2007, 06:28:08
-
hola a todos. Quiero saber si a alguien le pasó o le pasa lo mismo que a mí...
USO PIC C v3.235 y creé mi propia librería para la memoria 24LC1025 basandome en la librería de la 24512, las funciones son las mismas (mientras me mantenga en el bloque 0) y le agregué unas funciones para leer/escribir una página completa (128 bytes) y la simulo en proteus 6.7 SP3 con la M24512, curiosamente funcionó :mrgreen:
El caso es que para borrar la memoria escribo con cualquiera de las funciones (byte a byte o por página) valores 0x00 o 0xFF (para el caso, es lo mismo) y cuando veo la simulación del contenido de la memoria encuentro errores: grupos de bytes que no se escribieron, son como manchas en la memoria, errores que no sé por qué ocurren. Cada vez que lo simulo ocurren en lugares diferentes y en mayor o menor medida, pero ocurren
Probé con la opción SLOW y FAST del #usei2c (options)
alguien sabe qué velocidad implican estos modos? porque no lo dice en ningún lado la ayuda de pic c
Las únicas opciones que se me ocurren son:
- repetir la rutina de escritura 2 o 3 veces
- escribir y leer para comprobar y así asegurarme que escribió.
Se aceptan sugerencias...
Gcias. Saludos
-
Escribe en la memoria en hexadecimal, así yo no tuve más esos problemas.
Suerte!!! ;)
-
Gracias por tu respuesta vszener. Estoy escribiendo en hexadecimal.
Acá pongo el link a otro tema del foro donde adjunté la librería que uso.
librería para memoria 24xx1025 (http://www.todopic.com.ar/foros/index.php?topic=17014.0)
Notar que la simulo en el isis con la 24512 porque es la más grande que viene, al menos en la versión 6.7 sp3
-
Puede que no estés dandole el tiempo necesario a la memoria para que complete la escritura. Intentá poner demoras entre cada grabacion y/o lectura.
Saludos.