Multifunction DAQ

cancel
Showing results for 
Search instead for 
Did you mean: 

start trigger for buffered event counting?

I am using a PCI-6229 DAQ board with C++ and NI-DAQmx.

Is it possible to define a start trigger for buffered event counting?

I see properties pertaining to an "arm start" trigger, but the documentation makes it sound like this simply gets the counter ready to be started without actually starting it.

I am using a sequence of calls to set up the counter:

CreateTask
DAQmxCreateCICountEdgesChan
DAQmxCfgDigEdgeStartTrig
DAQmxCfgSampClkTiming

This sequence gives a -200452 error, "Specified property is not supported by the device or is not applicable to the task".

Is this possible on the PCI-6229? Is it possible on some other board? Do I really need the arm start trigger?


I'm sorry if this has been answered. I did search for an answer, and found things that seemed pretty close but didn't quite get me there.
John Weeks

WaveMetrics, Inc.
Phone (503) 620-3001
Fax (503) 620-6754
www.wavemetrics.com
0 Kudos
Message 1 of 4
(2,898 Views)
John,

Based on my own trial-and-error, it *seems* that you'll need to configure the "arm start" trigger instead of the regular digital start trigger. I got the same error # when trying to configure the digital start trigger and only produced expected behavior by configuring the "arm start trigger" alone. I can't help with the C++ syntax b/c I'm programming w/ LabVIEW.

I was also thrown off by the documentation. It sounded (to me) like the "arm start" trigger, when configured, would let the task start looking for the regular digital start trigger, i.e., regular digital triggers occurring before the "arm start" trigger would be ignored. In practice, it seems that the "arm start" trigger is simply the one and only start trigger that can be configured for counter tasks.


(There's also a lack of info pertaining to the "pause trigger" which seems to be allowed for some counter tasks but not others.)

-Kevin P.
CAUTION! New LabVIEW adopters -- it's too late for me, but you *can* save yourself. The new subscription policy for LabVIEW puts NI's hand in your wallet for the rest of your working life. Are you sure you're *that* dedicated to LabVIEW? (Summary of my reasons in this post, part of a voluminous thread of mostly complaints starting here).
0 Kudos
Message 2 of 4
(2,895 Views)
Kevin:

Thanks for the info.

I have since added the ability to use the arm start trigger instead the start trigger, and it does what I was looking for.

>In practice, it seems that the "arm start" trigger is simply the one and only start trigger
>that can be configured for counter tasks.

Well, the regular start trigger works with output pulse tasks.

Which brings up another question: on a board with analog trigger circuitry, can you use an analog trigger for an task that accepts a regular start trigger? I don't seem to have a board with analog trigger, so I can't try it.

I find the documentation to be not as clear sometimes as it could be. I also find that it is often difficult to find the particular spot in the documentation where something is disscussed. That is partly because sometimes pieces of a given topic are scattered about.

Sure wish it was in a PDF so I could actually read through it!
John Weeks

WaveMetrics, Inc.
Phone (503) 620-3001
Fax (503) 620-6754
www.wavemetrics.com
0 Kudos
Message 3 of 4
(2,891 Views)
Hi John,

Yes, it is possible to use the analog trigger of your board (that supports it) for any task that allows a regular digital start trigger. If teh action allows a digital trigger, but not an analog trigger, you can set up an analog input task with an analog level start trigger. You would use the "AnalogComparisonEvent" as the digital trigger for your task that doesn't directly support analog triggering (e.g. counter). To find this internal signal you will on the trigger source control/constant, choose "I/O Name Filterning," and checking the "Include Advanced Terminals" box.

Once you set up an analog input task, the analog trigger comparison circuitry is configured. So every time your trigger condition is satisfied, you will get a pulse on the AnalogComparisonEvent signal. This will allow you to do analog level pause triggering on your counter task. If you simply wish to start your counter task with an analog level, then you would choose the ai/StartTrigger for the counter task's digital trigger.

So it is possible to use the analog trigger circuitry for other tasks, you just need to set it up via an AI channel.

-Sal
0 Kudos
Message 4 of 4
(2,863 Views)