Using the GXFPGA driver functions

The following paragraphs describe the steps required to program the boards.

Initialization, HW Slot Numbers and VISA Resource  

The GXFPGA driver supports two device drivers HW and VISA which are used to initialize, identify and control the board. The user can use the GxFpgaInitialize to initialize the board‘s driver using HW and GxFpgaInitializeVisa to initialize using VISA. The following describes the two different methods used to initialize:

1.    Marvin Test Solutions' HW – This is the default device driver that is installed by the GXFPGA driver. To initialize and control the board using the HW use the GxFpgaInitialize (nSlot, pnHandle, pnStatus) function. The function initializes the driver for the board at the specified PXI slot number (nSlot) and returns boards handle. The PXI/PCI Explorer applet in the Windows Control Panel displays the PXI slot assignments. You can specify the nSlot parameter  in the following way:

 

PXI/PCI Explorer

2.    VISA – This is a third party library usually supplied by National Instruments (NI-VISA). You must ensure that the VISA installed supports PXI and PCI devices (not all VISA providers supports PXI/PCI). GXFPGA setup installs a VISA compatible driver for the GXFPGA board in-order to be recognized by the VISA provider. Use the GXFPGA function GxFpgaInitializeVisa (szVisaResource, pnHandle, pnStatus) to initialize the driver’s board using VISA. The first argument szVisaResource is a string that is displayed by the VISA resource manager such as NI Measurement and Automation (NI_MAX). It is also displayed by Marvin Test Solutions PXI/PCI Explorer as shown in the prior figure. The VISA resource string can be specified in several ways as the following examples demonstrate:

  1. Using chassis, slot: “PXI0::CHASSIS1::SLOT5”.

  2. Using the PCI Bus/Device combination:  “PXI9::13::INSTR” (bus 9, device 9).

  3. Using the alias: for example “COUNTER1”. Use the PXI/PCI Explorer to set the device alias.

Information about VISA is available at http://www.pxisa.org.

Board Handle

The GxFpgaInitialize and the GxFpgaInitializeVisa functions return a handle that is required by other driver functions in order to program the board. This handle is usually saved in the program as a global variable for later use when calling other functions. The initialize functions do not change the state of the board or its settings.

Reset

The Reset function sets the board to a known default state. A reset is usually performed after the board is initialized. See the Function Reference for more information regarding the reset function.

Error Handling

All the GXFPGA functions returns status - pnStatus - in the last parameter. This parameter can be later used for error handling. The status is zero for success status or less than zero for errors. When the status is error, the program can call the GxFpgaGetErrorString function to return a string representing the error. The GxFpgaGetErrorString reference contains possible error numbers and their associated error strings.

Driver Version

The GxFpgaGetDriverSummary function can be used to return the current GXFPGA driver version. It can be used to differentiate between the driver versions. See the Function Reference for more information.