任务三、AD7705的应用
AD7705中文资料

参数 静态特性 无丢失代码 输出噪声 积分非线性 2 单极性偏移误差 单极性失调漂移 4 双极性零误差 双极性零漂移 4
正满标度误差 5 满标度漂移 4.6 增益误差 7 增益漂移 4,8 双极性负满标度误差 2 双极负满标度漂移 4
模拟输入/基准输入 输入共模抑制(CMR)2 VDD=5V
增益 1 增益=21 增益=41 增益=8→128 VDD=3V 增益=11 增益=21 增益=41 增益=8→128 Normal-Mode50Hz 抑制 2 Normal-Mode60Hz 抑制 2 共模 50Hz 抑制 2 共模 60Hz 抑制 2 绝对/共模 REFIN 电压 2 绝对/共模 AIN 电压 2,9
绝对/共模 AIN 电压 2,9
AIN DC 输入电流 2 AIN 采样电容 2 AIN 差分电压范围 10
AIN 输入采样率,fs
基准电压输入范围 REFIN(+)-REFIN(-)电压
B级1
单位
16 见表 I 和 III ±0.003 见注 3 0.5 见注 3 0.5 0.1 见注 3 0.5 见注 3 0.5 ±0.003 1 0.6
封装选项 N-16 R-16 RU-16
PlasticDIP SOIC TSSOP
N-16 R-16 RU-16
2.1 极限参数
(TA=+25℃,除非另有说明) VDD 对 GND 模拟输入电压对 GND 基准输入电压对 GND 数字输入电压对 GND 数字输出电压对 GND 工作温度范围(商业级,B) 储存温度范围 结温 功耗(塑料 DIP 封装) θJA 热阻 引脚温度(焊接,10 秒) 功耗(塑料 SOIC 封装) θJA 热阻 引脚温度(焊接) 汽相(60 秒) 红外线(15 秒) 功耗(SSOP 封装) θJA 热阻 引脚温度(焊接) 汽相(60 秒) 红外线(15 秒) 抗 ESD
AD7705在货车超偏载检测中的应用

1 AD7 0 7 5工作 原 理
AD 75的内部 结构 如 图 l所示 , 采 用 ∑一 70 它 △转换 技术 实现 1 6位无 丢失 代码 的 A/ D转 换 。选 定 的模 拟输 入信 号被 送 到模拟 调 理 电路 的增益 可编
is s t h, a i r q e c i n l n O o . n t i c wic r d o f e u n y sg a s a d S n I h s
寄 存器 可对 数字 滤 波 器 进行 编程 , 节 滤 波 器 的 截 调
止 点和输 出更新 率 。
YU Xio—h a HUANG i t l C a a. Ca —l l HE An—h a i。 N u
( u a i e st fS in e a d Te h o o y. a g a 1 2 1 Ch n ) H n n Un v r i o ce c n e n l g Xin t n 4 1 0 . i a y
就具 有 十分 重要 的意 义 。 目前 , 内外 对 超 偏 载 的 国
存在 工频信 号 、 冲发 生器 、 脉 电子 开 关和 射 频信号 等
干扰 源, 严重影 响 了超 偏 栽检 测传 感 器的信 号拾取 。 利 用 AD 7 5在 A/ 转 换 环 节 中 内置 的信 号 调 理 70 D
~一 一 一 ~ 一 一
t eds u b n eef ciey, n i l y t e d sg h it r a c fe tv l a d smp i h e i n f
AD7705770616位ΣΔAD转换器原理及其应用

AD7705 7706 16位Σ ΔA D转换器原理及其应用AD7705/7706 16位Σ-ΔA/D转换器原理及其应用AD7705/7706是 AD公司新推出的16位Σ-ΔA/D转换器。
器件包括由缓冲器和增益可编程放大器(PGA)组成的前端模拟调节电路,Σ-Δ调制器,可编程数字滤波器等部件。
能直接将传感器测量到的多路微小信号进行A/D转换。
这两种器件还具有高分辨率、宽动态范围、自校准、优良的抗噪声性能以及低电压低功耗等特点,非常适合应用在仪表测量、工业控制等领域。
一.主要特点1. AD7705:两个全差分输入通道的ADC2. AD7706:三个准差分输入通道的ADC3. 16位无丢失代码4. %非线性5. 可编程增益:1、2、4、8、16、32、64、1286. 可编程输出数据更新率7. 可选择输入模拟缓冲器8. 自校准和系统校准9. 三线串行接口,QSPITM,MICROWIRETM和DSP兼容或5V工作电压电压时,最大功耗为1mW13. 等待模式下电源电流为8μA二.功能框图和引脚排列引脚排列如图1所示,功能框图见图2,,AD7706部分引脚(6,7,8,11)与图1 AD7705的引脚AD7705不同,已标注在图中括号内。
图 2 AD7705/7706功能框图三.应用说明AD7705/7706是完整的16位A/D转换器。
外接晶体振荡器、精密基准源和少量去耦电容,即可连续进行A/D转换。
下面对器件的几个重要部分和特性作简要说明。
1.增益可编程放大器和采样频率AD7705包括两个全差分模拟输入通道,AD7706包括三个准差分模拟输入通道。
片内的增益可编程放大器PGA可选择1、2、4、8、16、32、64、128八种增益之一,能将不同摆幅范围的各类输入信号放大到接近A/D转换器的满标度电压再进行A/D转换,这样有利于提高转换质量。
当电源电压为5V,基准电压为时,器件可直接接受从0~+20mV至0~+摆幅范围的单极性信号和从0~±20mV至0~±范围的双极性信号。
AD7705

收稿日期:2002-03-1516位2-∃A D转换器AD7705与微控制器的接口设计I n terface D esign of16b2-∃A D Converter AD7705and M icrocon troller黄光辉 董天临H uang Guanghu i Dong T ian lin(华中科技大学电信系 武汉 430074)(D epart m ent of E lectronic and Info r m ati on,H uazhong U niversity of Science and Techno l ogy,W uhan,430074,Ch ina)摘 要 介绍了16位2-∃A D转换器AD7705的特点、结构和应用,并举例说明这种串行输入 输出的A D转换器与微控制器的一般接口方式,指出了微控制器对AD7705片内寄存器编程的关键,并且给出了数据手册中没有的C51接口读写程序。
关键词 2-∃ A D转换器 数字滤波器 增益可编程放大器 AD7705是AD公司新推出的16位2-∃A D转换器。
器件包括由缓冲器和增益可编程放大器(PGA)组成的前端模拟调节电路,2-∃调制器,可编程数字滤波器等部件。
能直接将传感器测量到的多路微小信号进行A D转换。
这种器件还具有高分辨率、宽动态范围、自校准、优良的抗噪声性能以及低电压低功耗等特点,非常适合仪表测量、工业控制等领域的应用。
它采用三线串行接口,有两个全差分输入通道,能达到01003%非线性的16位无误码数据输出,其增益和数据输出更新率均可编程设定,还可选择输入模拟缓冲器,以及自校准和系统校准方式。
工作电压3V或5V。
3V电压时,最大功耗为1mW,等待模式下电源电流仅为8ΛA。
1 内部结构AD7705是完整的16位A D转换器。
内部结构如图1。
若外接晶体振荡器、精密基准源和少量去耦电容,即可连续进行A D转换。
它采用了成本较低但能获得极高分辨率的2-∃转换技术,可以获得16位无误码数据输出。
AD7705原理及其在电子秤称重系统中的应用

AD7705原理及其在电子秤称重系统中的应用黄昆(攀枝花学院电信学院,四川攀枝花617000)摘要:AD7705是AD公司新推出的一种基于Σ-Δ转换技术16位A/D转换芯片,可用于测量低频模拟信号。
它具有分辨率高、增益可编程、动态范围广、自校准、功耗低等特点,因而非常适合于工业控制、仪表测量等领域。
关键词:Σ-Δ型A/D转换;AD7705;电子秤称重系统在工业控制、智能仪器仪表等许多应用场合需要16位以上的高精度测量,而传统的积分型和逐次比较型A/D转换器实现起来难度较大,且成本很高。
近年来兴起的Σ-Δ转换技术却能以较低的成本获得极高的分辨率。
AD7705是AD公司新推出的一种基于Σ-Δ转换技术16位A/D转换芯片,可用于测量低频模拟信号。
它具有分辨率高、增益可编程、动态范围广、自校准、功耗低等特点,因而非常适合于工业控制、仪表测量等领域。
一、Σ-Δ型A/D转换技术Σ-Δ转换器又称为过采样转换器,具有相对简单的结构。
它由Σ-Δ模拟调制器及数字滤波器构成(图1)。
调制器的结构非常近似于双斜率ADC,包括一个积分器和一个比较器,以及含有一个1位DAC的反馈环。
这个内置的DAC仅仅是一个开关,它将积分器输入切换到一个正或负的参考电压。
图1Σ-Δ转换器的结构窄带信号送入Σ-△ADC后被以非常低的分辨率(1位)进行量化,但采样频率却非常高,如2MHz或更高。
经数字滤波处理后这种过采样被降低到一个比较低的采样率,如8kHz左右,同时ADC的分辨率(即动态范围)被提高到16位或更高。
这种Σ-△技术在模数转换器市场上占据了很重要的位置。
它具有三个主要优势:①低价格、高性能;②集成化的数字滤波;③与DSP技术的兼容性便于实现系统集成。
二、AD7705原理1.内部结构AD7705内部由多路模拟开关(MUX)、缓冲器、可编程增益放大器(PGA)、Σ-Δ调制器、数字滤波器、基准电压输入、时钟电路及串行接口组成(图2)。
AD7705的双通道应用程序

AD7705的双通道应用程序#include<reg52.h>#define CH1 1 /*AD7705输入通道IN1*/#define CH2 2 /*AD7705输入通道IN2*/#define BIPOLAR 0 /*AD7705双极性输入*/#define UNIPOLAR 1 /*AD7705单极性输入*/#define AD_CLK_WIDTH 1 /*AD7705串口时钟脉冲宽度*/sbit AdClk=P1^0; /*AD7705时钟脉冲*/sbit AdDin=P1^1; /*AD7705数据输入脉冲*/sbit AdDout=P1^2; /*AD7705数据输出的反相脉冲*/sbit AdDrdy=P1^3; /*指定转换标志位*/sbit AdReset=P1^4; /*复位*/void Wait7705(unsigned int t);/* AD7705软件延时 */void WriteByte7705(unsigned char x);/* 向AD7705写入一个字节 */unsigned int ReadWord7705(void);/* 从AD7705读一个字节 */void Reset7705(void);/* AD7705通信端口复位 */void Init7705_1();void Init7705_2();unsigned int GetData7705_ch1();/* 读AD7705转换数据输入通道channel ----1=IN1,2=IN2;*/ unsigned int GetData7705_ch2();/* 读AD7705转换数据输入通道channe2 ----1=IN1,2=IN2;*/void main(){_nop_();_nop_();_nop_();AdClk=1; //AD7705时钟脉冲AdDin=1; //AD7705数据输入脉冲AdDout=1; //AD7705数据输出的反相脉冲AdReset=1;Wait7705(100);//软件延时AdReset=0; //复位Wait7705(100);AdReset=1;Wait7705(100);while(1){get_ad();}}void Wait7705(unsigned int t)/* AD7705软件延时 */ {for( ;t>0 ;t-- );}/* 向AD7705写入一个字节 */void WriteByte7705(unsigned char x){unsigned char i;for (i=0;i<8;i++){AdClk=0;Wait7705(AD_CLK_WIDTH);AdDin=(bit)(x&0x80);Wait7705(AD_CLK_WIDTH);AdClk=1;Wait7705(AD_CLK_WIDTH);x<<=1;}}/* 从AD7705读一个字 */unsigned int ReadWord7705(void){unsigned char i;unsigned int x ;AdClk=1;for(i=0,x=0;i<16;i++){AdClk=0;Wait7705(AD_CLK_WIDTH);x<<=1;if(AdDout)x|=0x01;AdClk=1;Wait7705(AD_CLK_WIDTH);}return x;}/* AD7705通信端口复位 */void Reset7705(void){unsigned char i;for(i=0;i<64;i++){ /* 多于连续32个 DIN=1 使串口复位 */AdClk=0;Wait7705(AD_CLK_WIDTH);AdDin =1;Wait7705(AD_CLK_WIDTH);AdClk=1;Wait7705(AD_CLK_WIDTH);}}void Init7705_1(){unsigned char i;for(i=10;i>0;i--){WriteByte7705(0xff);} //持续DIN高电平写操作,恢复AD7705接口Reset7705(); /* 防止串口失步 */WriteByte7705(0x20); /* 写ch0 clock register */WriteByte7705(0x00); /* 2.4576MHz时钟,20Hz数据更新速率 */WriteByte7705(0x10); /*选择设置寄存器,使用chnanel 1*/WriteByte7705(0x44);}void Init7705_2(){unsigned char i;for(i=10;i>0;i--){WriteByte7705(0xff);} //持续DIN高电平写操作,恢复AD7705接口 Reset7705(); /* 防止串口失步 */WriteByte7705(0x21); /* 写ch1 clock register */WriteByte7705(0x00); /* 2.4576MHz时钟,20Hz数据更新速率 */WriteByte7705(0x11); /*选择设置寄存器,使用chnanel 2*/ WriteByte7705(0x44);}/* 读AD7705转换数据输入通道channel ----1=IN1,2=IN2;*/ unsigned int GetData7705_ch1(){unsigned int temp1=0;Init7705_1();Wait7705(10);while(AdDrdy==1); //数据准备好WriteByte7705(0x38);temp1=ReadWord7705();//读取return temp1;}/* 读AD7705转换数据输入通道channe2 ----1=IN1,2=IN2;*/ unsigned int GetData7705_ch2(){unsigned int temp2=0;Init7705_2();Wait7705(10);while(AdDrdy==1) //数据准备好WriteByte7705(0x39);temp2=ReadWord7705();//读取return temp2;}。
AD7705 及其应用
AD7705/06的PGA可通过指令设定,对不同幅度的输入信号实现1、2、4、8、16、32、64和128倍的放大,因此AD7705/06芯片既可接受从传感器送来的低电平输入信号,亦可接受高电平(10V)信号,它运用Σ―Δ技术实现16位无误码性能;它的输出速度同样可由指令设定,范围由20Hz到500Hz;它能够通过指令设定对零点和满程进行校正;AD7705/06与微处理器的数据传送通过串行方式进行,采用了节省端口线的通讯方式,最少只占用控制机的两条端口线。
3.AD7705/06的基本连接及其与微处理器接口电路AD7705/06的基本连接AD7705/06的基本连接如图2所示,其中AD780/REF192提供+2.5V高精度基准电压。
AD7705由于只有2个通道,所以它可以进行两种模拟量的转换,而AD7706具有3个通道,所以它可以进行三种模拟量的转换,笔者在设计压力变送器时就充分运用了`该芯片的功能,AD7706的基本连接与图2相似。
AD7705/06与单片机的接口电路AD7705/06与微处理器的接口非常方便,在对它的操作过程中,涉及到接口的引脚有CS、SCLK、DOUT、DIN和DRDY,它与微处理器的接口有三线、四线、五线及多线方式。
在三线方式下,通常使用DOUT、DIN及SCLK引脚进行控制,其中DOUT和DIN与微处理器的串行口相连,用于数据的输出和输入,SCLK用于输入串行时钟脉冲,CS始终为低电平。
在四线方式下,CS引脚也可以由微处理器的某一端口线控制。
在五线方式下,DRDY 引脚也可以由微处理器的某条端口线控制。
在多线控制方式下,所有的接口引脚都由微处理器来控制。
图3是笔者使用INTEL8031对AD7706进行控制的简化电路图。
MOV SBUF,AJNB TI,﹩;接收完毕,TI复位CLR TIMOV A,#0CH;设置CLKMOV SBUF,AJNB TI,CLR TIMOV A,#010H;对CMR进行写操作,下一操作选定STR MOV SBUF,AJNB TI,﹩CLR TIMOV A,#40H;设置STRMOV SBUF,AJNB TI,﹩CLR TIRET程序2输入字节程序(判断DRDY引脚):INB1:CLR CJB P1.1,INB1;判断DRDY引脚电平CLR P1.0;DRDY为0,有效数据,进行读数据操作MOV A,#38H;对CMR进行写操作,下一操作选定DOR MOV SBUF,AMOV A,SBUF;从AD7706中读入转换数据。
AD7705中文资料_数据手册_参数
关于AD7705的技术文档
关于AD7705模块的技术文档一、模块描述1、简介:D7705/7706 是应用于低频测量的2/3 通道的模拟前端。
该器件可以接受直接来自传感器的低电平的输入信号,然后产生串行的数字输出。
利用Σ-∆转换技术实现了16 位无丢失代码性能。
选定的输入信号被送到一个基于模拟调制器的增益可编程专用前端。
片内数字滤波器处理调制器的输出信号。
通过片内控制寄存器可调节滤波器的截止点和输出更新速率,从而对数字滤波器的第一个陷波进行编程。
2、产品性能参数及特点:�AD7705:2 个全差分输入通道的ADC�AD7706:3 个伪差分输入通道的ADC16位无丢失代码0.003%非线性�可编程增益前端增益:1~128�三线串行接口SPITM、QSPITM、MICROWIRETM和DSP 兼容�有对模拟输入缓冲的能力�2.7~3.3V或4.75~5.25V工作电压� 3V电压时,最大功耗为1mW�等待电流的最大值为8μA�16脚DIP、SOIC和TSSOP封3、产品应用场合:AD7705/7706 是用于智能系统、微控制器系统和基于DSP 系统的理想产品。
其串行接口可配置为三线接口。
增益值、信号极性以及更新速率的选择可用串行输入口由软件来配置。
该器件还包括自校准和系统校准选项,以消除器件本身或系统的增益和偏移误差。
二、模块原理图三、引脚功能四、校准1、自校准过向设置寄存器的MD1和MD0写入相应值(0,1),器件开始自校准。
在单极性输入信号范围内,用来确定校准系数的零标度点是用差分输入对的输入端在器件内部短路(即,对于AD7705,AIN(+)=AIN(-)=内部偏置电压;对于AD7706,AIN=COMMON=内部偏置电压)。
增益可编程放大器(PGA)设置为用于零标度校准转换时选定的增益(由通信寄存器内的G1和G0位设置)。
满标度标准转换是在一个内部产生的VREF电压和选定增益的条件下完成的。
校准持续时间是6×1/输出速率。
AD7705在电子秤中的应用
① AT8 5 的 C ] 初始化 :硬件 设计 中如 果用到 中 9
断 ,则 需 对 单 片 机 的 中 断 系 统 进 行 初 始 化 .软 件 设 计
中如果 用到 串 口,则需对 单片 机的 串 口进 行初 始化 。 ② AD7 5 1 0 与5 系 列 单片机的 数据 交换 顺序 : 7 在
同接 P2门中 未
用 的 另 一 引 脚
留 3 写周 期 9 I序 图
(匕 P 3 L 夕n 2. 。在 )
要满 足前面 确定 的AD70 参数 . 75 设计 中AD70 75
硬件设计 连接 方式 下,只能 用手 工编程 模拟 AD70 的通 该种 75 信时 序 以 实现 对 AD77 05的操 作 。 ② SCLK 接 AT 9 5 8 C 1的同步 脉冲输 出端 T XD, 7 5的数据 AD70 输入 、输 出端 DI D N, OUT一同接 AT 9 5 的 串行 8C 1
八I P AI M M N ORG 0 3 0 1H AJ P M AD NT I ORG 0 0 0 3H M AI N
对A 8C1 T 95 初始化
留 石i匀 胃期 f 月 l 赴 y 程 留
应
用
长
廊
APP CAT ON N OT LI I ES
AD7 0 7 5在 电子 秤 中 的应 用
A 70 A pit n i i Ssm D 75 lao iWe hn yt p c i n g g e
中 国 工 程 物 理 研 究 院 电 子 工 程 研 究 所 屈新 芬 金 春 雨 聂 文 清
一 同接 P 口中 2 未用的 另一 引脚 (匕 P ,) 数 , 1如 22 , 据输 入 、 出端 输
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1 AD7705 简介AD7705 是十六位分辨率的A/ D 转换器,2 通道全差分模拟输入,使用+ 5V 单电源,主要应用于低频测量。
它利用了Σ- △转换技术实现了16 位无误码数据输出,三线数字接口,可以通过串行输入接口,由软件配置芯片的增益值、输入信号极性和数据更新速率,非常灵活方便。
具有自校准和系统校准功能,能够消除器件本身和系统的增益以及偏移误差。
是用于开发智能系统、微控制器系统和基于DSP 系统的理想产品。
1. 1 主要特点2 个全差分输入通道的ADC ,十六位无丢失代码,0. 003 %非线性; 可编程增益:1~128 ; 三线串行接口; 具有模拟输入端缓冲器; 工作电压: 2. 7~3. 3V 或4. 75~5. 25V; 低功耗,3V 电压时, 最大功耗为1mW; 等待电流的最大值为8μA; 16 脚DIP、SOIC 和TSSOP 封装。
1.2 引脚功能1、SCLK串行时钟输入。
将一个外部的串行时钟加于这一输入端口,以访问TM7705 的串行数据。
2 、MCLK IN为转换器提供主时钟信号。
能以晶振或外部时钟的形式提供。
晶振可以接在MCLK IN 和MCLK OUT 二引脚之间。
此外,MCLK IN 也可用CMOS 兼容的时钟驱动,而MCLK OUT 不连接。
时钟频率的范围为500kHz~5MHz。
3、MCLK OUT当主时钟为晶振时,晶振在MCLK IN 和MCLK OUT之间。
如果在MCLK IN 引脚处接上一个外部时钟,MCLK OUT 将提供一个反相时钟信号。
这个时钟可以用来为外部电路提供时钟源,且可以驱动一个CMOS 负载。
如果用户不需要,MCLK OUT 可以通过时钟寄存器中的CLK DIS 位关掉。
这样,器件不会在MCLK OUT 脚上驱动电容负载而消耗不必要的功率4、CS:片选,低电平有效的逻辑输入,选择TM7705。
将该引脚接为低电平,TM7705 能以三线接口模式运行(以SCLK、DIN 和DOUT 与器件接口)。
5 RESET:复位输入。
低电平有效的输入,将器件的控制逻辑、接口逻辑、校准系数、数字滤波器和模拟调制器复位至上电状态6、AIN2(+):差分模拟输入通道2 的正输入端。
7、AIN1(+):差分模拟输入通道1 的正输入端。
8、AIN1(-):差分模拟输入通道1 的负输入端;9、REF IN(+):差分基准输入的正输入端。
基准输入是差分的,并规定REF IN (+)必须大于REF IN (-)。
REFIN(+)可以取VDD 和GND 之间的任何值。
10、REF IN(-):差分基准输入的负输入端。
REF IN(- )可以取VDD 和GND 之间的任何值,且满足REF IN(+ )大于REF IN (- )。
11、AIN2(-):差分模拟输入通道2 的负输入端。
12、DRDY:DRDY逻辑低电平表示可从TM7705 的数据寄存器获取新的输出字。
完成对一个完全的输出字的读操作后,DRDY 引脚立即回到高电平。
13 、DOUT :串行数据输出端。
从片内的输出移位寄存器读出的串行数据由此端输出。
14、DIN:串行数据输入端。
向片内的输入移位寄存器写入的串行数据由此输入。
15、V DD:电源电压,+2.7V~+5.25V16、GND:内部电路的地电位基准点AD7805与单片机的接口电路R7TM7705 的串行接口包括5 个信号:即CS 、SCLK、DIN 、DOUT 和DRDY 。
DIN线用来向片内寄存器传输数据,而DOUT 线用来访问寄存器里的数据。
SCLK 是串行时钟输入,所有的数据传输都和SCLK 信号有关。
DRDY 线作为状态信号,以提示数据什么时候已准备好从寄存器读数据。
在一般的简单系统中,常常只有1 片AD7705 或其它共用口线的器件,故CS- 通常接低电平,节省了单片机的输出输入控制线,这样就可以配置成三线连接方式。
三线连接方式下决定数据寄存器是否被更新也即是确定数据寄存器是否可以被读,只有通过查询通信寄存器DRDY- 位来判断,这种做法的代价是时间开销较多,它并不适用于实时性要求比较强的系统。
比较好的办法是监控硬件DRDY- 引脚的状态,以决定数据寄存器是否被更新,硬件DRDY- 引脚的输出与通信寄存器DRDY- 位同步,DRDY- 引脚一旦变成低电平,表明数据寄存器数据已经更新,可以读取。
所以DRDY- 输出引脚接至CPU 的INT0 或INT1 就可以实现中断或者查询方式的监控。
但不管是查询方式还是中断方式,都需要增加一根数据线。
/* 从AD7705读一个字*/ unsigned int ReadWord7705(void) { unsigned char i;unsigned int x=0 ;AdClk = 1 ;for (i = 0 ; i < 16 ; i++){ AdClk=0;x<<=1;if (AdDout)x |= 0x01;AdClk=1;}return x;}/* 向AD7705写入一个字节*/ void WriteByte7705(unsigned char x) {unsigned char i;AdClk = 1;for (i=0; i<8; i++){AdClk=0;AdDin =(bit) (x & 0x80);AdClk=1;x <<=1;}AdDin =1;//必不可少的。
}1. 3 片内寄存器操作AD7705 包含了8 个片内寄存器,这些寄存器通过器件的串行口访问,所有的操作都是通过对寄存器的操作。
第一个是通信寄存器,器件复位后,通信寄存器处于等待状态,通过通信寄存器写操作,决定下一次操作是写还是读,同时决定这一次读操作或写操作发生在那个寄存器上。
也就是说所有的寄存器(包括通信寄存器本身和输出数据寄存器) 进行读操作之前,必须首先写通信寄存器,然后才能读选定的寄存器。
下面简单介绍寄存器的功能。
1. 通信寄存器(RS2、RS1、RS0 = 0、0、0)通信寄存器是一个8 位寄存器,既可以读出数据也可以把数据写进去。
所有与器件的通信必须从写该寄存器开始。
写上去的数据决定下一次读操作或写操作在哪个寄存器上发生。
* 括号内为上电复位的缺省值0/ DRDY- : 写操作时此位必须为0 ,读操作时表示数据寄存器数据是否准备好。
RS2 ,RS1 ,RS0 : 寄存器选择位,选择下次读/写操作在8 个片内寄存器中的哪一个上发生。
R/ W- :读写选择。
“0”表示下一次是写操作。
“1”表示下一次是读操作。
STBY:等待模式,写入“0”器件处于正常工作模式;写“1”则处于等待或掉电模式,在这种模式下,器件消耗的电源电流仅为10 μA。
CH1 ,CH0 :通道选择,00 选择通道1 ,01 选择通道2。
2、设置寄存器(RS2、RS1、RS0 = 0、0、1);上电/复位状态:01Hex设置寄存器是一个8 位寄存器,它既可以读数据又可将数据写入。
MD1 ,MD0 :工作模式选择位,00 为正常工作模式,01 为自校准,10 为零刻度系统校准,11 为满刻度系统校准。
G2 ,G1 ,G0 :增益选择位,00~08 分别对应增益值1~128。
B - / U:单极性/ 双极性择位“, 0”表示双极性,“1”表示选择单极性工作。
BUF :输入缓冲控制位, “0”表示无缓冲。
此位为“1”时,缓冲器与模拟输入串联,输入端允许处理高阻抗源。
FSYN: 滤波器同步。
该位处于高电平时,数字滤波器的节点、滤波器控制逻辑和校准控制逻辑处于复位状态下,同时,模拟调制器也被控制在复位状态下。
当处于低电平时,调制器和滤波器开始处理数据。
3、时钟寄存器(RS2、RS1、RS0 = 0、1、0);上电/复位状态:05Hex时钟寄存器是一个可以读/写数据的8 位寄存器。
ZERO 必须在这些位上写零,以确保TM7705 正确操作。
否则,会导致器件的非指定操作。
CLKDIS 主时钟禁止位。
逻辑“1”表示阻止主时钟在MCLK OUT 引脚上输出。
禁止时,MCLK OUT 输出引脚处于低电平。
CLKDIV 时钟分频器位,CLKDIV 置为逻辑 1 时,MCLK IN 引脚处的时钟频率在被AD7705 使用前进行2 分频;CLKDIV 置为逻辑0,则MCLK IN 引脚处的频率实际上就是器件内部的频率。
CLK:时钟位。
CLK 位应根据TM7705 的工作频率而设置。
如果转换器的主时钟频率为2.4576MHz(CLKDIV=0 )或为4.9152MHz (CLKDIV=1 ),CLK 应置“0”。
如果器件的主时钟频率为1MHz(CLKDIV=0 )或2MHz (CLKDIV=1 ),则该位应置“1”。
FS1,FS2 滤波器选择位,它与CLK 一起决定器件的输出更新率。
* 假定MCLK IN 脚的时钟频率正确,CLKDIV 位的设置也是适当的。
4、数据寄存器(RS2、RS1、RS0 = 0、1、1)数据寄存器是一个16 位只读寄存器,它包含了来自AD7705 最新的转换结果。
测试寄存器:用于测试期间器件,用户一般不用。
零标度校准寄存器和满标度校准寄存器:都是24 位,用户一般不用。
void Init7705(){ Reset7705(); // 复位WriteByte7705 (0x20) ; / / 通道1 ,下一个写时钟寄存器WriteByte7705 (0x06) ; / / 写时钟寄存器设置更新速率为250HzWriteByte7705 (0x10) ; / / 通道1 ,下一个写设置寄存器WriteByte7705 (0x5c) ; / / 写设置寄存器,设置成单极性、无缓冲、增益为8、滤波器工作、自校准}。