Other VXI Resource Classes and VISA

NI-VISA

Other VXI Resource Classes and VISA

For certain applications, such as asserting interrupts or triggers, it may be necessary to access the VXI mainframe or chassis ("backplane") directly. VISA provides the BACKPLANE resource for this purpose, where each VXI mainframe can is accessed using the VISA resource string "VXI<system>::<mainframe number>::BACKPLANE". The BACKPLANE resource encapsulates the operations and properties of each mainframe (or chassis) in the VXI system, and lets a controller query and manipulate specific lines on a specific mainframe in a given VXI system. The operations viMapTrigger, viUnmapTrigger, viAssertTrigger, and the event VI_EVENT_TRIG supported on this resource allow the user to map, unmap, assert, and receive hardware triggers. You can also use viAssertUtilSignal, viAssertIntrSignal, VI_EVENT_VXI_VME_SYSFAIL, and VI_EVENT_VXI_VME_SYSRESET to assert and receive various utility and interrupt signals. This includes advanced functionality that might not be available in all implementations or on all controllers.

It is possible to configure your VXI controller to be a Word Serial servant in your VXI system, with another controller as its commander. For such situations, VISA provides another class of asynchronous events associated with the Word Serial protocol: the Word Serial Servant protocol. Using the VISA SERVANT resource, your device can act as a servant, which means that it can use VI_EVENT_IO_COMPLETION to respond to requests from a Word Serial commander. This resource is accessed using "VXI<system>::SERVANT" and encapsulates the operations and properties of the capabilities of a device and a device's view of the system in which it exists. The SERVANT resource exposes the device-side functionality of the device associated with the given resource. This functionality is somewhat unusual for a VXI controller, and in most cases you will never need to use the SERVANT resource. The SERVANT resource provides the complementary functions for the message-based operations discussed above, and therefore implements the servant side viRead, viWrite, etc. for buffer reads and writes, viPrintf, viScanf, etc. for formatted I/O, and asynchronous message-based notification events. The resource also provides the ability to assert and receive interrupt and utility signals.