Digital I/O

cancel
Showing results for 
Search instead for 
Did you mean: 

phase shift an external TTL signal

Hello, I would like to phase shift an external TTL signal using labview (DAQ-card: PCI-6024E). I thought the best would be to use the digital I/O functions. Can anybody telle me how to to this?

Input: External TTL signal: 100 Hz duty cycle 0.5
Wanted output: The same signal but shifted by less than a ms! best would be a précision of 10 microseconds

Is it possible to do controlled things below the ms limit? (should be if we stay on the card, right?)
Thanks to you,
   Bully


0 Kudos
Message 1 of 3
(3,557 Views)
The digital I/O of the PCI-6024E is all software timed.  So the speed in which you can update your digital lines is completely dependent on your system.  If you are in a non real-time OS (like Windows) than getting update rates faster than 1ms is probably not likely.  However, if you have an available counter on your device, you could probably achieve what you are looking for.  You can set up a counter to produce a re-triggerable pulse.  Use your input signal as your trigger, then set the appropriate high-time for your pulse.  This is a hardware timed operation, so the non-determinism of the operating system is not a factor.  If you are using LabVIEW, check out the example finder (Help>>Find Examples).  Navigate to Hardware Input and Output>>DAQmx>>Generate Digital Pulses.  I suggest looking at "Gen Dig Pulse-Retriggerable.vi".
-Alan A.
0 Kudos
Message 2 of 3
(3,529 Views)
Thanks for the answer, I'll try the counter-trick.
0 Kudos
Message 3 of 3
(3,524 Views)