User manual

Programmer’s Guide Page 62 of 66
Acqrs_InitWithOptions(resourceName, false, false, "CAL=FALSE", &instrID);
It is important to specify “CAL=FALSE” to prevent any calibration in the digitizer, which would destroy any
retained data.
2. Call the functions AcqrsD1_configHorizontal, AcqrsD1_configMemory, AcqrsD1_configVertical (for each
channel!) with the same parameters that were used in the original acquisition.
3. Call the function AcqrsD1_restoreInternalRegisters, with the parameters delayOffset and delayScale. In case
these parameters are not available (e.g. due to earlier software versions), you should use the values 20.0e-9 for
delayOffset and 5.0e-12 for delayScale.
4. Call the function AcqrsD1_readData to read the battery backed-up data.
Failing to restore the originally used digitizer parameters may result in erroneous data. After data recovery, and
before using the digitizer for any new acquisitions, don‟t forget to calibrate the instrument with the function
Acqrs_calibrate.
3.21. Reading the Instrument Temperature
The temperature of an instrument can be obtained with the following code:
long temperature; // will be in degrees C
Acqrs_getInstrumentInfo(instrID, "Temperature", &temperature);
When multiple digitizers are combined via AS bus to a MultiInstrument, use the strings "Temperature 0",
"Temperature 1"… to refer to the individual modules.
NOTE: The returned temperature value corresponds to the ambient temperature on the main printed-circuit board,
typically near the timebase circuit. It cannot represent all possible temperature values that are present on the circuit.
Values 60
o
C indicate that the circuit is near its operational limit, and a cooling failure occurred or better cooling
should be installed.
We recommend keeping the temperature as low as possible, since a 10
o
C reduction in circuit temperature is expected
to improve the mean-time-between-failures (MTBF) by a factor of 2.
We also recommend reading the temperature when the instrument is stopped. The read operation may generate small
signal perturbations through cross talk, if it is executed while an acquisition is in progress.
3.22. Building applications that can Hibernate
The Acqrs_powerSystem function was implemented to be called from a routine that treats Windows events. The code
below shows a standard treatment of such events:
switch (winMsgP->message)
{
case WM_POWERBROADCAST:
switch (winMsgP->wParam)
{
case PBT_APMRESUMEAUTOMATIC:
status = Acqrs_powerSystem(AqPowerOn, 0);
break;
case PBT_APMSUSPEND:
status = Acqrs_powerSystem(AqPowerOff, 0);
break;
default: // There are other power events, but we only show these two.
break;
}
break;
default:
break;
}
If such code is not available the Acqiris devices will not be useable when the PC becomes active after hibernation.