Lo que hace es comprobar que no hay señal en input, luego precarga el timer, y finalmente espera a que haya señal en input, el valor acumulado en el timer es el tiempo transcurrido.
Eso esta bien si tu micro no va a hacer nada mientras espera la señal, que si son varios milisegundos, puedes perderte otras cosas que pasen en tu sistema.