欢迎访问ic37.com |
会员登录 免费注册
发布采购

AD7705BRUZ-REEL7 参数 Datasheet PDF下载

AD7705BRUZ-REEL7图片预览
型号: AD7705BRUZ-REEL7
PDF下载: 下载PDF文件 查看货源
内容描述: [3V/5V, 1 mW, 2-Channel Differential, 16-Bit Sigma-Delta ADC]
分类和应用: 光电二极管转换器
文件页数/大小: 44 页 / 470 K
品牌: ADI [ ADI ]
 浏览型号AD7705BRUZ-REEL7的Datasheet PDF文件第32页浏览型号AD7705BRUZ-REEL7的Datasheet PDF文件第33页浏览型号AD7705BRUZ-REEL7的Datasheet PDF文件第34页浏览型号AD7705BRUZ-REEL7的Datasheet PDF文件第35页浏览型号AD7705BRUZ-REEL7的Datasheet PDF文件第37页浏览型号AD7705BRUZ-REEL7的Datasheet PDF文件第38页浏览型号AD7705BRUZ-REEL7的Datasheet PDF文件第39页浏览型号AD7705BRUZ-REEL7的Datasheet PDF文件第40页  
AD7705/AD7706  
C Code for Interfacing AD7705 to 68HC11  
#include <math.h>  
#include <io6811.h>  
#define NUM_SAMPLES 1000 /* change the number of data samples */  
#define MAX_REG_LENGTH 2 /* this says that the max length of a register is 2 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(0x20); /* Active Channel is Ain1(+)/Ain1(−), next operation as write to the clock register */  
Writetoreg(0x0C); /* master clock enabled, 4.9512MHz Clock, set output rate to 50Hz*/  
Writetoreg(0x10); /* Active Channel is Ain1(+)/Ain1(−), next operation as write to the setup register */  
Writetoreg(0x40); /* gain = 1, bipolar mode, buffer off, clear FSYNC and perform a Self Calibration*/  
while(PORTC & 0x10); /* wait for /DRDY to go low */  
for(a=0;a<NUM_SAMPLES;a++);  
{
Writetoreg(0x38); /*set the next operation for 16 bit read from the data register */  
Read(NUM_SAMPES,2);  
}
}
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 status 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)  
Rev. C | Page 36 of 44  
 
 复制成功!