I have an application written in C++Builder and NIDAQmx 9.1 that either runs:
1) Two simultaneous continuous tasks (acquisition/stimulation(AnalogOut+DigitialOut) sweeps task) and a continuous acquisition (tape recorder task)
2) A single acquisition/stimulation(AnalogOut+DigitialOut) sweep
On many M-series PCI-6221 (and PCI-6229, PCI-6251, PCI-6259 and PCIe-6259) boards, both the Two Tasks and the Single Sweep work fine (AnalogInput, AnalogOutput and DigitalOutput are all correct).
In contrast, on the one X-series board I have, a PCIe-6321, the Two Tasks works FINE (AnalogInput, AnalogOutput and DigitalOutput are all correct). However, the Single Sweep does not run correctly - AnalogInput and AnalogOutput work FINE, BUT THERE IS NO DigitalOutput!!!
The code for the board setup and start are the SAME for both (see below).
I had assumed that code that ran on M-series boards would also run on X-series boards. Apparently not.
In the Multifunction DAQ forum, Dan_K mentions that there is now a dedicated DigitalInput and DigitalOutput clock. Could this new digital output clock be part of the problem? Could the fact that I am using an AnalogOutput clock for digitial output be the problem for the X-series board?
In the attachment (PCIe-6321_DigitalOutput_BUG.txt) are my M and X series Setup and Start acquisition/output functions to see X-series experts can find any obvious problems.
Thanks,
Bill Anderson