Chapter 3 Software Overview
© National Instruments Corporation
3-47
NI-VXI User Manual
Normally, VXI/VME interrupts are automatically acknowledged when
enabled via the function
EnableVXIint
. However, if the interrupts
are not enabled and the assertion of an interrupt is detected through
some method (such as
GetVXIbusStatus
), you can use
AcknowledgeVXIint
to acknowledge an interrupt and return the
status/ID value. If the controller parameter specifies an extended
controller,
AcknowledgeVXIint
specifies hardware on the VXI/VME
frame extender (if present) to acknowledge the specified interrupt.
AssertVXIint (controller, level, statusId)
AssertVXIint
asserts a particular VXI/VME interrupt level on a
specified controller (embedded or extended) and returns the specified
status/ID value when acknowledged. You can use
AssertVXIint
to
send any status/ID value to the VXI/VME interrupt handler configured
for the specified VXI/VME interrupt level.
AssertVXIint
returns
immediately (that is, it does not wait for the interrupt to be
acknowledged). You can call
GetVXIbusStatus
to detect if the
interrupt has been serviced. Use
DeAssertVXIint
to unassert a
interrupt that had been asserted using
AssertVXIint
but has not yet
been acknowledged.
DeAssertVXIint (controller, level)
DeAssertVXIint
unasserts the VXI/VME interrupt level on a given
controller that was previously asserted using the
AssertVXIint
function. You can use
AssertVXIint
to send any status/ID value to
the VXI/VME interrupt handler configured for the specified interrupt
level. You can call
GetVXIbusStatus
to detect if the interrupt has
been serviced. Use
DeAssertVXIint
to unassert a VXI/VME
interrupt that had been asserted using
AssertVXIint
but has not yet
been acknowledged.
Note:
Unasserting an interrupt may violate the VME and VXIbus specifications
if the interrupt has not yet been acknowledged by the interrupt handler.
DefaultVXIintHandler (controller, level, statusId)
DefaultVXIintHandler
is the sample handler for VXI/VME
interrupts, which is installed when the function
InitVXIlibrary
is
called. If VXI/VME interrupts are enabled (via
EnableVXIint
), the
VXI/VME interrupt handler for a specific logical address is called. You
must first call
RouteVXIint
to route VXI/VME interrupts to the
callback handler (as opposed to the signal processing routine).