🚚 Envío GRATIS en compras sobre $30.000 | Retiro en Curauma, Valparaíso | 📞 +56 9 65214463
Arduino 16 de January de 2026 · 2 min de lectura

Cómo Usar millis() en Arduino para Multitareas

La función millis() de Arduino permite ejecutar múltiples tareas en paralelo sin usar delay(). Aprende el patrón básico para proyectos más responsivos.

El problema con delay()

La función delay(1000) pausa COMPLETAMENTE el Arduino durante 1 segundo. En ese tiempo no lee sensores, no revisa botones ni actualiza pantallas. Para proyectos simples está bien, pero cuando necesitas hacer varias cosas "al mismo tiempo" debes reemplazar delay() con millis().

millis() retorna el número de milisegundos transcurridos desde que el Arduino se encendió. La idea es comparar el tiempo actual con un tiempo guardado y actuar cuando haya pasado suficiente tiempo, sin bloquear el loop().

Patrón básico de millis()

  • Declara unsigned long previousMillis = 0 fuera del loop()
  • Define el intervalo: const long intervalo = 1000 (1 segundo)
  • En el loop: unsigned long currentMillis = millis()
  • if (currentMillis - previousMillis >= intervalo) { previousMillis = currentMillis; // haz algo }
  • El código entre llaves ejecuta exactamente cada 1000 ms sin bloquear nada

Múltiples tareas con millis()

Con este patrón puedes tener tres "hilos" simultáneos: uno que parpadea un LED cada 500ms, otro que lee temperatura cada 2000ms y otro que revisa un botón cada 50ms. Cada uno tiene su propio previousMillis y su propio intervalo. El loop() corre tan rápido como pueda ejecutando solo las tareas que ya "llegó su hora".

Cuidado con el overflow

millis() desborda y vuelve a cero después de aproximadamente 49.7 días. La buena noticia es que el patrón (currentMillis - previousMillis) funciona correctamente incluso en el desbordamiento si usas unsigned long (no int ni long con signo). Nunca uses if (millis() >= previousMillis + intervalo) porque fallará en el overflow. Consigue Arduino Uno y componentes en Especificar.cl para practicar este patrón.

Compartir: WhatsApp
Escríbenos por WhatsApp