0Pricing
Arduino & IoT Academy · Lección

Gestionar lecturas fallidas

Detecte NaN y vuelva a intentarlo sin bloquear el programa.

Gestionar lecturas fallidas 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.

Reads Can Fail

Even a good sensor sometimes returns nothing useful. Loose wires, fast polling, or noise can cause a failed read, so plan for it. ⚠️

Meet NaN

When a read fails, the library returns NaN, which means Not a Number. It is the sensor's way of saying I did not get a value.

Why NaN Is Tricky

A NaN never equals anything, not even itself. So you cannot just compare it with a normal number to catch the error.

Detect It with isnan

Use the built-in isnan() function to test a reading. It returns true when the value is the failed NaN result.

if (isnan(t)) {
}

Check Before You Use

Always test a reading before you print or act on it. Skipping this check lets bad data slip into your logic unnoticed.

Check Both Values

Guard temperature and humidity together, since either can fail. If one is NaN, treat the whole reading as bad and skip it.

if (isnan(t) || isnan(h)) {
  return;
}

Print a Warning

When a read fails, print a clear message instead of a value. Future you will thank present you for the helpful note.

Serial.println("Failed to read DHT!");

Retry, Do Not Crash

A single failure is normal, so do not stop the program. Simply retry on the next loop and the reading usually succeeds.

Keep the Last Good Value

For a steady display, store the last good reading and reuse it when a read fails. Your screen never shows an ugly blank.

Slow Down to Fix Failures

If failures pile up, you may be reading too fast or your wiring is loose. A longer delay and a firm connection often cure it.

Robust by Design

Handling errors gracefully is what separates a toy from a real device. Your sensor now survives the occasional hiccup calmly.

Quick Check

A DHT read fails. How should your sketch detect that in code?

Recap

You learned that failed reads return NaN, caught them with isnan, warned instead of crashing, and kept your device steady. 🎉

Preguntas frecuentes

¿La lección «Gestionar lecturas fallidas» es gratis?

Sí — el texto completo de «Gestionar lecturas fallidas» 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 «Gestionar lecturas fallidas»?

Detecte NaN y vuelva a intentarlo sin bloquear el programa. 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 «Gestionar lecturas fallidas»?

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. Conectar el DHT11/DHT22
  2. Instalar la biblioteca DHT
  3. Leer temperatura y humedad
  4. Gestionar lecturas fallidas
← Volver a Arduino & IoT Academy