User manual

Programmer’s Guide Page 13 of 64
3.2.4. VXI Identification
Instruments in IX20x VXI Carrier modules will also be found by the driver. The resource name will be in the form
“VXI[board]::[logical_addr]::INSTR” like “VXI0::1::INSTR”.
3.2.5. PXI VISA & LabViewRT Identification
The driver can also be used in the VISA environment. In this case the resource name has the following allowed
forms:
"PXI<bus>::<device>::INSTR"
"PXI0::<bus>-<device>::INSTR"
"PXI0::CHASSIS<chassis>::SLOT<slot>::INSTR"
3.2.6. Firmware initialization (AP-FAMILY/12-bit-FAMILY/AC/SC/TC)
In these modules the on-board FPGA’s (field-programmable gate arrays) contain processor logic needed to
efficiently execute several crucial functions. For Windows and Linux users, they will be automatically programmed
at startup before calibration. The standard initialization using Acqrs_init can be used.
The name for the FPGA program file is a synthesis of model, FPGA destination, and option information. The file
name suffix is always ".bit". The automatic initialization mentioned above will load the FPGA files as follows:
For the first time initialization of a module needing an FPGA file, the desired file will be searched for in the
working directory.
If the above doesn’t succeed then the working directory will be searched for a file
"AgMD1Fundamental.ini"
Finally the directories IVIROOT32\Driver\AgMD1 and IVIROOT64\Driver\AgMD1 will be searched for a
file "AgMD1Fundamental.ini”
The "AgMD1Fundamental.ini" file should contain the name of a directory which will also be searched for
the appropriate FPGA files. Here is a typical example of its contents:
[Acqiris]
fpgaPath=C:\Program Files\Acqiris\firmware
GeoMapPath=C:\Program Files\Acqiris\bin
The GeoMapPath entry will be described later in this chapter.
The final path used will be remembered and used for all subsequent demands for this module. In particular
this applies if AcqrsD1_configMode is used to change functionality.
3.2.7. Automatic Definition of MultiInstruments
The function AcqrsD1_multiInstrumentAutoDefine automatically searches for all sets of modules that are
connected with AS bus, and configures each such block as a single MultiInstrument. It then reports the total number
of instruments found, including individual modules without AS bus connections. You still need to retrieve the
instrumentID for each instrument by calling the function Acqrs_InitWithOptions afterwards, as shown below:
ViSession instrumentID[10];
long nbrInstruments;
ViStatus status;
ViString options = "";
status = AcqrsD1_multiInstrAutoDefine(options, &nbrInstruments);
// Retrieve the instrument identifiers
for (long i = 0; i < nbrInstruments; i++)
{
char resourceName[20];
sprintf(resourceName, "PCI::INSTR%d", i);
status = Acqrs_InitWithOptions(resourceName, VI_FALSE, VI_FALSE,
options, &(instrumentID[i]));
}