Skip to content

Instantly share code, notes, and snippets.

@HectorTorres
Created February 11, 2018 19:07
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save HectorTorres/e8b5c5193619be97b4a90cea31738291 to your computer and use it in GitHub Desktop.
Save HectorTorres/e8b5c5193619be97b4a90cea31738291 to your computer and use it in GitHub Desktop.
/*
FUNCIÓN EEPROM UPDATE
Escribe un valor en la EEPROM sólo si éste es diferente del valor anterior
*/
#include <EEPROM.h>
int direccion = 0; // La dirección actual en la EEPROM (Empieza en el byte 0)
void setup()
{
// Setup vacío
}
void loop()
{
int valor = analogRead(0) / 4; // Se tiene que dividir por 4 porque las entradas analógicas varían de 0 a 1023 y cada byte de EEPROM sólo puede contener un valor de 0 a 255
EEPROM.update(direccion, valor); // Actualiza el valor de esta celda en particular sólo si el nuevo valor es diferente del anterior
direccion = direccion + 1;
if (direccion == EEPROM.length()) // Avanza a la próxima celda, cuando llegue a la última, regresa a la primera
{
direccion = 0;
}
delay(100); // Espera 100 ms antes de volver a empezar
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment