National Instruments NI PCIe-8361 User Manual

Page of 71
Chapter 3
Developing Your Application
© National Instruments Corporation
3-9
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. Consult the 
manual for your extender module for details. 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, and are installed by default with your NI-VXI 
installation.
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 3-4 shows an example of an error returned from a 
call to 
viMemAlloc
.