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.

VXI and VME

cancel
Showing results for 
Search instead for 
Did you mean: 

Is the VXI bus timing on an 870 using VIC the same as I will get from my application program ?

I have a 3rd party instrument that interferes with interrupts on modules in higher numbered slots. This instrument just passes the daisy chain along, but I suspect it is responding when it should not during an interrupt ack cycle. VIC interrupt ACK worked fine. Is the VXI bus timing fixed by the controller ? Is what I see on the bus with VIC what I will get using VISA calls?
0 Kudos
Message 1 of 4
(6,817 Views)
VIC is the VXI Interactive Control utility, so it uses NI-VXI functions to communicate with the instrument/bus. NI-VISA also has an interactive control utility called VISA Interactive Control. Since your program uses VISA functions, I would recommend this utility to interactively test the functionality of your program. The performance you see in the interactive control utilities should be the same as the performance you observe programmatically.
0 Kudos
Message 2 of 4
(6,817 Views)
Thanks, Yes this makes sense to use the VISA /I/C. But why do I not see a way to acknowledge interrupts in this utility like there is with VXI /I/C?
0 Kudos
Message 3 of 4
(6,817 Views)
In VISA, you use VISA Enable Event to configure VISA with what type of event to watch for (such as interrupts). Then use VISA Wait on Event to actually wait for the interrupt to be generated and then acknowledged. Finally, you use VISA Disable Event before ending the VISA session.

You will find tabs that correspond with these names in VISA Interactive Control. First use the Enable Event, select the event type and whether you want a queue or handler mechanism (I would suggest queue), and press Execute. Then go to the Wait on Event tab, set your timeout, and press Execute. As long as the interrupt occurs before the timeout period has elapsed, you will see the interrupt information returned. You can Execute Wait on Event numerous time
s and it will return the next interrupt in queue. Before closing the VISA window, Execute Disable Event.
0 Kudos
Message 4 of 4
(6,817 Views)