From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
03-15-2006 01:39 PM
03-15-2006 02:39 PM
03-15-2006 02:45 PM
03-15-2006 02:50 PM
Hold on! I just remembered an easier way!
Take the unorthodox approach that instead of setting up a counter input task, create a continuous pulsetrain output task with units = Ticks. Configure your external signal as the "Tick Source". Specify that initial delay = low time = high time = 1 million.
The internal behavior of a counter in pulsetrain generation mode is to count down from # low ticks to 0. When it reaches terminal count, the output state toggles and the count reverts to # high ticks. It counts down to 0, the output state toggles, and the count reverts to # low ticks. Etc.
I am not 100% sure a DAQmx Read vi will be allowed, but you definitely can query the count value using one of the DAQmx property nodes. Probably a channel property. Then you'd just do the previously-described software trick of reporting 999999-actual count so the reported value counts up from 0 to 999999.
To make a continuous pulsetrain, put a DAQmx Timing vi in the config chain and specify "continuous sampling" -- or just adapt a shipping example.
-Kevin P
.