电赛总结(二)——AD芯片总结之AD7715
一、特性参数
1、16位无失真AD转换器
2、增益可调,在1,2,32,128可切换。
3、数字地和模拟地分开,可以减少噪声。
4、具有较大的输出电流,有比较好的带载能力。
二、管脚排列
三、引脚功能
引脚名称 | 功能 |
SCLK | 串行时钟,施密特逻辑输入。将一个外部的串行时钟加于这一输入端口,以访问AD7715 的串行数据。和单片机传输数据时的控制时钟 |
MCLKIN | 为转换器提供主时钟信号。能以晶体/谐振器或外部时钟的形式提供。晶体/谐振器可以接在MCLKIN 和MCLKOUT 二引脚之间。此外,MCLKIN 也可用CMOS 兼容的时钟驱动, 而MCLKOUT 不连接。时钟频率的范围为500kHz~5MHz |
MCLKOUT | 当主时钟为晶体/谐振器时,晶体/谐振器被接在MCLKIN 和MCLKOUT 之间。如果在MCLKIN 引脚处接上一个外部时钟,MCLKOUT 将提供一个反相时钟信号。这个时钟可以用来为外部电路提供时钟源,且可以驱动一个CMOS 负载。如果用户不需要,MCLKOUT 可以通过时钟寄存器中的CLKDIS位关掉。这样,器件不会在MCLKOUT 脚上驱动电容负载而消耗不必要的功率 |
CS’ | 片选,低电平有效的逻辑输入,选择AD7715。将该引脚接为低电平,AD7715 能以三线接口模式运行(以SCLK、DIN 和DOUT 与器件接口)。在串行总线上带有多个器件的系统中,可由CS’对这些器件作出选择,或在与AD7715通信时,CS’可用作帧同步信号 |
RESET | 复位输入。低电平有效的输入,将器件的控制逻辑、接口逻辑、校准系数、数字滤波器和模拟调制器复位至上电状态 |
AVDD | 模拟电源电压,5V |
AVIN(+) | 差分模拟输入的正输入端 |
AVIN(-) | 差分模拟输入的负输入端 |
REFIN(+) | 基准输入端,基准输入是差分的,并规定REFIN(+)必须大于REFIN(-)。REFIN(+)可以取VDD 和GND 之间的任何值 |
REFIN(-) | 基准输入端,REFIN(-)可以取VDD 和GND 之间的任何值,且满足REFIN(+)大于REFIN(-) |
AGND | 模拟地 |
DRDY’ |
逻辑输出。这个输出端上的逻辑低电平表示可从AD7705/7706 的数据寄存器获取新的输出字。完成对一个完全的输出字的读操作后,DRDY’引脚立即回到高电平。如果在两次输出更新之间,不发生数据读出,DRDY’将在下一次输出更新前500×tCLKIN 时间返回高电平。当DRDY’处于高电平时,不能进行读操作,以免数据寄存器中的数据正在被更新时进行读操作。当数据被更新后,DRDY’又将返回低电平。DRDY’也用来指示何时AD7705/7706 已经完成片内的校准序列. |
DOUT | 串行数据输出端 |
DIN | 串行数据输入端 |
DVDD | 数字电源电压,可以是+5V,也可以是3.3V |
DGND | 数字地 |
四、片内寄存器
1、概述
只有四个寄存器,分别是通信、设置、数据还有校准寄存器。一般来说只是用通信和设置以及数据寄存器。而且每次进行操作的时候是先对通信寄存器进行操作,之后再跳到所选的下一个寄存器进行读写。
2、通信寄存器
管脚名称 | 功能 |
0/DRDY’ | 这意味必须写“0”,否则不能继续进行对寄存器的操作。 |
ZERO | 这一位必须写“0”,否则芯片不一定能正常工作。 |
RS1– RS0 | 选择下一个进行通讯的寄存器![]() |
STBY | “1”表示进入低功耗模式,功耗只有10uW,“0”则是正常工作,一般默认为“0”即可。 |
G1-G0 | 设置增益倍数![]() |
3、设置寄存器
管脚名称 | 功能 |
MD1 MD0 | ![]() |
CLK | 时钟位。CLK 位应根据AD7705/7706 的工作频率而设置。如果转换器的主时钟频率为2.4576MHz(CLKDIV=0)或为4.9152MHz(CLKDIV=1),CLK 应置“0”。如果器件的主时钟频率为1MHz(CLKDIV=0)或2MHz (CLKDIV=1),则该位应置“1”。该位为给定的工作频率设置适当的标度电流,并且也(与FS1 和FS0 一起)选择器件的输出更新率。 |
FS1, FS0 | 滤波器选择位,它与CLK 一起决定器件的输出更新率。表12 显示了滤波器的第一陷波和-3dB 频率。![]() |
B/U’ | “0”表示双极性设置 “1”表示单极性设置 |
BUF | “1”表示二分频,“0”表示不分频 |
FSYNC | 滤波器同步。该位处于高电平时,数字滤波器的节点、滤波器控制逻辑和校准控制逻辑处于复位状态下,同时,模拟调制器也被控制在复位状态下。当处于低电平时,调制器和滤波器开始处理数据,并在3×(1/输出更新速率)时间内(也就是滤器的稳定时间)产生一个有效字。FSYNC 不影响数字接口,也不使DRDY’输出复位(如果它是低电平)。 |
4、数据寄存器
数据寄存器是一个16 位只读寄存器,它包含了来自AD7715 最新的转换结果。如果通信寄存器将器件设置成对该寄存器写操作,则必定会实际上发生一次写操作以使器件返回到准备对通信寄存器的写操作,但是向器件写入的16 位数字将被AD7715 忽略。
五、芯片外围电路图
六、STM32F103ZET驱动程序(以IO口模拟方式)
#ifndef __ADC7715_H
#define __ADC7715_H #include "stm32f10x.h"
#include "pbdata.h"
#include "spi.h" //自编函数
#include "timer.h"
#include "gpio.h"
#include "baseFunc.h" #define SCLK Pin0
#define DIN Pin1
#define DOUT Pin2
#define DRDY Pin3 void WriteAD7715Data(u8 data); void delay_Ms(int time); u32 ReadAD7715Data(u8 byte); void InitAD7715(void); u32 GetAD7715Num(void); #endif
#include "adc7715.h" void delay_Ms(int time)
{
u32 i,j;
for(i=time;i>0;i--)
{
for(j=0;j<512;j++)
{ }
}
} void WriteAD7715Data(u8 data)
{
u8 i;
for(i=0;i<8;i++)
{
if( (data&0x80)!=0 )
{
set_outH(GPIOA,DIN);
}
else
{
set_outL(GPIOA,DIN);
}
data=data<<1;
delay_Ms(10); set_outH(GPIOA,SCLK);
delay_Ms(10);
set_outL(GPIOA,SCLK);
delay_Ms(10);
set_outH(GPIOA,SCLK);
delay_Ms(10);
}
set_outH(GPIOA,DIN);
delay_Ms(10);
} u32 ReadAD7715Data(u8 byte)
{
u8 i;
u32 data = 0;
for(i=0;i<byte*8;i++)
{
set_outH(GPIOA,SCLK);
delay_Ms(10);
set_outL(GPIOA,SCLK);
delay_Ms(20); data=data<<1; if(read_in(GPIOA,DOUT)==1)
{
data=data+1;
}
set_outH(GPIOA,SCLK);
delay_Ms(10);
}
return data;
} void InitAD7715(void)
{
set_out(GPIOA,SCLK|DIN);
set_FIN(GPIOA,DOUT|DRDY); WriteAD7715Data(0x10);
WriteAD7715Data(0x66); } u32 GetAD7715Num(void)
{
while(read_in(GPIOA,DRDY)==1); WriteAD7715Data(0x38); return ReadAD7715Data(2);
}
电赛总结(二)——AD芯片总结之AD7715的更多相关文章
- 电赛总结(二)——AD芯片总结之音频处理芯片ADC8009
一.特性参数 1.专门用来用音频处理的AD芯片 2.内部固定好8K的采样速率 3.8位AD芯片 二.内部结构图 三.芯片管脚图 四.管脚功能说明 管脚名称 功能 IN0~IN7 数据输入端 ABC 数 ...
- 电赛总结(二)——AD芯片总结之高速AD9224
一.特性参数 1.12位高速AD 2.高达40MSPS的高速AD芯片 3.噪声小 二.芯片管脚图 三.管脚功能说明 管脚名称 功能 CLK 参考时钟输入端 BIT12-1 数据输出端(1是低位,12是 ...
- 电赛总结(四)——波形发生芯片总结之AD9834
一.特性参数 1.2.3V~5.5V供电 2.输出频率高达37.5MHz 3.正弦波.三角波输出 4.提供相位调制和频率调制功能 5.除非另有说明,VDD = 2.3 V至5.5 V,AGND = D ...
- TI MSP430工程配置及2019年电赛A题编程示例(使用430 F5529)
配置 第一步:右击工程,选择Options 第二步:在General Options的Target选项卡里选择对应的器件Device,这里是MSP430G2231 第三步:在Debugger里选择FE ...
- 【系列】关于NJUPT电赛自控方向第一次积分赛的总结
本人是NJUPT电子科学与技术专业大一摸鱼狗一枚.本博客旨在总结与分享个人准备电赛所学知识,同时也是为了防止遗忘,锻炼写文章的能力.目前电赛方向为自控方向.主要研究方向为单片机.图像处理.自动控制相关 ...
- AD芯片的基准参考电压问题
基准参考电压的精度一般非常高的! AD芯片 : AD9226的基准参考电压 误差一般是 千分之一! 我之前用万用表测量AD9226的参考电压大概是1.89V(这款AD的正确参考电压应该是2V),所 ...
- [2018冬令营模拟测试赛(二十一)]Problem A: Decalcomania
[2018冬令营模拟测试赛(二十一)]Problem A: Decalcomania 试题描述 输入 见"试题描述" 输出 见"试题描述" 输入示例 见&quo ...
- noip2019集训测试赛(二十一)Problem B: 红蓝树
noip2019集训测试赛(二十一)Problem B: 红蓝树 Description 有一棵N个点,顶点标号为1到N的树.N−1条边中的第i条边连接顶点ai和bi.每条边在初始时被染成蓝色.高桥君 ...
- 通过Dapr实现一个简单的基于.net的微服务电商系统(二)——通讯框架讲解
首先感谢张队@geffzhang公众号转发了上一篇文章,希望广大.neter多多推广dapr,让云原生更快更好的在.net这片土地上落地生根. 目录:一.通过Dapr实现一个简单的基于.net的微服务 ...
随机推荐
- ASP.NET MVC 数据分页
作为一个菜鸟级的程序猿,总结一下学到的两种数据分页. 1.真分页 真分页就是需要时从数据库里读出需要多的数据,利用存储过程可实现.网上的分页SQL特别多,数据库自带的一些方法也可方便的帮助分页,但是我 ...
- Android手机 Fildder真机抓包
Fiddler是一个http调试代理,它能 够记录所有的你电脑和互联网之间的http通讯,Fiddler 可以也可以让你检查所有的http通讯,设置断点,以及Fiddle 所有的“进出”的数据(指co ...
- 【原创】express3.4.8源码解析之中间件
前言 注意:旧文章转成markdown格式. 中间件(middleware)的概念来自于TJ的connect库,express就是建立在connect之上. 就如同connect的意思是 连接 一样, ...
- FineUI第二天
原博文http://www.cnblogs.com/sanshi/archive/2012/02/12/2347789.html 1.首先复制extJS的文件夹到根目录. 2.引用程序集 3.配置配置 ...
- [Effective JavaScript 笔记]第19条:熟练掌握高阶函数
高阶函数介绍 高阶函数曾经是函数式编程的一个概念,感觉是很高深的术语.但开发简洁优雅的函数可以使代码更加简单明了.过去几年中脚本语言采用了这些个技术,揭开了函数式编程的最佳惯用法的神秘面纱.高阶函数就 ...
- HDU 1231 最大连续子序列 &&HDU 1003Max Sum (区间dp问题)
C - 最大连续子序列 Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Submit ...
- poj 3020 最短路径覆盖 Antenna Placement
Antenna Placement Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 7329 Accepted: 3635 ...
- Linux运维相关目录
- Android中获取IMSI和IMEI
TelephonyManager mTelephonyMgr = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); Str ...
- 【架构】浅谈web网站架构演变过程
浅谈web网站架构演变过程 前言 我们以javaweb为例,来搭建一个简单的电商系统,看看这个系统可以如何一步步演变. 该系统具备的功能: 用户模块:用户注册和管理 商品模块:商品展示和管 ...