【FPGA】FPGA对AD7606进行串行数据采集
个人笔记。这段时间在用FPGA对AD7606进行数据采集,现在把检测过程和遇到的问题记录一下,方便以后避坑。文章最后有相关资料链接。
1、AD7606概述
AD7606是16位,8通道同步采集模数数据采集系统。各器件均内置模拟输入钳位保护、二阶抗混叠滤波器、跟踪保持放大器、16位电荷再分配逐次逼近型模数转换器、灵活的数字滤波器、2.5V基准电压源、基准电压缓冲以及高速串行和并行接口。AD7606采用5V单电源供电,可以处理正负10V和正负5V真双极性输入信号,同时所有通道均能以高达200kSPS的吞吐速率采样。输入钳位保护电路可以耐受最高达正负16.5V的电压。无论以何种采样频率工作, AD7606的模拟输入阻抗均为1MΩ。它采用单电源工作方式,具有片内滤波和高输入阻抗,因此无需驱动运算放大器和外部双极性电源。AD7606抗混叠滤波器的3dB截止频率22kHz;当采样率为200kSPS时,它具有40dB抗混叠抑制特性。灵活的数字滤波器采用引脚驱动,可以改善信噪比(SNR),并降低3dB带宽
2、引脚配置和功能描述
3、AD7606与FPGA相连
其中DB7(DOUT)、BUSY作为FPGA的输入接口,将DB0-DB6、DB9-DB14悬空。
4、时序图
图二是选择等待AD转换后读取,要等BUSY信号拉低后再进行数据读取;图三选择在AD转换期间读取,不需要等待BUSY信号。本实验采用的是图二转换后读取,下面开始对该时序图进行分析。
首先RESET复位由低→高→低,CONVSTACONVSTB转换命令由高→低→高,等待BUSY信号由低→高→低,等BUSY拉低后等待片选信号cs拉低并对数据进行读取,读取完成后对片选信号cs拉高。
本实验使用的是串行读取方式,下面对串行读取时序图进行分析。
CS拉低后使数据输出线路DoutA和DoutB脱离三态,并逐个输出转换结果的MSB。在CS拉低后给出SCLK,根据数据手册可知在SCLK上升沿将所有数据位逐个送至串行数据输出DoutA和DoutB,但是FPGA需要在SCLK下降沿进行采集,而且每个通道每次输出16位采集数据。
5、串行接口(PAR/SER/BYTE SEL=1)
通过串行接口从AD7606回读数据需要PAR/SER/BYTE SEL引脚接高电平,AD7606的两个串行数据输出引脚DoutA和DoutB。可通过单或双Dout线路从AD7606回读数据。本实验采用的是一路Dout线路输出数据,因为通道数据以升序输出所以用DoutA访问所有转换数据,通过DoutA访问八个转换结果时,总共需要128个SCLK周期,通道结果将以V1、V2、V3、V4、V5、V6、V7、V8的顺序输出。
6、实验结果
根据实验结果我们得知得到的仿真结果与时序图一致。
这是对八个通道进行数据采集的实验结果,其中对data_1、data_3接地,data_2接5V,data_4~data_8接3v,都得到了比较稳定的数据。
7、注意事项
- 写程序时对高低电平变化要有延时程序,具体延多少时间要根据时序图里的时间要求来取。
- FPGA是在SCLK下降沿读取数据。
- 当数据采集结果与理想结果差距较大时,不仅要检查程序问题,还要检查是不是硬件中哪个引脚虚焊、漏焊或电容电阻虚焊漏焊。
AD7606中英文数据手册:AD7606中英文数据手册-嵌入式文档类资源-CSDN下载
【FPGA】FPGA对AD7606进行串行数据采集相关推荐
- 【FPGA】串口以命令控制温度采集
文章目录 一.任务要求 二.设计思路 三.代码实现 一.任务要求 能够通过串口向FPGA芯片发送命令,以命令控制FPGA接收温度传感器数据,以及串口发送和数码管显示.该项目以前面学习的ds18b20温 ...
- PCIEx8接口FPGA处理DMA控制器高速信号采集卡
PCIE702是北京青翼科技研发的一款基于PCIExpress总线架构的光纤网络硬件验证平台,该平台具有1个X8PCIe主机接口,1个RJ45千兆以太网口.1个RJ45百兆以太网口,2个RS485接口 ...
- 基于 JESD204B 协议ARM+FPGA+AD多板卡多通道同步采集实现方法
0 引言 随着数字化信号处理技术的不断进步,对数字信号 的处理已经成为当前大多数工程应用的基本方法.由于 模拟信号才是现实生活中的原始信号,为了工程研究实 现的可能,需将模拟信号转换为数字信号才能在工 ...
- FPGA USB FX2 ov5640摄像头视频采集 驱动CY7C68013A实现 提供2套工程源码和技术支持
目录 1.前言 2.我这儿已有的 FPGA USB 通信方案 3.CY7C68013A芯片解读和硬件设计 FX2 简介 SlaveFIFO模式及其配置 4.工程详细设计方案 5.vivado工程 6. ...
- 基于 FPGA 使用 Verilog 实现 DS18B20 温度采集以及数码管显示项目源码【免费——互相学习】
https://github.com/zcj-debug/temperature_ds18b20 工程内的 doc 文件有整个项目的设计文档以及板上验证视频 ds18b20 的原理网上都有 硬件只需要 ...
- 如何学习FPGA——FPGA的学习规划
一.入门首先要掌握HDL(HDL=verilog+VHDL). 第一句话是:还没学数电的先学数电.然后你可以选择verilog或者VHDL,有C语言基础的,建议选择VHDL.因为verilog太像C了 ...
- [FPGA] FPGA设计EtherCAT主站的方法和常见问题
作者从事EtherCAT等实时工业网络及运控产品的开发多年.基于FPGA的EtherCAT主站,是不少公司的明智选择.无论是实时性,灵活性,还是性价比均可有很好的保证. 一.基于FPGA的EtherC ...
- FPGA | FPGA BUG自动分析工具:VSTAR简介
FPGA BUG自动分析工具--VSTAR VSTAR是一款FPGA bug自动分析工具.对于使用Xilinx FPGA的系统,通过嵌入VSTAR IP来检测信号序列是否正常.VSTAR软件可以显示 ...
- matlab生成正弦波平fpga,FPGA设计——正弦信号发生器
概述 FPGA具有高度实时的特性.这里讨论基于FPGA设计一款简单的正弦信号发生器. DDS原理 Direct Digital frequency Synthesis如下图所示: 3. DAC原理 这 ...
最新文章
- 修改Spring boot内置的tomcat端口
- java简单计算_java简单计算器
- SAP云平台cf push命令报错的解决方法
- 数据中异常值的鉴定和处理(1)
- LLE(局部线性嵌入)matlab代码实现
- 关于IIS8.5在配置完后出现503问题解决方案
- 哥写的不是代码,是寂寞
- win7下u盘安装ubuntu组成双系统
- [人工智能]动物专家系统work
- [高效Mac] 多显示器快速切换鼠标焦点和移动窗口
- bittorrent+sync+java_使用BitTorrent-Sync实现双机文件双向同步
- python可变数据类型和不可变数据类型
- 最新电脑版二级计算机视频怎么打开,电脑版钉钉如何打开视频会议中录制的视频...
- go语言开发工具sublime text3 + gosublime配置
- 英语中 distinct 与 distinctive 的区别
- Qt 使用阿里巴巴字体图标库 iconfont
- 加速基因测序进程,北鲲云高性能计算平台再发力
- 什么是CT 技术。。。你懂了么?
- Nacos客户端本地缓存和故障转移
- sparksql hive mysql_SparkSql 整合 Hive
热门文章
- 文件十六进制编辑软件HxD Hex Editor的使用
- HxD - Freeware Hex Editor and Disk Editor
- matlab 读取mdf文件路径,访问 MDF 文件
- MATLAB Simulink Example
- MathWorks 中国
- 为什么你还没有买新能源汽车?
- CentOS下切换桌面模式与命令行模式
- mac关闭自动更新提示
- thinking in java 4
- Mac 活动监视器 闪退 打不开
- 阿里 卫哲谈阿里人力招聘价值观
- 仿钉钉考勤统计页面的日历组件,通过日历展示每日考勤打卡情况,支持在日历上打两种不同类型的点,大致适配各种分辨率效果图