Hi
I am trying to solve a similar problem at the moment (I have a discussion going in the 'Dynamic Signal Acquisition and Analysis' section) but have not found a completely satisfactory solution so far.
I am acquiring an analogue signal from a rotating machine from which I also have a TTL signal which gives me a once per revolution (OPR) marker. I want to continuously acquire the analogue signal and use the OPR pulsing signal to 'chop up' my continuous analogue signal into a set of data for each rev.
I have used a method similar to the one you have described - I use continuous double-buffered acquisition to acquire the analogue signal and the counter values, with the OPR pulse signal as the counter gate. However, I have been unable to synchronise the s
tart of the signal and counter acquisitions together. I can start the signal acquisition using the OPR signal as a trigger but not the counter. I tried using GPCTR_Change_Parameter() to set the start trigger to external (ND_ENABLED) but this is not permitted with my E Series device (PCI-6111E with DAQ-STC).
Do you know a way round this? And even if I could start my counter acquisition using the OPR signal, how do I ensure that I haven't missed any revs between starting the signal and counter acquisitions (in tests where I use immediate software triggers for the signal then the counter in successive lines of C++ code, my counter is already 2 cycles behind at just 100Hz OPR).