pulseIn()
De ArduWiki
Contenido
Descripción
Lee un pulso (HIGH o LOW) en un pin digital y retorna la duración del pulso en microsegundos o 0 si no se inicia ningún pulso dentro de un tiempo de espera especificado.
La función pulseIn() espera que el pin pase a HIGH, inicia el cronometraje, luego espera que el pin pase a LOW y detiene el cronometraje.
Nota: Funciona bien con pulsos desde 10 us a 3 min de duración.
Sintexis
pulseIn(pin, valor); pulseIn(pin, valor, espera);
Parámetros
- pin
- numero de pin digital a examinar.
- valor
- es el tipo de pulso a identificar: HIGH o LOW.
- espera
- es el numero de us que espera el pulso. El predeterminado es 1 segundo.
Retorna
Retorna la longitud del pulso en microsegundos en unsigned long o 0 si el pulso no se completa dentro del tiempo de espera determinado con "espera".
Advertencias
Nada.
Ejemplo
Para este ejemplo conecta un pulsador entre el pin 7 y GND. Luego de pulsar y soltar, Arduino te dirá la duración del pulso en microsegundos.
unsigned long duracion = 0;
void setup(){
Serial.begin(9600);
pinMode(7, INPUT_PULLUP);
}
void loop(){
duracion = pulseIn(7, LOW);
if (duracion){
Serial.print("Tiempo (us) = ");
Serial.prinln(duracion);
}
}
Vea también