12-10-2007 05:49 PM - edited 12-10-2007 05:51 PM
squidmixer,
I do not have a BNC 2110 readily available at the moment, and I still was a bit
confused about the configuration windows, however I wrote the attached code so
I could see see exactly what is going on (it looks kind of complicated, but
when running, it is much clearer). The code writes a full buffer before
starting generation/acquisition and then writes a half buffer each write. The
data being written is directly displayed on the front panel. The read
reads a half buffer of data and displays it directly. Due to the fact we
wrote a full buffers worth of data initially, the minimum delay between the
measurement and generation displays we would expect is 2 iterations (2
half-buffers, the amount of data we wrote before starting the tasks):
The only things you have to input are your device channels and the
regeneration
setting. I reccomend using the internal routing so you don't have to
wire anything (e.g. Dev1/_ao0_vs_aognd for the input and Dev1/ao0 for
the output). You can then change the amplitude of the signal while the
program is running.
However, if we allow regeneration, then we end up with longer than we expect
for reasons discussed earlier. On my M Series card (a PCI-6251), I see 2
half buffers without regeneration and 4 with. My E Series (a 6024E) shows 2
half buffers no matter which regeneration setting.
If you would give this a try, if you see the same behavior I did, we may have
to start looking elsewhere for the cause of the delay. I wouldn't worry too
much about posting to the wrong forum. If you really want to, you can
create another thread and post a link to this one (as well as a link here to
that one).