VAST 5 channel, 24bit A/D Board (VADC24)

General Description

The VAST 24-bit analog to digital converter (VADC24) provides six programmable, high precision inputs suitable for applications where Analog input must be converted to a digital input at a 24 bit resolution; for example, when measuring a slowly changing signal.

Differential, pseudo-differential, unipolar and bipolar sampling modes are supported. The VADC24 is equipped with programmable filtering, gain, and calibration modes. A temperature sensor is built on to the board for monitoring the temperature of your SBC2000 environment.

Software Control

AIN_CONFIG()
AIN_CONFIG() selescts the peripheral you're working with and configures analog to digital conversions.

AIN_CONFIG(func, value)

Where:
"func"
is an integer representing the function being set. Refer to the documentation on the peripheral you are using to find out what func options are available for that peripheral.
"value"
is value that you want to set the function to. Refer to the documentation on the peripheral you are using to find out what values are available for that function.

Configuration Settings for VADC24

Func Setting Value Configuration
0 Select Peripheral 3 Selects VADC24
1 Input Organization 0 Pseudo-differential (default)
1 Differential
2 Polarity 0 Unipolar
1 Bipolar (default)
3 Gain 0 1 (default)
1 2
2 4
3 8
4 16
5 32
6 64
7 128
4 Word length and Burn-out currents 0 16-bit, currents off
1 24-bit, currents off
4 16-bit, currents on
5 24-bit, currents on
5 Filter Frequency 19 to 4000 See input filter frequency section
6 Calibration mode 0 to 7 See calibration section
7 Calibration channel 0 to 5 See calibration section
8 Program VADC24 0 Programs all of the above parameters and runs a calibration if necessary

AIN_CONFIG() need not be called before every conversion. Once extensions are configured, they will remain so until changed to use another peripheral or power is lost.

Note: after changing configuration data, conversions results will not be accurate for three to five conversion cycles.

When the VADC24 is selected using value = 3, the rest of the conversion parameters are automatically set to a default configuration.

AIN()
AIN() reads the specified AIN channel.

AIN(channel)

Where:
"channel"
is AIN channel you want to test. Refer to the documentation on the peripheral you are using to find out what channel options are available for that peripheral.

The return value ranges are as follows:

  Bits From To
Unipolar 16 bit 0 65535
Bipolar 16 bit -32768 32767
Unipolar 24 bit 0 16777215
Bipolar 24 bit -8388608 8388607
 

 

VADC24 Address Jumpers

AIN Connector

Pin Signal Pin Signal
1 Analog GND 2 Analog +5V
3 AIN0 4 AIN1
5 AIN2 6 AIN3
7 AIN4 8 AIN5
9 External References - 10 External References +

Input Voltage Ranges

Unipolar Mode

In unipolar mode, the input differential for zero and full scale results is:

Gain Input differential for zero scale result Input differential for full scale result
1 0 2.5V
2 0 1.25V
4 0 625mV
8 0 312.5mV
16 0 156.3mV
32 0 78.13mV
64 0 39.06mV
128 0 19.53mV
Bipolar Mode

In bipolar mode, the input differential for zero and full scale results is:

Gain Input differential for zero scale result Input differential for full scale result
1 -2.5V 2.5V
2 -1.25V 1.25V
4 -625mV 625mV
8 -312.5mV 312.5mV
16 -156.3mV 156.3mV
32 -78.13mV 78.13mV
64 -39.06mV 39.06mV
128 -19.53mV 19.53mV

Configuring Vesta Basic or the Vesta C library to use the VADC24, unipolar or bipolar conversions, differential or pseudo-differential conversions, input gain, input filter frequency, conversion accuracy (16 or 24 bit), and self-calibration modes is done through software using the VAIN_CONFIG() procedure. Once you have set each parameter the way you wish, you must make the procedure call CALL VAIN_CONFIG(8,0) In order to program the peripheral.

VADC24 Conversion Settings

Unipolar or Bipolar

To configure for unipolar or bipolar conversions, use the polarity parameter of the Init_VADC24 procedure call.

Parameter Value Polarity
0 Unipolar
1 Bipolar (default)

Differential or Pseudo-differential

The VADC24 supports differential input pairs (AIN1 & AIN2, AIN3 & AIN4, AIN5 & AIN6) or pseudo-differential input pairs (AIN1 through AIN5 paired with AIN6). To configure for either organization, use the type parameter of the Init_VADC24 procedure call.

Value of type Organization
0 Pseudo-differential (default)
1 Differential

Input Gain

Input Gain
1 (default)
2
4
8
16
32
64
128

A programmable gain amplifier is used on all inputs. Its gain range is between 1 and 128 in powers of 2. To set the input gain for all channels, use the gain parameter of the Init_VADC24 procedure call.

Note: when you change configuration data the conversion results get temporarily disrupted and the accuracy of the next 3 or 4 conversions after a configuration change cannot be guaranteed.

Gain should be set before running any calibrations.

Input Data Rate

The VADC24 is equipped with a programmable input filter that controls the rate of conversions. The data rate is programmed with the freq parameter to the Init_VADC24 procedure call. Allowable values for freq are in the range from 4.8 Hz to 1010 Hz.

Note: after changing configuration data, conversions results will not be accurate for three to five conversion cycles. The choice of data rate can dramatically affect the noise of the VADC24. The following table indicates effective resolution for various data rates and gain settings.

Effective bits of resolution

Executing Conversions

Once the VADC24 has been configured and programmed properly, conversion results become available as often as the filter frequency setting allows. This is done by calling the following procedure:

CALL AIN_VADC24(Cc)

Where Cc is the VAST address multiplied by 6 plus the number of the channel on the board to be converted.

Depending on the input organization (differential or pseudo-differential) the meaning of Cc differs according to the following table.

Cc Diff. Pair Pseudo-diff. Pair
0 AIN0 vs AIN5 AIN0 vs AIN1
1 AIN1 vs AIN5 AIN1 vs AIN0
2 AIN2 vs AIN5 AIN2 vs AIN3
3 AIN3 vs AIN5 AIN3 vs AIN2
4 AIN4 vs AIN5 AIN4 vs AIN5

Calibration

There are eight modes of input calibration available on the VADC24. Calibration modes are selected with the following sequence of procedure calls:

CALL Calibrate_VADC24(channel, Cm)

A self-calibration should always be performed on any channel before you start conversions on that channel. A system offset calibration should always be performed as part of the board initialization.

Cm Type of calibration When calibrated
0x00 Normal (no calibration) N/A
0x20 Self-calibration Immediately
0x40 Zero-scale system Immediately
0x60 Full-scale system Immediately
0x80 System offset Immediately
0xA0 Background Before every Conversion
0xC0 Zero-scale self Immediately
0xE0 Full-scale self Immediately

Calibration Registers

The results of any calibration are stored in one of three pairs of calibration registers on the VADC24. The registers are assigned to inputs according to the following table:

Cc Diff. Cal. Registers Pseudo-diff. Cal.Registers
0 Reg. Pair 0 Reg. Pair 0
1 Reg. Pair 0 Reg. Pair 1
2 Reg. Pair 1 Reg. Pair 2
3 Reg. Pair 1 Reg Pair 2
4 Reg. Pair 2 Reg. Pair 2
Normal

In this mode no calibration is run. This is the powerup default. Setting this mode will disable background calibrations if they are executing.

Self-Calibration

Zero-scale and full-scale calibrations are run on internally generated voltages for the selected channel.

Zero-Scale System Calibration

This performs a zero-scale calibration on the selected channel using an external voltage placed on the input. This voltage level will then be considered a zero-scale input on the selected input.

Full-Scale System Calibration

This performs a full-scale calibration on the selected channel using an external voltage placed on the input. This voltage level will then be considered a full-scale input on the selected input.

System-Offset Calibration

This mode performs a zero-scale calibration on an external level provided into the selected input. The result of the calibration is used as the offset of the VADC24 from the measured system.

Background Calibration

This mode is the only calibration that is not executed immediately upon a Calibrate_VADC24 call. Instead, a zero-scale system calibration is performed before every conversion. Background calibration mode has the effect of slowing conversion times by a factor of 6.

Zero-Scale Self Calibration

This is the same is the zero-scale system calibration except that an internally generated zero level input is used.

Full-Scale Self Calibration

This is the same is the full-scale system calibration except that an internally generated full-scale level input is used.

Output Word Length

The data word length can be set to either 16 bits or 24 bits. This is done with the size parameter of the Init_VADC24 procedure call.

Value of size Word length
16 16 bits (powerup default)
24 24 bits
Burn Out Currents

The VADC24 is equipped with the capability of generating a current that can be used to test if the transducer providing an input to the VADC24 has gone open or short-circuit. A 1ľA current is sourced on the positive leg of the input pair and sunk on the negative leg. In this state, a full-scale input reading indicates an open transducer, and a zero scale reading indicates a shorted transducer.

Burn-out currents are off at powerup. They can be turned on by OR'ing 0x02 to the op_mode parameter of the Init_VADC24 procedure call, or by OR'ing 0x02 into the cal_mode parameter of the Calibrate_VADC24 procedure call.

Burn-out currents can be turned off by calling Init_VADC24 or Calibrate_VADC24 without OR'ing a 0x02 into the op_mode or cal_mode parameter.

Temperature Measurement

The VADC24 is equipped with a precision temperature sensor that can be attached to AIN1 by installing jumper 6 in the CONFIG jumper block. Note that the temperature signal is relative to analog ground.

Temp. Range -400 to +850C
Sensitivity 1.9 mV / 0C
Output at 250C 560 mV +/-60mV
Using an Existing Reference

The 0V and 2.5V reference levels required by the ADC chip on the VADC24 are generated by on-board hardware. You have the option of providing your own reference levels externally (through the AIN connector pins 9 and 10). Jumpers 1-4 of the CONFIG jumper block select internal and external references. Installing jumpers 1 and 4 (and removing jumpers 2 and 3) configures the VADC24 to use internal references. Installing only jumpers 2 and 3 configures the VADC24 to use external references.

Measuring the Onboard Reference Level

You can measure the on-board 2.5 V reference level. Installing jumper 5 of the CONFIG jumper block will short the 2.5 V reference to the input used by AIN2. You can then read the level by running a conversion on channel 1 of the board using pseudo-differential mode.

Power Requirement

The VADC24 draws about 3 mA of current.

VADC24 Dimension Drawing

Dimensions are in inches.

VADC24 Schematic