Hi, I'm new to labview and I'm unsure how to capture the data I'm interested in using the DAQmx functions. I have the following signals:
10 Digital inputs
1 Clock
1 Latch
I need to sample all of the digital lines on the rising edge of the clock. This I've been able to do. I'm unsure however how to integrate the latch.
The digital inputs each need to be read as though they are individually being fed to 10 shift registers, each incidentally 128bits in length.
I then need to store the most recently clocked in 128bits from each digital line on the falling edge of the latch signal.
I had started with a DAQmx digital input vi, wired with the 10 digital lines, and set for one channel for each line. I later read that tasks using all lines in one or more ports must use "one channel for all lines"; as such i suspect this must be changed. Also, I have a sample clock in the same task, set to sample continuously on the clock's rising edge, with samples/channel set to 128. Again, having dug through documentation I suspect the buffer is being made much larger than 128samples x 10 channels; although it looks as though I can force the 128 size. Even so I am unclear on three things:
1. Which DAQmx read instance should I use to return the most recently clocked in 128 samples of all 10 channels?
2. How should the buffer be configured for this DAQmx read?
3. How can I initiate the DAQmx read on the latches falling edge?
I've made the latch input a separate task, set as the clock input, but I have no data to read with this. I only want to use the latch to initiate the inputs read. Counters seem like a possibility, but when I attempt to add one Labview doesn't populate any to select; I suspect my hardware doesn't provide counters. I've tried using the DAQmx Create Timing Source Vi with digital change detection and a timed loop, in conjuction a complex attempt at converting digital waveforms to arrays of U32 ints with no luck.
Any suggestions would be much appreciated. Thanks in advance.
Matt