Pickering GhostCard driver example
A GhostCard Library is available for supporting Pickering products that allows multiple switch operations to be performed in one transaction across the control interface while using simple setting instruction (like using crosspoint address on matrices). The library can be used on LXI, PXI or PCI products when controlled through a Windows operating system. The library speeds up operation by avoiding multiple serial transactions, reducing the delay created by relay settling times and control interface latency.
More general information on GhostCard can be found here Ghost
A communication session to the LXI device is established using Piplx library function. This provides a session handle to the remote LXI device which must be used by GhostCard functions in all subsequent communication.
A specified card on the remote LXI device is opened by a GhostCard function and a handle to that card obtained. This handle must be used in all subsequent function calls to that card in a similar way to Piplx library function calls.
To operate multiple crosspoints switches, the GhostOpCrosspoint function may be used specifying the LXI handle, the card handle then the sub-unit to access the crosspoints locations and their state.
GhostOpCrosspoint function does not get executed n the physical LXI switching system, it allows the user to create and store all the switch states in the local host memory.
A function GhostCommitSubunitToCard copies all the states from the memory and sends the states to the LXI switch.
In the example below the crosspoints at (x,y) = (1,1), (1,2), (1,3) and (1,4) on the first sub-unit of the opened card are to be closed.
After use the card should be closed and the LXI session released to free the card and LXI device for other use.
The text for this code example can be found in the file here which allows the code to copied
Other GhostCard Examples
The installation package for GhostCard includes other examples including LabView and LabWindows and further C++ examples. Below is an image of a LabView example
There are other ways to control the switches, including a function to set the entire matrix with a single command.
The user should refer to detailed GhostCard documentation for the driver to be found in the installation folder.