From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

VISA Flush I/O Buffer Mask: 16 vs. 64

Can anyone please explain the difference between assigning mask values of 16 and 64 when using the VISA Flush I/O Buffer function to flush the receive buffer? In the documentation for the function, it says that using 64 for the mask "does not perform any I/O to the device" and this seems to be the only thing that distinguishes it from 16. However, I can't find anything that explains what this means or how mask = 16 does perform I/O.

 

Thanks!

0 Kudos
Message 1 of 3
(2,579 Views)

Hi

 

I'm not completely sure if this is what are you looking for, but it says on the link you attached on the 16 maks "Flushes and discards contents of the receive buffer (same as 64)". So basically is the same as 64.

 

Greetings

0 Kudos
Message 2 of 3
(2,527 Views)

What do you mean when you say 16 "does perform IO?"

 

It's dealing with the receive buffer, which is a buffer located on the receiving device. If you flush this local buffer, the connected device doesn't do anything. If this was a *send* buffer, then you could have two different behaviors- you could either flush it by discarding, or flush it by sending it to the device. With a receive buffer, either the device has sent you something already or it has not- it has nothing to do with the receive buffer.

 

I'm pretty sure they're both the same.

0 Kudos
Message 3 of 3
(2,521 Views)