Chapter 4
Developing Your Application
©
National Instruments Corporation
4-9
VXIpc 770/870B Series User Manual
In NI-VXI 3.0 or later, when you enable for triggers or interrupts, only the
local controller is enabled. In the NI-VXI API functions for enabling
triggers and interrupts, the controller parameter is ignored. If you need to
enable a remote controller for triggers, use the MAX frame resource to map
the trigger back to the local controller.
The interrupt and trigger routing in the NI-VXI 3.0 or later low-level
drivers is somewhat different from the default routing in previous versions
of NI-VXI. Therefore, the compatibility layer may behave differently than
the original NI-VXI API with regard to these settings. In particular, if you
are receiving triggers on an external controller, you may need to modify the
trigger configuration on your extender module using MAX. In general,
interrupts are routed automatically based on the interrupt configuration the
resource manager detects. Whether the changed routing behavior affects
your program is application dependent.
Because VISA is an instrument-centric API, certain functions from the
more controller-centric NI-VXI API do not match perfectly with a VISA
counterpart. When an application enables an event with the NI-VXI API
compatibility layer, each logical address is enabled for that event
separately. For example, if the application enables an interrupt level, VISA
will enable the interrupt on each logical address, one at a time, until all the
devices are enabled. This means that some interrupts could be lost from
devices with higher numbered logical addresses. MAX provides an
option for users to pick which logical address is enabled first. Select
Tools»NI-VXI»VXI Options
. Set
Prioritized Signal LA
to the logical
address of the device that generates the events. This prevents possible loss
of events from that device.
Debugging
NI Spy and VISAIC are useful utilities for identifying the causes of
problems in your application.
NI Spy tracks the calls your application makes to National Instruments
programming interfaces, including NI-VISA, NI-VXI, and NI-488. NI Spy
highlights functions that return errors, so during development you can
quickly spot which functions failed during a program’s execution. NI Spy
can log the calls your program makes to these drivers so you can check
them for errors at your convenience, or use the NI Spy log as a reference
when discussing the problem with National Instruments technical support.
Figure 4-4 shows an example of a normal error returned from a call to
viMemAlloc
when no memory has been shared.