TODOPIC

Microcontroladores PIC => Primeros pasos - Iniciación a los microcontroladores => Mensaje iniciado por: bluesboy en 08 de Marzo de 2019, 12:37:35

Título: 16F873A, me cambia los datos grabados en la eeprom ¿?
Publicado por: bluesboy en 08 de Marzo de 2019, 12:37:35
Buenos días

 No logro encontrar el error. Tengo un equipo que le permite al usuario grabar un dato entre 0000 y 9999, visualizados en un display 7 seg. Lo graba en la eeprom, arrancado en la dirección 0000.
La idea es que el usuario graba el dato, desconecta el equipo, vuelve en dos semanas, elige el dato grabado y comienza un proceso de cuenta muy simple que se detiene cuando la cuenta coincide con el dato grabado.

Peeero... Grabo el dato, queda todo perfecto, Desconecto, vuelvo a conectar al rato y de los 4 dígitos a grabar, uno o dos me quedan en FF. Pongamos que grabo 0011, el ¨11¨ queda perfecto, pero alguno de los 00 se pasan a FF. Entonces cuando voy a la tabla para mostrar el dato en el display...FF no está contemplado...el micro salta a cualquier lado y se cuelga.

No tengo idea porque me hace esto, algo se me está escapando.

Cualquier sugerencia es bienvenida.

Muchas gracias.
Título: Re:16F873A, me cambia los datos grabados en la eeprom ¿?
Publicado por: elreypic2 en 08 de Marzo de 2019, 21:24:36
Sin codigo es imposible ayudar. Por favor coloca tu código para analizarlo.

elreypic.
Título: Re:16F873A, me cambia los datos grabados en la eeprom ¿?
Publicado por: KILLERJC en 08 de Marzo de 2019, 23:49:28
Seguramente problemas de fuentes...

Filtra mejor... Activa el Brown Out (BOR)

De codigo puede ser tambien, pero si son aleatorios entonces donde ocurre pensaria mas lo anterior.
Título: Re:16F873A, me cambia los datos grabados en la eeprom ¿?
Publicado por: bluesboy en 12 de Marzo de 2019, 18:24:19
Muchas gracias por sus respuestas.

Yo también estoy desconfiando de la parte electrónica. Voy a revisar y lo del brown out tambien.

Lo del código, no lo cuelgo, pero no por hacerme el misterioso, son como 1500 y pico de líneas de assembler...Gracias igual.

Muchas gracias.
Título: Re:16F873A, me cambia los datos grabados en la eeprom ¿?
Publicado por: remi04 en 12 de Marzo de 2019, 18:44:53
Pero eso son dos bytes,  necesitas dos posiciones de eeprom.

  Tienes que coger tu número que estará en una variable de 16 bits y descomponerlo en dos variables de 8 bits. Luego grabas cada una de las dos variables en dos posiciones eeprom.

  Luego para leerlo pues todo a la inversa. Lees las dos posiciones y usas make16(); para recuperar tu número de 4’cifras.
Título: Re:16F873A, me cambia los datos grabados en la eeprom ¿?
Publicado por: bluesboy en 12 de Marzo de 2019, 20:39:23
Buenas, efectivamente, había que setear el Brown out reset. Problema resuelto.

MUCHAS GRACIAS.