Digital I/O

cancel
Showing results for 
Search instead for 
Did you mean: 

Where do I find Traditional NI-DAQ C Reference Help?

The Traditional NI-DAQ User Manual refers to Traditional NI-DAQ C Reference Help, but I can't find this document anywhere. I've downloaded and installed both CDs of the current release. What I ultimately want to know is if there is a faster way of writing the ports of the DAQPad-6508 than repeatedly doing DIG_Out_Prt (one for each port), which seems to take .0031 seconds per port.
0 Kudos
Message 1 of 6
(4,823 Views)
Hello,


If you look here you will notice that you can find the reference help by going Start»Programs»National Instruments»NI-DAQ»NI-DAQmx»C Function Reference. Also this can be found in

C:\Program Files\National Instruments\NI-DAQ\Docs\nidaqpc.chm

To help with the second part of the post, the DAQPad-6508 is controlled by software calls. There is no guarantee for rates that these boards will see. Also, DAQPad�s suffer from the bus systems that they are on. Both USB and Firewire (1394) are great for doing serial transfers of data, but doing a single command such as a non-buffered read or write does not have good times.

If you are looking to gene
rate a digital signal with hardware timed accuracy instead of software timed accuracy, then you should consider the 653x series. These boards supported hardware timed buffered operations, which allows them to see speeds as high as 20 MHz which is an update rate of 0.00000005 seconds, and all the ports get updated at the same time

Lastly, I found information stating that DAQmx will provide a faster update time between ports for PCI boards (benchmarked at 1 us when using a task with multiple ports). However, DAQmx does not support USB devices, but if 1 us is more acceptable, you could look at using the PCI version of this DAQPad.

Let me know if something is not clear if you have any further questions about this issue!

Justin T.
National Instruments
0 Kudos
Message 2 of 6
(4,823 Views)
Thanks for the information.

It is helpful, but I'm still confused. Am I wrong in assuming that the C Function Reference under NI-DAQmx is irrelevant for me because the DAQPad-6508 is not supported there, but only in Traditional NI-DAQ?

I do see that nidaqpc.chm is useful.

So, regarding the second part of my question, are you saying that, if I want to write all 12 ports of my DAQPad-6508, the speed I see is the best I can do?
I know that USB isn't the fastest thing in the world, but 3 milliseconds to write a single port seems excessive. Do you support a faster method? I noticed that I could write a whole group, but (assuming that that even works), I can't include ports 2,5,8, or 11 in the group. (Why?) And I must be confused, because when I tried to
use DIG_Block_Out with a count greater than 1, DIG_Block_Check returned remaining of 1 less than the count I provided, no matter how many times I called it.
0 Kudos
Message 3 of 6
(4,823 Views)
Hello,


Sorry about that, I posted wrong directions from the start menu. The correct directions should be Start»Programs»National Instruments»NI-DAQ»Traditional NI-DAQ Function Reference Help

As for programming, for the 6508, we should stick with the basic Digital I/O functions. Functions like DIG_Block_Out are for using the 653x devices that have a buffer and output data via a clock signal.

For an example program, please look at the attachment. This should provide pseudo code of how to control the digital lines.


Best regards,

Justin T.
National Instruments
0 Kudos
Message 4 of 6
(4,823 Views)
OK, thanks. So, bottom line, there is no faster way to write all ports of the DAQPad-6508 than doing a separate DIG_Out_Prt for each of the 12 ports? Which means if I want to update those 96 bits faster than about 25 hertz, I need a different device? There isn't a faster driver for the DAQPad-6508, or some other way to use it?
0 Kudos
Message 5 of 6
(4,823 Views)
Hello,


If you are looking to write to all of the ports, this is the best that you can do. However, you may see better performance for ports A and B by using handshaking. This will require the use of port C to allow you to do handshaking. If you wish to test this, you can use the example program below to see how to program this.

http://sine.ni.com/apps/we/niepd_web_display.display_epd4?p_guid=B45EACE3EB5F56A4E034080020E74861&p_node=DZ52320&p_source=External

Also, you may wish to look at the Traditional NI-DAQ Function Reference Help for more information about the DIG_SCAN_Setup, which uses handshaking.

C:\Program Files\National Instruments\NI-DAQ\Docs\nidaqpc.chm

Another great resource for handshaking signals i
s the user�s manual.

DAQPad User�s Manual
http://www.ni.com/pdf/manuals/321724b.pdf

Best regards,

Justin T.
National Instruments
0 Kudos
Message 6 of 6
(4,823 Views)