18_SPI接口多通道ADC驱动设计与验证_第1页
18_SPI接口多通道ADC驱动设计与验证_第2页
18_SPI接口多通道ADC驱动设计与验证_第3页
18_SPI接口多通道ADC驱动设计与验证_第4页
18_SPI接口多通道ADC驱动设计与验证_第5页
已阅读5页,还剩2页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

小梅哥FPGA设计思想与验证方法系列视频教程基于线性序列机设计思想的串行ADC驱动课程目标:学会使用线性序列机的思想设计常见的有串行执行特征的时序逻辑实验平台:芯航线FPGA学习套件主板,芯航线串行ADDA模块实验现象:将串行多通道ADDA模块接在芯航线FPGA开发板上,使用In system sources and probes editor设置DAC模块输出电压信号,然后使用ADC采样DAC的输出电压,将DAC输出值和ADC采样值进行比较,同时使用万用表测量DAC输出电压以验证ADC控制逻辑的正确性。知识点:1、 复习线性序列机设计思想与实现2、 TLV1544型ADC芯片驱动设计TLV1544型ADC芯片概述TLV1544是一个10位,4通道模拟数字转换器(ADC),使用SPI串行接口与控制器进行连接,该芯片具有以下基本特性:l 转换时间小于等于10usl 10位精度ADCl 可编程的掉电模式l 2.7V5.5V宽电压范围直流供电l 模拟输入范围为0到VCCl 内建8个模拟输入通道的多路器l 转换完成标志信号(EOC)l 扩展模式下可以使用异步转换启动信号启动转换l 内部自测功能TLV1544和TLV1548是10位SAR型模数转换器,TLV1544有4个模拟输入通道,TLV1548有8个模拟输入通道。每个芯片都有一个器件选择(CS#)脚,IO时钟管脚(I/O CLK),数据输入管脚(DATA IN)和串行数据输出管脚(DATA OUT),这四个脚组成同步的串行外设接口(SPI)与微控制器(主机)进行通信。当和TI的TMS320系列的DSP进行连接时,还提供了有帧同步信号FS来表明串行数据帧的起点。 另外,该芯片还提供了一个INV CLK#信号用来给串行接口提供更多灵活的时序配置(配置CLK的有效极性)。TLV1544除了提供高转换速度和多种控制能力,该器件还内建了一个片上的11通道的多路器用来选择8个模拟输入通道和内部三个自测通道中的任何一个通道。在通常情况下,采样和保持功能是自动进行的,在扩展采样模式下,该功能由异步采样启动信号启动。当转换结束时,转换完成信号(EOC)输出高电平来指示转换完成。TLV1544/8内部功能框图TLV1544型ADC芯片引脚说明:引脚名引脚功能A0A369I模拟输入脚,这些引脚在内部通过多路器选择并最送到采样保持单元,(如果信号源的输出阻抗大于1K欧,就需要使用异步开始信号来增加采样时间)CS#16I芯片选择脚,该引脚由高变低会使器件内部的计数器和控制逻辑复位,并使能DATA IN,DATA OUT,和IO CLK,该引脚由低变高会禁止DATA IN,DATA OUT,和IO CLK的功能CSTART#10I采样/转换开始控制信号,CSTART#控制对多路器选中的一个模拟输入进行采样。该信号的高到低电平转变启动对输入信号的采样,低到高电平转变将使采样保持器进入保持模式并启动ADC进行转换。CSTART#是独立于IO时钟的,在CS#为高电平时工作。如果该功能不使用,直接将该引脚接VCC即可。DATA IN2I串行数据输入引脚,该引脚上输入4位的通道选择控制字,选择8个模拟输入通道和3个测试通道,同时这些位中还可以设置转算速率和掉电模式。在微处理器模式时,CS#下降沿之后,输入数据高位在前,在一次传输的前4个IO时钟的上升沿(INV CLK# = VCC)或者下降沿(INV CLK# = GND)高位在前低位在后依次移入器件的对应寄存器在DSP模式时,FS下降沿之后输入数据高位在前,在一次传输的前4个IO时钟的上升沿(INV CLK# = VCC)或者下降沿(INV CLK# = GND)高位在前低位在后依次移入器件的对应寄存器。四个时钟周期之后,器件将不再关心DATA IN上的数据。DATA OUT1OAD转换结果的3态数据引脚。当CS#为高电平时,该引脚呈现高阻状态,当CS#为低电平或者FS的下降沿之后(DSP模式),该引脚进入激活状态。当CS#有效(低电平),该引脚上呈现上一次转换结果的高位或者低位。在处理器接口模式下,该引脚上的数据在时钟下降沿变化,在DSP接口模式下,该引脚上的数据在时钟上升沿变化。EOC4O该引脚在IO CLK的第十个时钟的上升沿(微处理器模式)或下降沿(DSP 模式)变为低电平,并将保持低电平直到转换完成,数据已经就绪时。EOC信号因此也可以作为转换忙标志信号FS13IDSP的帧同步输入,FS信号指示了串行数据帧从器件中开始输入或输出。当使用微处理器接口时,该引脚连接到VCC。GND11电源地INV CLK#12I时钟反转。当一个反转了极性的信号作为输入的时钟时,将INV CLK#信号置低电平。该信号对微处理器模式和DSP模式有相同的效果。当时钟没有反转时,INV CLK#连接到VCC。INV CLK#也同样对内建的测试模式有效。IO CLK3I数据接口时钟REF+15I参考电压的高端,最大电压输出范围在REF+和REF之间。REF14I参考电压的低部(通常为GND)VCC5I供电TLV1544数字接口介绍:IO CLK:IO CLK的频率最高可达10MHz,在不同的工作电压和输入阻抗及源输出阻抗的情况下,支持的最大时钟频率有差异,具体见下表:可以看到,在供电电压为4.5V及以上,输入电阻不超过1K,源端输出电阻不超过100欧的情况下,时钟接口的最大频率为10MHz,而在2.7V供电时,IO CLK最大频率为2.81MHz。TLV1544支持微控制器接口模式和DSP接口模式,在微控制器接口模式下,其使用SPI接口,这里主要对微控制器接口模式进行介绍。微控制器与TLV1544的接口如下图所示,该接口使用标准的SPI接口,因此可以直接连接到微控制器的片上SPI外设上。对于FPGA来说,则可以使用逻辑按照SPI时序搭建控制电路,以实现对TLV1544的控制。TLV1544通过SPI接口与控制器进行通信的时序图如下所示:由于是使用MCU模式,因此FS信号接高电平,同时,由于时钟极性没有反转,因此INV CLK也接高电平芯航线FPGA学习套件提供的多通道串行ADDA模块中,ADC部分就使用了TLV1544这颗芯片,芯航线多通道串行ADDA模块中ADC部分电路图如下所示:我们将引出除INV CLK和CSTRAT以外的所有控制和数据线,使得此该模块既可以与MCU接口,也可以与DSP接口。而FPGA由于更加灵活的时序控制能力,MCU接口时序和DSP接口时序均可以轻松实现。TLV1544的转换速度与芯片供电电压和待采样信号输出阻抗有关,本实验中,我们直接使用ADDA模块上的DAC模块的输出直接接到ADC模块的输入上,通过控制DAC输出不同电压值,然后比较DAC的输出与ADC采样到的值的大小,来评估ADC驱动的正确性。由于TLC5620的输出电阻较大,约为10K欧,因此需要根据TLV1544在输入源信号阻抗为10K欧,供电5V时的转换所需时间来确定IO时钟的频率,而TLV1544在1K欧,4.5V供电时的IO CLK频率最高能够达到7.18MHz,在10K欧时,速度应该更低,因此这里暂时按照2.5MHz(周期为400ns)进行设计。结合TLV1544的MCU接口时序图,按照线性序列机的设计思路,可以整理得到每个信号发生变化时对应的时刻以及此时对应的计数器的值。下表为依照线性序列机的设计思想,整理得到的每个信号发生变化时对应的时刻以及此时对应的计数器的值(控制器工作时钟设置为50M)。DATA9:0为采样结果数据寄存器。时刻计数器值对应信号操作00CLK = 0; CS = 1; DI = 0; AD_DONE = 0;201CLK = 0; CS = 0; DI = A3;2009CLK = 1;DATA9 = DO;40019CLK = 0; DI = A2;60029CLK = 1; DATA8 = DO;80039CLK = 0; DI = A1;100049CLK = 1; DATA7 = DO;120059CLK = 0; DI = A0;140069CLK = 1; DATA6 = DO;160079CLK = 0;180089CLK = 1; DATA5 = DO;200099CLK = 0;2200109CLK = 1; DATA4 = DO2400119CLK = 0;2600129CLK = 1; DATA3 = DO;2800139CLK = 0;3000149CLK = 1; DATA2 = DO;3200159CLK = 0;3400169CLK = 1; DATA1 = DO;3600179CLK

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论