- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于FPGA实现对AD7656的采样与存储
1、AD7656的引脚功能????REFCAPA、REFCAPB、REFCAPC是参考电压引脚,这几个引脚应该接去耦电容器来减小每1个ADC通道参考缓冲器的衰减。????V1一V6是模拟输入1-6引脚,它们是模拟前端输入,对应通道的输入范围取决于RANGE引脚的定义。????AGND是模拟地,所有的模拟输入信号和外部参考信号都要用AGND。????DVcc是5V数字电源端。????VDRIVE是逻辑电源输入,该引脚的电压取决于内部参考电压,应接10μF或100μF的去耦电容器。????DGND是数字地,它是数字电路的参考点。????AVcc是模拟电压输入(4.5V-5.5V),它只给ADC的内核供电。????CONVSTA/B/C是转换使能逻辑输入,每对有其相关的CONVST信号,用来启动每对或每4个或6个ADC同步采样。????CS是片选信号,逻辑低电平时使能。????RD是读信号,逻辑低电平时使能。????WR/PEFEN/DIS是写数据/参考使能/非使能。????BUSY是忙信号输出,当转换开始时为高电平,并且在转换结束前一直为高电平。????SER/PAR是串行/并行选择输入信号。低电平时选择并行接口模式,高电平时选择串行接口模式。????DB[0]/SEL?A是数据0位/选择输出A路。????DB[1]/SEL?B是数据1位/选择输出B路。????DB[2]/SEL?C是数据2位/选择输出C路。????DB[3]/DCIN?C是数据3位,C路为菊花链式。????DB[4]DCIN?B是数据4位/B路为菊花链式。????DB[5]/DCIN?A是数据5位/A路为菊花链式。????DB[6]/SCLK是数据6位/串行时钟。????DB[7]/HBEN/DCEN是数据7位/高位使能/菊花链式使能。????DB[8]DOUTA是数据8位/串行数据输出A。????DB[9]/DOUTB是数据9位/串行数据输出B。????DB[10]/DOUTC是数据10位/串行数据输出C。????DB[11]/DGND是数据11位/数字地。????DB[12]、DB[13]、DB[15]是数据12位、数据13位、数据15位。????DB?[14]/REFBUFEN/DIS是数据14位/参考缓冲使能(低电平时)/非使能(高电平时)。????RESET是复位信号输入。????RANGE是模拟输入范围选择输入信号。????VDO是正电源端。????Vss是负电源端。????H/S?SEL是硬件/软件选择输入引脚。????W/B是字或字节模式选择 2、对于ADC采样信号的控制与数据的存储
ADC7656的采样:是通过一个主次逼近寄存器实现模数的转换的,即通过range引脚给ADC一个特定范围的电压,选一特定电压Vin,将寄存器的最高位置MSB为1,并将其与参考电压引脚REF的1/2进行比较,若Vin1/2Vref,则MSB不变;否则,将MSB置为0。将次高位置1,依次进行比较,直至LSB结束,模数转换完成,存入寄存器中。本次采用软件是Quartus II,由于Verilog语言中的实数real在综合中不能被识别,同时为了保证输入数的精度,将其扩大倍。
模数转换的原理:首先,将移位寄存器最高位MSB置1;然后将输入电压Vin与模拟输出电压Vout=1/2Vref进行比较;如果Vin1/2Vref,则将最高位MSB置为1。将次高位置为1,模拟输出电压Vout=3/4Vref,如果Vin3/4Vref,则将次高位置为0。将第3高位置1,模拟输出电压为Vout=5/8Vref,如果Vin5/8Vref,则将第3高位置为1;如此依次比较。如图:每个320ns输入电压1.32V、1.35V、1.2V,经过模数转换器后其结果为0100010000000000、0100010100011110、0000000000000000。
FIFO工作原理:FIFO即先入先出缓存器。din为输入数据引脚;clock为输入脉冲信号;wrreq为写信号,高电平有效;rdreq为读信号,高电平有效;q输出数据端口;full满信号;empty空信号;usedw为写计数器。当写信号wrreq为1,满信号full为0时,当输入脉冲信号clock到来时,数据输入端口数据din被写入缓冲寄存器中,且写计数器usedw加1。当满信号full为1时,无论wrreq为何值,皆不进行写操作。读信号同理;当empty为0,rdreq为1时,脉冲输入信号clock到来时,从输出端口q读出寄存器中数据。若empty为1,则不论rdreq为何值,皆不能进行读操作。
本文主要是通过控制ADC
文档评论(0)