Despertar con un temporizador o un pin
Programe despertares o active el dispositivo ante un evento.
Despertar con un temporizador o un pin es una lección gratuita de Arduino & IoT Academy en CoddyKit. Esta es la lección 3 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.
Two Ways to Wake
A sleeping ESP needs a reason to wake. The two classic triggers are a timer that counts down and a pin that senses an event. ⏰
Timer Wakeups for Schedules
A timer wakeup is perfect for regular jobs, like reading a sensor every ten minutes. The chip sleeps, then wakes right on schedule.
esp_sleep_enable_timer_wakeup(600 * 1000000);Microseconds, Always
Timer values are in microseconds. For ten minutes you write 600 seconds times one million, so picking the right zeros really matters.
Pin Wakeups for Events
An external wakeup reacts to the real world. A motion sensor or button can jolt the chip awake the instant something happens.
ext0 Wakes on One Pin
The ext0 source watches a single RTC pin. You choose the pin and whether a HIGH or LOW level should trigger the wakeup.
esp_sleep_enable_ext0_wakeup(GPIO_NUM_33, 1);ext1 Wakes on Many Pins
Need several buttons? The ext1 source watches a group of RTC pins at once, waking when any of them hits the chosen level.
Only RTC Pins Qualify
Not every pin can wake the chip. Only the special RTC pins stay alive during deep sleep, so wire your trigger to one of those.
Combine Both Triggers
You can arm a timer and a pin together. The chip then wakes on a regular schedule or immediately if an event interrupts the nap.
Find Out Why It Woke
After waking, ask the chip what happened with wakeup_cause. Then you can run different code for a timer versus a button press.
esp_sleep_get_wakeup_cause();Branch on the Reason
Compare the cause against known sources to branch your logic. A timer might mean read a sensor; a pin might mean send an alert.
if (cause == ESP_SLEEP_WAKEUP_TIMER) { /* scheduled job */ }Arm, Then Sleep
Always set your wakeup sources first, then call sleep last. Arming after the sleep call is pointless because that line never runs.
Quick Check
Pick the right wakeup for the job.
Recap: Choose Your Trigger
Use a timer for scheduled jobs and an ext pin for real-world events. Arm sources before sleep, then check the cause to branch on wakeup. ⚡
Preguntas frecuentes
¿La lección «Despertar con un temporizador o un pin» es gratis?
Sí — el texto completo de «Despertar con un temporizador o un pin» 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 «Despertar con un temporizador o un pin»?
Programe despertares o active el dispositivo ante un evento. 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 3 de 4.
¿Cuánto tiempo toma la lección «Despertar con un temporizador o un pin»?
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
- Adónde va la energía
- Entrar en deep sleep en ESP
- Despertar con un temporizador o un pin
- Diseñar un nodo sensor con batería