Performing an AD Autocalibration

Universal Driver Documentation

Description

On supported boards (-AT boards), the user may auto-calibrate the board's A/D circuit in software, rather than undergoing a tedious process of manual calibration. Each A/D range has its own set of calibration settings for maximum accuracy. This function enables you to calibrate a single range or all ranges. To calibrate a single range, specify the range in the function call. To calibrate all ranges, specify 255 for the range.

Step-By-Step Instructions

Create and initialize an A/D auto-calibration settings structure (DSCADCALPARAMS).

Select the A/D range to calibrate. For an individual range, select 0-15. For all ranges, select 255.

Select the booot range. This is the range whose calibration settings will be recalled upon power-up.

Call dscADAutoCal() and pass it a pointer to this structure in order to calibrate the A/D circuit on the board for the selected range(s).

NOTE: Performing an A/D auto-calibration will take about 1-3 seconds per range, depending on the board type and the range.

Example of Usage for A/D Autocalibration

...
DSCB dscb;
DSCADCALPARAMS dscadcalparams;
BYTE result;

...

/* Step 1 */
dscadcalparams.adrange = 255;		// calibrate all A/D modes
dscadcalparams.boot_adrange = 8;		// set power-up A/D mode to +/-10V

/* Step 2 */
if ((result = dscADAutoCal(dscb, &dscadcalparams)) != DE_NONE)
		return result;
...


This page was last modified 19:59, 30 Jan 2004.
Copyright (c) 2004 Diamond Systems. All Rights Reserved.