I am using an ELVIS board and a Parallax Ping))) sensor to try and measure distance. The trigger for the sensor is a TTL pulse of at least 2 microseconds. Then, once the input pulse ends, the sensor waits 750 microseconds, then emits a 40 kHz chirp. It then starts sending back 5V on the same pin. The sensor continues to emit the 5V until it detects the echo of the chirp. Thus, the pulse width is proportional to the time of flight. The minimum flight time, which should correspond to about 3 cm, is 115 microseconds, and the sensor times out at about 18.5 ms, which is about 3 m.
For my class, I have to use the NI ELVIS, and I can get a pulse out of the DO ports, and I can read from the DI ports, but it seems that the program is continuously timing out, i.e. that by the time my program starts checking the DI port, 18.5 ms have already passed. I am using the low level read and write VI's, and not the express VI's, which has already drastically reduced run time, but I am not confident that the ELVIS is reading fast enough.
I am using code from Ben_B's Devantech SRF04 / SRF05 Ultrasonic Range Finder Driver, and I have attached what I have got. It was developed in LabView 8.5.1