"pulseIn()" bremst Ablauf genau so wie "delay()"

Man kann aber dem pulseIn() einen Timeout-Wert übergeben.
Siehe auch http://arduino.cc/en/Reference/PulseIn
Allerdings muss man dann im Programm auch damit umgehen, das ggf. kein Wert gemessen wurde.