Accessing Cards
Resource names
The VISA resource name supplied to pipx40_init specifies the Pickering card to be opened. A typical example might be "PXI0::15::INSTR", which targets the card at the logical location PXI bus = 0, slot = 15. The VISA environment commonly allows the setting up of aliases, so that for example the name "SWITCH_CARD" can be assigned to represent "PXI0::15::INSTR". A program can then open the card using the resource name "SWITCH_CARD" and if the card's location is changed subsequently it is only necessary to alter the alias, instead of editing the program.
Instrument handles
When a card is successfully opened by pipx40_init, VISA returns an Instrument handle associated with the card. This handle is then used as necessary to specify the card in other function calls.
Sub-units
Pickering PXI cards contain one or more independently addressable functional blocks, or sub-units. Sub-unit numbers begin at 1, and separate sequences are used for input and output functions. This number is used in function calls to access the appropriate block. Generally, sub-unit numbers correspond directly to the bank numbers specified in hardware documentation.
Sub-unit examples:
Model |
Configuration |
INPUT sub-unit #1 |
OUTPUT sub-unit #1 |
OUTPUT sub-unit #2 |
OUTPUT sub-unit #3 |
40-110-021 |
16 SPDT switches |
None |
16 SPDT switches |
None |
None |
40-290-121 |
Dual Programmable resistors + 16 SPDT switches |
None |
Resistor #1 |
Resistor #2 |
16 SPDT switches |
40-490-001 |
Digital I/O |
16-channel inputs |
32-channel outputs |
None |
None |
40-511-021 |
Dual 12 x 4 matrix |
None |
12 x 4 matrix #1 |
12 x 4 matrix #2 |
None |
Sub-unit characteristics
The numbers of input and output sub-units in a card can be obtained using function pipx40_getSubCounts.
Sub-unit type and dimensions can be obtained using functions:
pipx40_getSubType - as a text string
pipx40_getSubInfo - in numerical format
pipx40_getSubType type desc. |
pipx40_getSubInfo type value |
Characteristics |
INPUT |
1 |
Digital inputs. |
SWITCH |
1 - pipx40_TYPE_SW |
Uncommitted switches. Switches can be selected in any arbitrary pattern. |
MUX |
2 - pipx40_TYPE_MUX |
Multiplexer, single channel. Only one channel can be selected at any time. |
MUXM |
3 - pipx40_TYPE_MUXM |
Multiplexer, multi channel. Any number of channels can be selected simultaneously. |
MATRIX |
4 - pipx40_TYPE_MAT |
Matrix, LF. Multiple crosspoints may be closed on any row or column, though there may be a limit on the total number that can be closed simultaneously. Some matrices intended for RF use are also characterised as this type, though closure of multiple crosspoints on a row or column will inevitably compromise RF performance. |
MATRIXR |
5 - pipx40_TYPE_MATR |
Matrix, RF. A matrix intended for RF use, generally permitting the closure of only one crosspoint on each row and column. |
DIGITAL |
6 - pipx40_TYPE_DIG |
Digital outputs. Outputs can be energised in any arbitrary pattern. |
RES |
7 - pipx40_TYPE_RES |
Programmable resistor. |
ATTEN |
8 - pipx40_TYPE_ATTEN |
Programmable RF attenuator. |
PSUDC |
9 - pipx40_TYPE_PSUDC |
DC power supply. |