Reference   Language (extended) | Libraries | Comparison | Changes

pulseIn()

Descripción

Lee un pulso (ya sea HIGH —alto— o LOW —bajo—) en un pin. Por ejemplo, si value es HIGH, pulseIn() espera a que el pin sea HIGH, empieza a cronometrar, espera a que el pin sea LOW y entonces detiene la medida de tiempo. Devuelve la anchura del pulso en microsegundos. Interrumpe la medida y devuelve 0 si el pulso no ha comenzado en un tiempo especificado.

La medida del tiempo en esta función ha sido determinada de forma empírica y está sujeta a errores en pulsos largos. Funciona correctamente en pulsos con una anchura de 10 microsegundos a tres minutos.

Sintaxis

pulseIn(pin, value)
pulseIn(pin, value, timeout)

Parámetros

pin: el número del pin en el que se realiza la medida del pulso. (int)

value: tipo de pulso. Puede ser HIGH o LOW. (int)

timeout (opcional): el tiempo en microsegundos máximo a esperar antes de que se inicie el pulso. (unsigned long)

Devuelve

el ancho del pulso (en microsegundos) ó 0 si el pulso no ha empezado antes del timeout (unsigned long)

Ejemplo

 

int pin = 7;
unsigned long duracion;

void setup()
{
  pinMode(pin, INPUT);
}

void loop()
{
  duracion = pulseIn(pin, HIGH);
}

Página principal Referencia

Correcciones, sugerencias, y nueva documentación deberán ser publicadas en el Foro (castellano) o en el Foro (inglés).

El texto de la referencia de Arduino está publicado bajo la licencia Creative Commons Reconocimiento-Compartir bajo la misma licencia 3.0. Los ejemplos de código de la referencia están liberados al dominio público.

Share