LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

EasyIO: Collecting Data From 2 Channels At Once, With A Trigger

Hi all.  I have a program that was written quite a long time ago (using CVI 4.0) and I am trying to update it.  This program uses the Easy IO library, which now seems to be obsolete.  Thus I am left stranded without a suitable function.  Here's the function call which is used in the old program:

AIAcquireTriggeredWaveforms(1,"1;0",256,rate,5.0,-5.0,&actualRate,DIGITAL_TRIGGER_A,POSITIVE_SLOPE,0.0,"",0,-2.0,GROUP_BY_CHANNEL,rawWaveforms);

As you can see I am trying to gather data from 2 channels at once (0 and 1), triggering the data acquisition by an outside source.  Is there a newer function I can use in place of the one
listed above?  When I attempt to compile using the aforementioned function I get the following error:

Undefined symbol '_AIAcquireTriggeredWaveforms@80' referenced in "program.c".

I am using a PCI-1200 legacy board and CVI 8.0.  Any help would be greatly appreciated.  Thanks!

-John
0 Kudos
Message 1 of 6
(3,945 Views)

That function was in the Easy I/O for DAQ libarary which is still around.  Did you load the traditional NIDAQ libary from the instrument driver disk.  If you only loaded NIDAQmx (the newer daq driver) you may not have that library available. 

This can also happen if NIDAQ was loaded before CVI on the PC.  If you reload NIDAQ and make sure that cvi support is selected you should regain access to that function.

0 Kudos
Message 2 of 6
(3,931 Views)
Hi John,

First of all, thank you so much mvr for your awesome answer!

Another approach would be to use DAQmx.  In this case, the example (In CVI, goto Help -> Find Examples) Acq-IntClk-DigRef should outline an equivalent solution.  It can be found under Hardware Input and Output -> Analog Measurements -> Voltage.
Cheers,

David Goldberg
National Instruments
Software R&D
0 Kudos
Message 3 of 6
(3,919 Views)
Hi guys,
I don't think that I have NI-DAQmx installed.  I have NI-DAQ 6.9.3 installed because any later version doesn't support my board.  I do have easyio.h in my include folder... it looks like everything is in place.  But as I said before, it will not compile correctly (I've tried this on two seperate computers using CVI 7 and 8 - both give the same error).  Again, I am using a PCI1200 board... old I know, but it serves it purpose. Smiley Happy

Thanks!
-John
0 Kudos
Message 4 of 6
(3,913 Views)
UPDATE:  I tried installing DAQmx but I had to remove the legacy version of the DAQ driver.  I ran Measurement and Automation and it is not detecting my card.  Is my board not compatible with the new driver?

-John
0 Kudos
Message 5 of 6
(3,906 Views)
Ah, I have found my answer at last!  Easy IO was not accessible; it turns out I disabled it during after the CVI install since it was not found (because I had not yet installed the NIDAQ driver).  I reinstalled everything before I realized my mistake.  Oh well, live and learn!  Thanks to everyone for the help, esp mvr since it was his advice which led to the discovery of my mistake!

Much Love,
-John
0 Kudos
Message 6 of 6
(3,897 Views)