0Pricing
Arduino & IoT Academy · Lección

Recordar un contador después de reiniciar

Conserve el estado entre ciclos de alimentación.

Recordar un contador después de reiniciar es una lección gratuita de Arduino & IoT Academy en CoddyKit. Esta es la lección 4 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Arduino & IoT Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Arduino & IoT Academy incluye 4 lecciones en total.

Partes de esta lección aún no han sido traducidas y se muestran en inglés.

A Counter That Survives

Let's build a press counter that remembers its total even after a power cut. We'll combine debouncing with EEPROM storage.

The Plan in One Line

On startup, load the saved count. On each clean press, add one and save it back. Simple, but powerful.

Pick a Storage Slot

Reserve one EEPROM address for the counter. We'll keep it small enough to fit in a single byte for now.

const int ADDR = 0;
byte count = 0;

Load on Boot

Inside setup(), read the saved value first. Now your counter picks up exactly where it left off.

void setup() {
  count = EEPROM.read(ADDR);
}

Wipe the Junk First

A fresh chip's EEPROM often reads 255. Treat that as empty and reset your counter to zero on the first run.

if (count == 255) count = 0;

Reuse Your Debounce

Detect presses with the millis() debounce from before. Clean input is essential, or your saved count drifts upward.

Increment on a Clean Press

When a debounced press fires, bump the counter by one. This is the single moment your total grows.

count++;
Serial.println(count);

Save Without Wearing Out

Use EEPROM.update to write the new total. It only touches memory when the value actually changed, protecting the chip.

EEPROM.update(ADDR, count);

Test the Magic

Press a few times, then unplug and replug the board. The Serial Monitor shows your count continuing, not restarting. 🎉

Mind the Byte Limit

A byte counter wraps back to 0 after 255. For bigger totals, store an int with EEPROM.put and EEPROM.get instead.

Add a Reset Option

A real product often needs a way to clear the saved count. A long button hold could write 0 back to EEPROM.

EEPROM.update(ADDR, 0);

Quick Check

Let's check the key step that lets the counter survive a reset.

Recap: Memory Across Resets

You built a counter that persists by loading from EEPROM at boot and saving each clean press. Your device finally has a memory! 🧠

Preguntas frecuentes

¿La lección «Recordar un contador después de reiniciar» es gratis?

Sí — el texto completo de «Recordar un contador después de reiniciar» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Arduino & IoT Academy, actualiza a CoddyKit PRO. El curso de Arduino & IoT Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Recordar un contador después de reiniciar»?

Conserve el estado entre ciclos de alimentación. Practicas Arduino & IoT Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Arduino & IoT Academy?

No se requiere experiencia previa. Arduino & IoT Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 4 de 4.

¿Cuánto tiempo toma la lección «Recordar un contador después de reiniciar»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Arduino & IoT Academy?

Sí. Cada lección de Arduino & IoT Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Por qué los botones «rebotan»
  2. Eliminar rebotes con millis()
  3. Almacenar un valor en EEPROM
  4. Recordar un contador después de reiniciar
← Volver a Arduino & IoT Academy