HP E1432A User's Guide

Using the HP E1432A

HP E1432A Interrupt Behavior

Interrupt Setup

For an example of interrupt handling see the program event.c in the examples directory.

The HP E1432A VXI module can be programmed to interrupt a host computer using the VME interrupt lines. VME provides seven such lines. Using hpe1432_setInterruptPriority, you can set up the HP E1432A module to use any one of them.

The HP 1432A can interrupt the host computer in response to different events. Using hpe1432_setInterruptMask you can specify a mask of events on which to interrupt. This mask is created by OR-ing together the various conditions for an interrupt. The following table shows the conditions that can cause an interrupt:

Interrupt Mask Bit Definitions
Define (in e1432.h)

HPE1432_IRQ_BLOCK_READY HPE1432_IRQ_MEAS_ERROR HPE1432_IRQ_MEAS_STATE_CHANGE HPE1432_IRQ_MEAS_WARNING HPE1432_IRQ_OVERLOAD_CHANGE HPE1432_IRQ_SRC_STATUS HPE1432_IRQ_TACHS_AVAIL

HPE1432_IRQ_TRIGGERHP E1432A Interrupt Handling
DescriptionScan of data ready in FIFOFIFO overflowMeasurement state machine changed state Measurement warningOverload status changedSource channel interruptRaw tach times ready for transfer to other modulesTrigger ready for transfer to other modules

To make the HP E1432A module do the interrupt, both a mask and a VME Interrupt line must be specified, by calling hpe1432_setInterruptMask and hpe1432_setInterruptPriority respectively. Once the mask and line have been set, and an interrupt occurs, the cause of the interrupt can be obtained by reading the HPE1432_IRQ_STATUS_REG register (using hpe1432_getInterruptReason). The bit positions of the interrupt mask and status registers match so the defines can be used to set and check IRQ bits.

3-29