Diferencia entre revisiones de «millis()»

De ArduWiki
Saltar a: navegación, buscar
(Ejemplo)
Línea 18: Línea 18:
 
== Ejemplo ==
 
== Ejemplo ==
 
<pre>
 
<pre>
unsigned long hora;
+
unsigned long hora=0;                     //Es muy importante respetar el tipo de dato
 
void setup() {
 
void setup() {
   Serial.begin(115200);
+
   pinMode(13, OUTPUT);
 
}
 
}
 
void loop() {
 
void loop() {
   hora = millis();
+
   if (milis() - hora >= 500){
  Serial.print("La hora es: ");
+
      hora = millis();                     //Guarda a hora de cada cambio
  Serial.println(hora);
+
      digitalWrite(13, !digitalRead(13)); //Invierte valor del pin
   delay(500);
+
   }
 
}
 
}
 
</pre>
 
</pre>

Revisión del 11:50 15 jun 2018

Descripción

Devuelve el número de milisegundos desde que la placa Arduino empezó a ejecutar el programa actual. Este número se desbordará (volverá a cero), después de aproximadamente 50 días.

Sintaxis

millis();

Parámetros

Nada.

Retornos

Número de milisegundos desde que el programa se inició. Numero tipo unsigned long.

Advertencias

Tenga en cuenta el tipo de valor que retorno millis() es unsigned long y pueden producirse errores lógicos si hacer operaciones aritméticas con otros tipos de datos más pequeños como: byte o int, incluso los long con signo pueden producir errores de calculo.

Ejemplo

unsigned long hora=0;                     //Es muy importante respetar el tipo de dato
void setup() {
   pinMode(13, OUTPUT);
}
void loop() {
   if (milis() - hora >= 500){
      hora = millis();                     //Guarda a hora de cada cambio
      digitalWrite(13, !digitalRead(13));  //Invierte valor del pin
   }
}

Vea también

Referencias