Skip to main content
Para usar este módulo, definí INCLUIR_EEPROM antes de incluir Cod-ES.h.

Activación


Objeto EEPROM

El módulo expone una instancia global llamada EEPROM (de la clase EEPROMClass). No es necesario crear instancias adicionales.
La EEPROM de los microcontroladores AVR tiene una vida útil limitada de aproximadamente 100.000 ciclos de escritura por dirección. Usá actualizar() en lugar de escribir() cuando sea posible para prolongar la vida útil.

Capacidad por placa


Métodos

Lectura

uint8_t
Lee un byte (entero sin signo de 8 bits) almacenado en la dirección indicada. Retorna el valor leído (0–255).Parámetro: idx — dirección de memoria (0 hasta longitud() - 1).
T&
Lee un valor de cualquier tipo de dato trivialmente copiable (int, float, struct, etc.) desde la dirección indicada. El tamaño leído es el de sizeof(T). También funciona con String.Parámetros: idx — dirección de inicio; t — variable de destino (se modifica por referencia).Retorna: referencia a la variable de destino con el valor leído.

Escritura

void
Escribe un byte en la dirección indicada. Siempre realiza la escritura, sin verificar si el valor ya es el mismo. Para mayor durabilidad, preferí actualizar().Parámetros: idx — dirección de memoria; val — byte a escribir (0–255).
void
Escribe un byte en la dirección indicada solo si el valor almacenado es diferente. Reduce el desgaste de la memoria. Es la función recomendada para escrituras frecuentes.Parámetros: idx — dirección de memoria; val — nuevo valor (0–255).
const T&
Escribe un valor de cualquier tipo de dato trivialmente copiable en la dirección indicada. Internamente usa actualizar() para minimizar el desgaste. También funciona con String.Parámetros: idx — dirección de inicio; t — valor a escribir.Retorna: referencia constante al valor escrito.

Iteración

EEPtr
Retorna un puntero a la primera dirección de la EEPROM (dirección 0x00). Útil para iterar sobre toda la memoria.
EEPtr
Retorna un puntero a la dirección posterior al último byte de la EEPROM. Equivale a longitud().
uint16_t
Retorna la cantidad total de bytes disponibles en la EEPROM del microcontrolador.

Operador []

Podés acceder a la EEPROM con notación de arreglo para leer y escribir bytes directamente:

Ejemplo completo — contador persistente

Este ejemplo guarda un contador en la EEPROM. El conteo sobrevive reinicios y desconexiones.

Ejemplo — guardar y leer un float

Al usar poner() y obtener() con tipos de más de 1 byte (como int, float o estructuras), asegurate de dejar espacio suficiente entre direcciones. Un float ocupa 4 bytes, así que el próximo dato debería guardarse en la dirección 0 + sizeof(float) = 4.