Diferencia entre revisiones de «micros()»
De ArduWiki
(→Retornos) |
(→Referencias) |
||
Línea 40: | Línea 40: | ||
* [[millis()]] | * [[millis()]] | ||
− | == Referencias == | + | == Referencias externas == |
* [https://www.arduino.cc/reference/es/language/functions/time/micros/ Guia de referencia de Arduino] | * [https://www.arduino.cc/reference/es/language/functions/time/micros/ Guia de referencia de Arduino] | ||
− | [[Category:Funciones]] | + | [[Category:Funciones tiempo]] |
Revisión del 22:33 11 jun 2019
Contenido
Descripción
Devuelve el número de microsegundos desde la que placa Arduino empezó a ejecutar el boceto actual. Este número se desbordará (volverá a cero), después de aproximadamente 70 minutos. 1 segundo = 1000 000 microsegundos.
Sintaxis
micros();
Parámetros
Ninguno.
Retornos
Número de microsegundos desde que se inició el boceto. Tipo de dato unsigned long.
Comentarios
Tip: Este comando tarda 47 ciclos de CPU.
Advertencias
- En placas Arduino de 16 MHz (UNO, Duemilanove y NANO), esta función tiene una resolución de cuatro microsegundos, es decir el valor devuelto es siempre un múltiplo de cuatro.
- En las placas Arduino 8 MHz (LilyPad), esta función tiene una resolución de ocho microsegundos, es decir el valor devuelto es siempre un múltiplo de ocho.
- micros() funciona mediante una interrupción (la misma de millis()); por lo tanto, su valor dejará de incrementar (pero puede variar sólo un poco) durante una rutina de servicio de interrupción (ej.: posterior a attachInterrupt()), o mientras no se llame a interrupts() después de llamar a noInterrupts().
Ejemplo
unsigned long tiempo; void setup(){ Serial.begin(9600); } void loop(){ Serial.print("Tiempo: "); tiempo = micros(); // Imprime los microsegundos transcurridos desde que se inició el programa Serial.println(tiempo); // Esperar un segundo para así no inundar el puerto con muchos datos delay(1000); }