LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

usb 6351 DIO between Two Ports

Hi All,

I am using Usb 6351 DAQ card and having a small problem to simultaneously sending and receiving Digital Data. What I am trying to do is send digital signal out from port0:line0 and receive the same signal at port1: line0 or port2:line0.  But when I try to do this I get an error selected lines do not support buffered operation (see attachment). I am also attaching my sample VI as well.

When I use the same port for sending and receiving i.e. Port1 then I donot have any problems and also receive the data.

Please let me know if anyone also had same problem or am I doing something wrong.

0 Kudos
Message 1 of 6
(4,421 Views)

Hi,

are you sure that your VI is working when switching both input and output to port1? This should only be possible whith port0, because it should be the only port that supports buffered operations.

 

Switching the DO channel to port0/line0 and the DI to port0/line1 should work for your example code.

Switching the DO channel to port1/line0 and the DI to port1/line1 should get you the -201062 error from your description.

0 Kudos
Message 2 of 6
(4,363 Views)

Once you've configured both DO and DI to be on port 0 (and done the corresponding physical rewiring at the terminal block), I highly recommend you also set the DO and DI clock polarity to be opposite. 

 

Odds are your clock is idle low so it produces rising edges before falling edges.  Send out your DO on the rising edge and collect your (response) DI on the falling edge after your system has had a little time to propogate a reaction to your DO stimulus.

 

 

-Kevin P

ALERT! LabVIEW's subscription-only policy came to an end (finally!). Unfortunately, pricing favors the captured and committed over new adopters -- so tread carefully.
0 Kudos
Message 3 of 6
(4,350 Views)

Hi Alex,

 

You are correct. My code works when I use DO channel to port0/line0 and the DI to port0/line1 and when i use DO channel to port1/line0 and the DI to port1/line1  i get the error. What I am failing to understand is that why i am not able to do buffer operation with Port 1 or Port 2 ?

 

I read the specification for the hardware and wasnot able to find anywhere that these port donot support buffered operation.

 

0 Kudos
Message 4 of 6
(4,346 Views)

Hi Kevin,

 

When I use port0 as DO and DI, everything works and I donot have any problems. The problem only happens when I try to use Port 1 or Port 2 as DI or as DO and I get the error that the buffered operation is not possible.

 

 

0 Kudos
Message 5 of 6
(4,345 Views)

It is in the X Series User Manual in Chapter 6 Digital I/O - http://www.ni.com/pdf/manuals/370784g.pdf#page=108 

"You can acquire digitial waveforms on the Port 0 DIO lines".

 

And http://www.ni.com/pdf/manuals/370784g.pdf#page=105 

"X Series device contain up to 32 lines of bidirection DIO signals on Port 0. In addition, X Series devices have up to 16 PFI signals that can function as static DIO signals".

 

The table in Chapter 3 defines Port 1 and Port 2 as PFI lines - http://www.ni.com/pdf/manuals/370784g.pdf#page=36 

"As a Port 1 or Port 2 digital I/O signal, you can individually configure each signal as an input or output."

But as stated above, only as a static input or output. You can perform a software-timed task on Port 1 or Port 2, but not a hardware-timed task (ie, no Finite or Continuous acquisition or generation).

 

Eric H.
Senior Applications Engineer - Product Analytics
Emerson T&M (NI)
0 Kudos
Message 6 of 6
(4,340 Views)