Uso de la memoria EEPROM con Arduino

Siempre recomendaba usar la memoria EEPROM en Arduino cuando se quería guardar un dato permanentemente sin importar si se reiniciaba el Arduino o si se desconectaba de la corriente, ya que al tratarse de una memoria no volátil es perfecto para eso, para guardar un dato que va cambiando de valor según la ejecución y del cual queremos recordar cual fue su ultimo valor.

Pero el caso es que nunca lo había puesto en practica así que para un post del hilo de Arduino en forocoches he creado este código.

El código lo que hace es simple, suma 1 a un contador almacenado en la EEPROM en la dirección de memoria 0 (de 512 disponibles), cada vez que el Arduino se reinicia o se conecta la corriente se suma 1 y se muestra el nuevo valor.

Como vemos es muy sencillo para almacenar un dato de tamaño byte… la cosa cambiara si queremos guardar mas datos, lo mejor seria usar una structura Union para facilitar el trabajo.

5 comentarios en “Uso de la memoria EEPROM con Arduino”

  1. yo tengo una duda y si puedes ayudarme te lo agradeceré, suscede que tengo que guardar valores como 25 o 32.5 y posteriormente compararlos con los que me de un sensor, cuando guardo un numero me lo guarda como ascii y no puedo hacer la operación que me recomienda

  2. Hola, trato de analizar el codigo y pues hay algo q no entiendo, en que parte del codigo le dices q cuente cada vez q se vaya la corriente? como le puedo hacer para que cuente por ejemplo usando un boton?

    1. Hola,

      Se ejecuta todo en el setup, no se usa el loop. Eso quiere decir que al encender el Arduino el código de setup se ejecuta una única vez de modo que se aumenta en 1 el contador y no se hace nada mas.
      Si reinicias el Arduino pulsando en el botón reset y le quitas la corriente, el Arduino ejecutara de nuevo el setup y aumentara de nuevo el contador.

      Para lo del botón te recomiendo que mires ejemplos de botones y leds, los pruebes, los entiendes y después podrás aplicarlo al ejemplo de la EEPROM, es facil.

      Saludos.

  3. Estoy que reviso varios foros para conocer un poco más del uso de la memoria EEPROM, estoy pensando hacer un proyecto donde se pueda guardar en la memoria cualquier hora del día que yo quiera ajustar. Luego en el transcurso del día la hora actual se compare con la guardada, al ser iguales encienda un led.

Escriba aquí su comentario