09-17-2006 06:27 AM
09-18-2006
03:14 PM
- last edited on
03-10-2025
03:29 PM
by
Content Cleaner
Fundadero,
Thanks for posting to the NI Forums. Let me see if I can begin to address some of your questions:
1) Yes the PCI-6035 supports buffered counter measurements. However, the FIFO on the PCI-6035 is only 2 samples deep. As a result you generally cannot buffer counter measurements at more than about 150 kHz depending on system configuration.
2) You are correct. You should not need to use the Align_DMA_Buffer function since you are using the PCI bus and not the AT bus. Crossing page boundries do not have the same negative effect in this case.
3) I agree the example seems to be incorrect. Have you confirmed that the operation is not as expected? I think your approach is the correct way to read the data from the buffer.
4) There is not an example readily available that does exactly what you would like. You are going to need to combine several examples to achieve the operation you are looking for. I would recommend looking at the following example for how to set up cascaded counters in NI-DAQ Traditional:
https://download.ni.com/contrib/epd/B45EACE3EF1256A4E034080020E74861/STCCascadedCounters.zip
This example however does not employ buffered counter operations and you will need to combine the techniques used in the other example in conjunction with this example.
As a last little piece of advice I would highly recommend moving your entire application to DAQmx. First, your Legacy code will become more and more difficult to maintain and modify as time passes. You may be able to find answers right now but it will be harder to find them in the future. The number of people that can effectively support Traditional NI-DAQ is dwindling. We will always do our best to support these older applications but since the number of people that are using the driver is also falling the resources that can be dedicated to do so are very limited. Second DAQmx is a more robust and more straightforward API. Most people that put in the time to learn the new API find it much easier to use. DAQmx takes care of buffering issues for you and counters are significantly easier to program. It is also natively multithreaded.
For these reasons I highly recommend you consider making the jump. Let me know if you have any additional questions or if I can help in any other way.
Regards,
Neil S.
Applications Engineer
National Instruments
Message Edited by Neil S. on 09-18-2006 03:15 PM
09-18-2006 09:39 PM
09-19-2006
07:18 AM
- last edited on
03-10-2025
03:29 PM
by
Content Cleaner
Fundadero,
I spent some time yesterday looking very carefully at the example and I agree that you should be reading the buffer from the beginning. I am glad the example runs well when you make that modification. Let me know if you run into any issues while trying to modify the example to use cascaded counters.
National Instruments just released several bus powered USB M-Series multifunction devices.
These devices include a 1023 sample FIFO for the counters which greatly improves performance. One of my colleagues was able to continuously clock in buffered counter operations at greater that 1 MS/s.
Let me know if you have any additional questions.
Regards,
Neil S.
Applications Engineer
National Instruments
Message Edited by Neil S. on 09-19-2006 07:19 AM
09-21-2006 05:01 AM