2
AD7714
REV. C
–33–
Table XV. C Code for Interfacing AD7714 to 68HC11
/* This program has read and write routines for the 68HC11 to interface to the AD7714 and the sample
program sets the various registers and then reads 1000 samples from the part. */
#include <math.h>
#include <io6811.h>
#define NUM_SAMPLES 1000 /* change the number of data samples */
#define MAX_REG_LENGTH 3 /* this says that the max length of a register is 3 bytes */
Writetoreg (int);
Read (int,char);
char *datapointer = store;
char store[NUM_SAMPLES*MAX_REG_LENGTH + 30];
void main()
{
/* the only pin that is programmed here from the 68HC11 is the /CS and this is why the PC2 bit
of PORTC is made as an output */
char a;
DDRC = 0x04; /* PC2 is an output the rest of the port bits are inputs */
PORTC | = 0x04; /* make the /CS line high */
Writetoreg(0x27); /* set the channel AIN6/AIN6 and set the next operation as write to the filter high
register */
Writetoreg(0x4f); /* set Bipolar mode, 24 bits, boost off, all 4 MSBs of filterword to 1 */
Writetoreg(0x37); /* set the next operation as a write to the filter low register */
Writetoreg(0xA0); /* max filter word allowed for low part of the filterword */
Writetoreg(0x17); /* set the operation as a write to the mode register */
Writetoreg(0x20); /* set gain to 1, burnout current off, no filter sync, and do a self calibration */
while(PORTC & 0x10); /* wait for /DRDY to go low */
for(a=0;a<NUM_SAMPLES;a++);
{
Writetoreg(0x5f); /*set the next operation for 24 bit read from the data register */
Read(NUM_SAMPES,3);
}
}
Writetoreg(int byteword);
{
int q;
SPCR = 0x3f;
SPCR = 0X7f; /* this sets the WiredOR mode(DWOM=1), Master mode(MSTR=1), SCK idles high(CPOL=1), /SS
can be low always (CPHA=1), lowest clock speed(slowest speed which is master clock /32 */
DDRD = 0x18; /* SCK, MOSI outputs */
q = SPSR;
q = SPDR; /* the read of the staus register and of the data register is needed to clear the interrupt
which tells the user that the data transfer is complete */
PORTC &= 0xfb; /* /CS is low */
SPDR = byteword; /* put the byte into data register */
while(!(SPSR & 0x80)); /* wait for /DRDY to go low */
PORTC |= 0x4; /* /CS high */
}
Read(int amount, int reglength)
{
int q;
SPCR = 0x3f;
SPCR = 0x7f; /* clear the interupt */
DDRD = 0x10; /* MOSI output, MISO input, SCK output */
while(PORTC & 0x10); /* wait for /DRDY to go low */
PORTC & 0xfb ; /* /CS is low */
for(b=0;b<reglength;b++)
{
SPDR = 0;
while(!(SPSR & 0x80)); /* wait until port ready before reading */
*datapointer++=SPDR; /* read SPDR into store array via datapointer */
}
PORTC|=4; /* /CS is high */
}
AD7714
REV. C–34–
arranged in a bridge network and gives a differential output
voltage between its OUT(+) and OUT(–) terminals. With rated
full-scale pressure (in this case 300 mmHg) on the transducer,
the differential output voltage is 3 mV/Volt of the input voltage
(i.e., the voltage between its IN(+) and IN(–) terminals).
Assuming a 5 V excitation voltage, the full-scale output range
from the transducer is 15 mV. The excitation voltage for the
bridge is also used to generate the reference voltage for the
AD7714. Therefore, variations in the excitation voltage do not
introduce errors in the system. Choosing resistor values of
24␣ k and 15 k as per the diagram give a 1.92 V reference
voltage for the AD7714 when the excitation voltage is 5 V.
Using the part with a programmed gain of 128 results in the full
scale input span of the AD7714 being 15 mV which corresponds
with the output span from the transducer.
APPLICATIONS
The on-chip PGA allows the AD7714 to handle an analog input
voltage range as low as 10 mV full-scale with V
REF
= +1.25␣ V.
The differential inputs of the part allow this analog input range
to have an absolute value anywhere between AGND and AV
DD
when the part is operated in unbuffered mode. It allows the user
to connect the transducer directly to the input of the AD7714.
The programmable gain front end on the AD7714 allows the
part to handle unipolar analog input ranges from 0 mV to
+20␣ mV to 0 V to +2.5␣ V and bipolar inputs of ±20 mV to
±2.5 V. Because the part operates from a single supply these
bipolar ranges are with respect to a biased-up differential input.
Pressure Measurement
One typical application of the AD7714 is pressure measure-
ment. Figure 12 shows the AD7714 used with a pressure trans-
ducer, the BP01 from Sensym. The pressure transducer is
CLOCK
GENERATION
OUT+
IN+
OUT–
IN–
AUTO-ZEROED
SD
MODULATOR
CHARGE BALANCING A/D
CONVERTER
DIGITAL
FILTER
AV
DD
1mA
BUFFER
AV
DD
SERIAL INTERFACE
REGISTER BANK
STANDBY
SYNC
MCLK IN
MCLK OUT
1mA
REF IN (+)
REF IN (–)
AGND
DGND
BUFFER
DOUT
DIN
CS
SCLK
POL
DRDY
RESET
24kV
15kV
DV
DD
AD7714
AGND
+5V
EXCITATION VOLTAGE = +5V
AIN1
AIN2
AIN3
AIN4
AIN5
AIN6
A = 1–128
SWITCHING
MATRIX
PGA
Figure 12. Pressure Measurement Using the AD7714
2
AD7714
REV. C
–35–
CLOCK
GENERATION
AUTO-ZEROED
SD
MODULATOR
CHARGE BALANCING A/D
CONVERTER
DIGITAL
FILTER
AV
DD
1mA
BUFFER
AV
DD
SERIAL INTERFACE
REGISTER BANK
STANDBY
SYNC
MCLK IN
MCLK OUT
1mA
REF IN (+)
REF IN (–)
AGND
DGND
BUFFER
DOUT
DIN
CS
SCLK
POL
DRDY
RESET
DV
DD
AD7714
DV
DD
GND
+5V
AIN1
AIN2
AIN3
AIN4
AIN5
AIN6
C
C
V
OUT
AD780
THERMOCOUPLE
JUNCTION
+5V
+V
IN
A = 1–128
AGND
R
R
SWITCHING
MATRIX
PGA
Figure 13. Thermocouple Measurement Using the AD7714
Temperature Measurement
Another application area for the AD7714 is in temperature
measurement. Figure 13 outlines a connection from a thermo-
couple to the AD7714. In this application, the AD7714 is oper-
ated in its buffered mode to allow large decoupling capacitors
on the front end to eliminate any noise pickup which there may
have been in the thermocouple leads. When the AD7714 is
operated in buffered mode, it has a reduced common-mode
range. In order to place the differential voltage from the thermo-
couple on a suitable common-mode voltage, the AIN2 input of
the AD7714 is biased up at the reference voltage, +2.5␣ V.

AD7714ARZ-3

Mfr. #:
Manufacturer:
Analog Devices Inc.
Description:
Analog to Digital Converters - ADC CMOS 3V/5V 500uA 24B Signal Condition
Lifecycle:
New from this manufacturer.
Delivery:
DHL FedEx Ups TNT EMS
Payment:
T/T Paypal Visa MoneyGram Western Union