AD7714 Analog Devices, AD7714 Datasheet - Page 33

no-image

AD7714

Manufacturer Part Number
AD7714
Description
Manufacturer
Analog Devices
Datasheet

Specifications of AD7714

Resolution (bits)
24bit
# Chan
5
Sample Rate
19.2kSPS
Interface
Ser,SPI
Analog Input Type
Diff-Bip,Diff-Uni
Ain Range
(2Vref/PGA Gain) p-p,Uni (Vref)/(PGA Gain)
Adc Architecture
Sigma-Delta
Pkg Type
DIP,SOIC,SOP

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
AD7714AN-5
Manufacturer:
AD
Quantity:
433
Part Number:
AD7714ANZ-3
Manufacturer:
ADI/亚德诺
Quantity:
20 000
Part Number:
AD7714ANZ-5
Manufacturer:
ADI/亚德诺
Quantity:
20 000
Part Number:
AD7714ANZ3
Manufacturer:
ST
Quantity:
2 707
Part Number:
AD7714AR-5
Quantity:
6
Part Number:
AD7714AR-5
Manufacturer:
ADI/亚德诺
Quantity:
20 000
Part Number:
AD7714ARS-5
Quantity:
155
Part Number:
AD7714ARS-5
Manufacturer:
ADI/亚德诺
Quantity:
20 000
Part Number:
AD7714ARSZ-3
Manufacturer:
ADI/亚德诺
Quantity:
20 000
Part Number:
AD7714ARSZ-5
Manufacturer:
YAGEO
Quantity:
460 000
/* 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()
{
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;
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(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;
which tells the user that the data transfer is complete */
PORTC &= 0xfb; /* /CS is low */
SPDR = byteword;
while(!(SPSR & 0x80));
PORTC |= 0x4;
}
Read(int amount, int reglength)
{
int q;
SPCR = 0x3f;
SPCR = 0x7f;
DDRD = 0x10;
while(PORTC & 0x10);
PORTC & 0xfb ; /* /CS is low */
for(b=0;b<reglength;b++)
PORTC|=4; /* /CS is high */
}
REV. C
/* the only pin that is programmed here from the 68HC11 is the /CS and this is why the PC2 bit
{
Writetoreg(0x5f); /*set the next operation for 24 bit read from the data register */
Read(NUM_SAMPES,3);
}
{
SPDR = 0;
while(!(SPSR & 0x80));
*datapointer++=SPDR;
}
/* the read of the staus register and of the data register is needed to clear the interrupt
/* clear the interupt */
/* MOSI output, MISO input, SCK output */
/* /CS high */
/* make the /CS line high */
/* put the byte into data register */
/* wait for /DRDY to go low */
/* wait for /DRDY to go low */
/* read SPDR into store array via datapointer */
Table XV. C Code for Interfacing AD7714 to 68HC11
/* wait until port ready before reading */
–33–
AD7714
2

Related parts for AD7714