Autor Tema: memoria eeprom en la version 5.5  (Leído 13298 veces)

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

Desconectado narigon

  • PIC10
  • *
  • Mensajes: 16
memoria eeprom en la version 5.5
« en: 06 de Julio de 2012, 01:40:54 »
Hola a la comunidad, tal vez se me esta pasando algo por alto. tengo un problema al usar la memoria interna eeprom del pic en la version 5.5 que no la tenia en la 5.2, resulta que cuando arranca el programa la eeprom se carga con el valor inicial de la declaracion, esto es que si grabo un valor en el programa por ejemplo algun valor entrado por teclado etc. etc cuando lo apago y lo prendo vuelve a cargar el valor inicial que solo deberia cargarlo en el primer encendido teoricamente. la version 5.2 no carga ningun valor inicial, es decir guarga los valores cargados dentro del programa. saludos a todos.

Desconectado juanfra

  • PIC12
  • **
  • Mensajes: 74
Re: memoria eeprom en la version 5.5
« Respuesta #1 en: 06 de Julio de 2012, 08:53:45 »
Hola Narigon
Me da la impresión  de que no guardas en EEPROM, lo mejor seria que adjuntaras el proyecto y encantado le meteré un vistazo.
au cacau

Desconectado lucegiar2005

  • PIC24F
  • *****
  • Mensajes: 504
Re: memoria eeprom en la version 5.5
« Respuesta #2 en: 06 de Julio de 2012, 10:49:17 »
Hola a todos, Narigon, Juanfra y los que leen. Debes estar metiendo un valor al inicio del programa en la eeprom, y cada vez que reinicia se carga ese valor. Yo declaro los registros en la eeprom y los inicializo, los leo y cargo en otros que serán los que trabaje, y grabo nuevos valores en una función o rutina cuando lo necesito, así no carga el programa un valor fijo al iniciar. En este proyecto lo hice, pero no se si lo veas, esta en 5.6.2. pero podes simularlo y ver lo que hace. Un abrazo. Santiago
- Santiago -

Desconectado lucegiar2005

  • PIC24F
  • *****
  • Mensajes: 504
Re: memoria eeprom en la version 5.5
« Respuesta #3 en: 06 de Julio de 2012, 10:49:39 »
- Santiago -

Desconectado narigon

  • PIC10
  • *
  • Mensajes: 16
Re: memoria eeprom en la version 5.5
« Respuesta #4 en: 06 de Julio de 2012, 16:02:56 »
Ante todo gracias por las prontas respuestas a Juanfra  y santiago. Les adjunto unas capturas de imagenes una para la version 5.2 que anda perfecto (simulado en proteus) y otra en la 5.5 la cual me obliga a poner el valor inicial para avanzar y no anda, es decir carga el valor de inicio lo cual para una eeprom es un sinsentido ya  que se usa para resguardar variables cuando se apaga entre otras cosas.
Un abrazo y nuevamente gracias.

Desconectado lucegiar2005

  • PIC24F
  • *****
  • Mensajes: 504
Re: memoria eeprom en la version 5.5
« Respuesta #5 en: 06 de Julio de 2012, 19:30:24 »
Ok, te paso lo que hice en imágenes. Podes ver que declaro los espacios eeprom e inicializo, Cuando arranca el programa carga el valor que contiene la eeprom en registros de la ram, si quiero cambiar el valor de los registros en la eeprom lo hago en una rutina (y cargo el valor nuevo en los que uso en la ram). Esto funciona bien.
- Santiago -

Desconectado narigon

  • PIC10
  • *
  • Mensajes: 16
Re: memoria eeprom en la version 5.5
« Respuesta #6 en: 07 de Julio de 2012, 02:55:41 »
Santiago, lo probe asi y no me anda cada vez que arranca toma los valores iniciales. debe ser un bug de la version que tengo yo. vos tenes la 5.6? voy a tener que volver a usar la vieja 5.2
gracias nuevamente.

Desconectado lucegiar2005

  • PIC24F
  • *****
  • Mensajes: 504
Re: memoria eeprom en la version 5.5
« Respuesta #7 en: 07 de Julio de 2012, 08:54:12 »
Si pones el .npl lo compilo y veo que pasa con esta versión. Por lo que decís que hiciste, como te lo mostré, me parece que no guarda el nuevo valor en la eeprom, sino el antiguo ya no podría ser leído, estaría sobre escrito. Otra cosa que se me ocurre es que sea que en la simulación, si es así, te carga el valor por defecto cada vez que lo simulas, está correcto, probalo reiniciando. Cada vez que apagas la simulación y la ejecutas de nuevo es como si recién quemaras el chip, y la eeprom tiene valor inicial. Lo mejor sería que pongas lo hecho para verlo. Un abrazo
- Santiago -

Desconectado eduardopopayan

  • PIC10
  • *
  • Mensajes: 1
Re: memoria eeprom en la version 5.5
« Respuesta #8 en: 07 de Julio de 2012, 16:10:51 »
buenas tarde mira no se como utilizar este medio pero tengo un problema con una eeprom no se como hacer una interrupcion para desplegar un fallo en la lcd trabajo con configuracion i2c y el pic 16f877 con entrada de el boton de falla en el rc5 te agradeceria tu colaboracion

Desconectado lucegiar2005

  • PIC24F
  • *****
  • Mensajes: 504
Re: memoria eeprom en la version 5.5
« Respuesta #9 en: 07 de Julio de 2012, 18:21:42 »
Hola eduardopopayan, un gusto. Lamentablemente soy neófito en esto y no he trabajado con i2c, por lo que no creo poder ayudarte. Sin embargo se me ocurre que: si existe un cambio en algún registro,indicando cuando el fallo se produce, con el puedes disparar la visualización previo haber inhabilitado las interrupciones desde el general, con ello tenes una interrupción por fallo. Me pondré a ver i2c y si veo algo te comento, por ahora es solo una idea. Un abrazo.
 
Nota: FerTaca ha vuelto al ruedo y seguro el te encaminará por la solución.
- Santiago -

Desconectado narigon

  • PIC10
  • *
  • Mensajes: 16
Re: memoria eeprom en la version 5.5
« Respuesta #10 en: 08 de Julio de 2012, 02:38:08 »
Santiago aca te adjunto los archivos tipo ejemplo para que los veas con las dos versiones de niple. fijate de compilar el de 5.5 con tu version, debido a la simpleza del ejemplo vas a tener que pausar y ver los registros en el debug.
Cargale los  .hex de la version 5.2 y fijate que los registros se mantienen y cada vez que lo prendes y como incrementa 1 cada vez que vez se guarda con un valor mas alto,
En cambio la version 5.5 si bien deberia incementar y guardar, siempre arranca en cero y cuando llega al nop se queda siempre con el mismo valor.
Si podes mandame poneme el .hex que resulte de este ejemplo con tu version asi si anda ya lo reclamo niplesoft que me  emparchen esta version.
Saludos a todos, gracias

Desconectado lucegiar2005

  • PIC24F
  • *****
  • Mensajes: 504
Re: memoria eeprom en la version 5.5
« Respuesta #11 en: 08 de Julio de 2012, 10:38:44 »
Hola narigón, como estás? Le hice una mirada a los ejemplos, imagino que lo que visualizas es tecla_1 y 2, no me queda claro si en algún momento toma el valor de algún pulsador, creo que no por ser todo salida, lo que veo es: a- inicializás la eeprom, b- copiá los valores a tecla 1 y 2, c- sumás 11 y 22 al valor de tecla_1 y 2 y los guardás en 2 temporales que no entiendo porqué tienen en común a dd, d- copiás los valores de los temporales a la eepron y de ellas a tecla_1 y 2, queda ahí sin más por hacer. Si resetéas el programa debería darte el ultimo valor de la eeprom copiado a tecla, pero si no reseteas sigue mostrando valor de la suma de tecla + 11 o 22, según sea, una sola vez. Lo compilé en 5.6 v2 y te paso el hex y asm, simulalo. Hoy difícil que pueda hacerlo yo,. Un abrazo y comentame que pasó.
- Santiago -

Desconectado Fer_TACA

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 4154
Re: memoria eeprom en la version 5.5
« Respuesta #12 en: 08 de Julio de 2012, 14:04:20 »
Nota: FerTaca ha vuelto al ruedo y seguro el te encaminará por la solución.

Un poqito de calma muchachos mañana empezaré de lleno, espero que despues de estos meses no se me haya quedado la memoria (E2prom) en blanco. :D

f.
Todos los días se aprende algo nuevo.

Desconectado narigon

  • PIC10
  • *
  • Mensajes: 16
Re: memoria eeprom en la version 5.5
« Respuesta #13 en: 09 de Julio de 2012, 01:49:13 »
Santiago, es tal cual lo interpretaste no hay intercambio de datos en la simulacion de hecho no le pongo ningun accesorio en proteus , solo el pic. la suma tienen en comun una variable porque es para rellenar la suma pero como para probar nunca desborda no me importa el segundo byte. ......A todo esto el .hex que me mandaste no funciona, es decir no guarda los valores cuando le pongo stop y luego play me vuelve a crgar el valor inicial.  La UNICA forma de que ande es editando en el .asm la ultima parte donde pone los datos luego del rotulo "datos en la memoria eeprom" los borro a todos, lo compilo y asi si me anda. Asi que es cuestion de hablar con Canito a ver que opina de esto.
fijate por curiosidad. gracias a todos los que colaboraron y de paso prueben sus versiones nunca saben cuando lo pueden necesitar.

Desconectado lucegiar2005

  • PIC24F
  • *****
  • Mensajes: 504
Re: memoria eeprom en la version 5.5
« Respuesta #14 en: 09 de Julio de 2012, 04:12:25 »
Hola narigon, buenas noches. Si pones stop a la simulacion y luego la inicias de nuevo te pone el valor por defecto, el que pusiste al hacer el programa. Si haces reset sin parar la simulación deberias ver al principio el valor guardado de la suma anterior, reset via ra5 MCLR, no parar e iniciar pues ahí carga el hex igual a la primera vez, no se si me entiendes. Un abrazo
- Santiago -