Multifunction DAQ

cancel
Showing results for 
Search instead for 
Did you mean: 

TTL-signal input delayed digital output

Hi,

 

I have a system (using Visual Studios 6.0, C++ for programming NI USB 6009) where I want to:

 

Write a digital pulse train triggered by a TTL-pulse from my laser. The TTL-pulse will go into my NI USB 6009 and on the first TTL-pulse I want to start generate a digital pulse train, after a certain delay (in the range 80ns). This is surelly a simple task but I have had great difficullties with it, tried a lot of other solutions but all attemts have generated different errors that I cannot solve. I am new i the area and would besoo happy for glad for tips and help!

 

//Hanna

0 Kudos
Message 1 of 3
(2,992 Views)

With the 6009, you actually have a very difficult task. The digital I/O is software timed only and it has no trigger capability. It does not have a counter output so you can't use that for a pulse train either. In order to detect the signal, you will have to do a continuous read, then output the pulse train bit by bit. The timing for this would probably be no more than 1kHz. A software delay of 80ns is just unreasonable on windows. With the amount of jitter on a non-deterministic OS, you might be able to achieve something in the msec range.

 

A different DAQ card is almost certainly called for.

Message 2 of 3
(2,985 Views)

Thank you so much for your reply! I would like to ask you, what would you recomend me to buy? What product do you think is the best to manage my task:

 

Receive TTL-pulse, on first rising rest the system (using Sleep(Delay) maybe), and then write out a pre-determined number of trigger signals to another apparatur in my system. When this apparatur has received its trigger signals it perform a task and do then send an analog value which my device should be able to read.

 

Thank you so much!

0 Kudos
Message 3 of 3
(2,952 Views)