基于USB的便携式数据采集系统设计硕士学位论文

上传人:仙*** 文档编号:149090762 上传时间:2022-09-06 格式:DOC 页数:73 大小:2.63MB
收藏 版权申诉 举报 下载
基于USB的便携式数据采集系统设计硕士学位论文_第1页
第1页 / 共73页
基于USB的便携式数据采集系统设计硕士学位论文_第2页
第2页 / 共73页
基于USB的便携式数据采集系统设计硕士学位论文_第3页
第3页 / 共73页
资源描述:

《基于USB的便携式数据采集系统设计硕士学位论文》由会员分享,可在线阅读,更多相关《基于USB的便携式数据采集系统设计硕士学位论文(73页珍藏版)》请在装配图网上搜索。

1、 硕士学位论文 基于 USB的便携式数据采集系统设计 III摘要论文题目:基于USB的便携式数据采集系统设计学科名称:电话与系统摘 要传统的数据采集卡普遍采用PCI、ISA等标准接口,基于这些标准接口的采集卡有不便于携带、安装复杂、可扩展性差等问题,它已不能满足科研和生产的实际需要。通用串行接口USB作为一种新型的串口通信标准,具有传输速率高、可扩展性好、即插即用、使用灵活等特性,很好的弥补了传统采集卡接口的缺陷。本文结合USB的传输优势和FPGA 的高效性能,设计了一种基于USB的便携式数据采集系统。文中首先简单的对USB总线的特点以其相应的体系结构进行了介绍,然后对硬件电路、软件程序以及系

2、统测试几个方面进行了深入论述。在硬件设计方面:选用的系统硬件主要由模数转换模块、FPGA主控制器模块、USB接口模块以及电源模块构成;根据系统要实现的功能以及芯片的工作方式完成了电路的连接,同时完成了系统的原理图设计和PCB图的绘制。在软件设计方面:根据系统的设计要求,重点研究了三部分内容:FPGA控制程序、USB固件程序以及客户端应用程序。同时详细介绍了各部分软件的具体设计思想,并给出了相应的程序流程图与调试结果。最后,结合硬件和软件对整个系统进行了最终测试,并给出了测试结果和分析。结果表明:该数据采集系统的功能符合设计要求,能够满足一般工业现场对数据采集系统便携性、低功耗以及对数据传输速度

3、要求较高的任务需求。关键词:数据采集;USB2.0;FPGA;固件程序;应用程序Title: PORTABLE DATA ACQUISITION SYSTEM DESIGN BASED ON USBMajor:Circuits and systems Name: WenHua He Signature: Supervisor:Prof. ShuiYu WANG Signature: AbstractTraditional data acquisition card is commonly used standard interfaces such as PCI 、ISA,but the acq

4、uisition card is not easy to carry, install and expand. So it can not meet the actual needs of the research and production.The Universal Serial interfaces USB as a new standard of serial communication, it has a high transmission rate, good scalability .At the same time,it is easy to plug and play, v

5、ariety in use. So it is compensated for the defects of traditional capture card interface.In this paper, along with the efficient performance of the transmission advantage of the USB and FPGA, a portable data acquisition system based on USB2.0 have designed and implemented .The paper first briefly d

6、escribes the architecture and features of the USB bus, then conducted in-depth discussion on aspects of the hardware circuit, software programs, and system testing.In the Hardware:We mainly completed AD converter circuit design, FPGA host controller peripheral circuit design,the USB interface circui

7、t design and the power module design. The connection between each part of the chip operating modes and systems to achieve the function. Complete system schematic design and PCB diagram of the hardware circuit system,In the software:According to the design requirements, we focus on the three sections

8、: the FPGA control-program design, USB firmware design and client application program design.At the time,describeing in detail the various parts of the software design ideas.We also give the corresponding program flowchart and debugging results.At last ,combination of hardware and software , testing

9、 the entire systemis was tested and the test results and analysis were gived. The results showed that the data acquisition system can meet the design requirements which the general industrial field data acquisition system portability, low power consumption and higher data transfer speeds .Key words:

10、 Data acquisition; USB2.0; Firmware; Application目录目 录 1绪论11.1研究背景与意义11.2 国内外研究现状与趋势11.3 本文研究的主要内容22 USB简介32.1 USB总线的特点32.2 USB总线结构32.3 USB设备的开发流程53 系统总体设计73.1 系统的性能指标73.2 系统方案的确定73.3 硬件构成83.4 软件构成94 系统硬件电路的设计与实现114.1 FPGA114.1.1 FPGA简介114.1.2 FPGA芯片的选择124.2 AD转换器的选择134.3 USB接口芯片的选择154.3.1 CY7C68013A

11、芯片结构154.3.2 CY7C68013A的端点缓冲区164.3.3 CY7C68013A的接口模式174.4 AD电路设计184.4.1接口的电平转换184.4.2 TLC5510外围电路设计194.5 USB电路设计194.5.1 USB与FPGA的接口电路204.5.2 USB的外围电路214.6 FPGA外围电路设计224.6.1时钟电路及复位电路224.6.2FPGA下载配置与调试接口电路设计234.7 电源电路的设计244.8 抗干扰和PCB设计265 系统软件设计275.1 FPGA逻辑设计275.1.1 ADC控制模块设计285.1.2 FIFO在FPGA中的应用305.1.

12、3 时钟与分频模块设计325.1.4 USB控制模块335.1.5 FPGA总体控制逻辑设计355.2 驱动程序365.2.1 驱动程序简介365.2.2 驱动程序的安装375.3 固件程序385.3.1 固件功能385.3.2 固件基础395.3.3 固件程序的设计415.3.4 固件程序的实现475.4 用户程序的编写495.4.1 应用程序和USB设备的通信495.4.2 用户界面程序506 测试536.1 FPGA与USB的通信测试536.2 USB设备速率测试546.3系统功能测试556.3.1 USB设备的识别556.3.2 数据的采集567 主要研究工作总结与展望597.1 总结

13、597.2 展望59致 谢61参考文献62攻读硕士学位期间取得的研究成果64符录电路原理图65I绪论1绪论1.1研究背景与意义数据采集系统是指对各种传感器输出的模拟信号进行采集,通过AD转换器将模拟信号转换成数字信号,然后把数字信号送入计算机进行处理,并按需要的形式输出处理结果的系统。伴随着科学技术飞速的发展,数据采集系统作为获取信息的重要途径以及探索科学奥秘的重要手段已广泛应用于各个领域。目前常用的数据采集方式主要是将基于ISA或PCI的数据采集板卡安装在工业控制机或者PC机内。但是这种数据采集方式有很多的缺陷:(1)插拔困难、安装复杂、价格比较贵,并且计算机的插槽数量、地址、中断资源也限制

14、了采集卡的扩展性;(2)数据采集卡被安装在工业控制机或者PC机内部,不便于携带,因此无法进行野外现场的数据采集【1】。通用串行总线(Universal Serial Bus) USB作为目前最重要的计算机外设互联接口,它具有即插即用、传输速率高、且易于扩展的优点。并且,在一般情况下USB主机上可以提供稳定的5V电压,这样USB外部设备可以通过相应电缆获得主机提供的电压。具有USB接口的数据采集卡就可以通过USB电缆获得稳定可靠的工作电源。USB作为新型的接口更容易满足复杂、灵活的设计和电路的微型化的要求。因此,USB总线代替传统的ISA或PCI总线用于数据采集系统,可以满足人们对数据采集系统的

15、便捷性、高速性、扩展性和通用性的要求。1.2 国内外研究现状与趋势计算机具有良好的扩展性,依赖于其具备的多种通信接口。RS232、并行接口、PCI等老式计算机接口存在规范不统一、体积庞大、可扩展性差、不支持热插拔等缺陷。随着技术的发展和计算机应用的需要,老式接口的缺陷越来越制约计算机的使用。因此,USB作为一种新的计算机接口应运而生。IBM、Microsoft等7家公司在1994年11月时就共同提出了USB规范。但在随后的几年时间里,USB2.0规范迟迟没有问世,直到2000年底才尘埃落定。这时候的USB2.0同时支持三种传输速度,其最高传输速率可以达到480Mbps【2】。直到2008年11

16、月26日,USB促进委员会才正式宣布新一代USB3.0接口规范已经制定完全,USB3.0接口最高传输速度将高达5.0Gbps,相比较USB2.0的传输速度,可谓是向前迈了一大步。如今随着集成电路的飞速发展和USB设备开发的进步,各种集成有USB控制器的芯片相继问世。这些产品中大都集成了功能强大的处理器,显然提高了数据传输的稳定性和传输速度,同时在一定程度上降低了开发难度。到目前为止,基于USB接口的产品种类繁多,从低运行速度的鼠标、键盘到全速的MP3、移动硬盘、数码相机以及高速的数据采集卡等。我们注意到USB接口因其即插即用、可兼容性以及可扩展性等优点得到了极其广泛的应用,它己经成功的应用到了

17、信息产业、家电产业和网络产业等,特别是在数据采集方面的应用尤为突出。当下,许多能够适应不同传输速率,不同深广度要求的USB数据采集系列产品已经琳琅满目。NI公司研制的一系列USB数据采集卡可以说是其中的代表,但是NI公司的USB数据采集卡产品的价格普遍偏高,因此对于国内的大多数用户来说显然无法承受这样昂贵的价格。相比于国外,国内对USB数据采集产品的研发相对落后,但总体来看,现在国内的一些厂家对USB接口的数据采集产品的开发和研制已经取得了一定的成果,其研究产品的种类也越来越繁多,但是范围和研发的深度存在着不小的差距,主要表现在下面的几个方面:采用USB1.1协议的产品较多,而采用USB2.0

18、较少;采集系统功能过于简单,同时在采集速率、精度以及分辨率上和国外还存在相当大的差距。现阶段随着USB协议的不断完善,对比其他采集系统,USB数据采集系统接口的性能会有其他产品无法媲美的优势,它会得到越来越广泛的应用。所以说对USB数据采集系统做更为深入的开发也显得尤为重要。1.3 本文研究的主要内容本文在分析USB总线的体系结构和特点基础上,确定了一种基于USB的便携式数据采集系统的方案。在该方案中,系统选用FPGA作为硬件电路的主控制器。对于输入的模拟信号,经模数转换后,在FPGA的控制下传输给USB,然后再通过USB控制接口将数字信号传输到上位机。用户可以通过上位机界面程序实现数据的读取

19、、存储以及采集控制等功能。本文研究的主要内容有:分析了USB总线特点、系统的组成结构以及开发流程等;设计了数据采集系统的硬件电路,同时完成了模数转换器和FPGA的连接,FPGA与USB的连接,以及FPGA外围电路的设计;在要求各个元器件对电源电压的相适应的条件下,设计提供了相匹配的电源系统;完成了系统原理图设计和PCB图的绘制;利用硬件描述语言VerilogHDL,编写了基于FPGA内部逻辑控制模块,完成了对AD采样的控制,以及对USB数据传输的控制;分析了USB接口电路的固件程序开发步骤,并用C51语言开发了USB接口设备的固件程序,实现了USB在Slave FIFO模式下进行数据传输的功能

20、;编写了上位机的应用程序,完成了数据的读取与显示;最后结合硬件和软件对整个系统进行了最终测试,并给出了测试大量有益结果与分析。65系统总体设计2 USB简介2.1 USB总线的特点USB是英文Universal Serial BUS(通用串行总线)的缩写,用来统一电脑与外部设备的连接和通讯,是一种新的计算机接口技术。USB总线接口与传统的计算机接口相比,具有以下明显的优点:接口体积小巧,具有很相当大的体积优势,在目前计算机和集成化的趋势中,得到了广泛的应用;能够适应低速、全速和高速的传输速率操作;为适应不同外部设备对于不同功能的需要,它提供了4种不同类型的传输;即插即用是它基本功能之一,对于U

21、SB设备来说,只要安装了与之适应的驱动程序,它就可以工作;USB接口具有外部供电能力,计算机上的USB接口最大可以输出500mA的电流,5V的电压,满足大多数微处理系统对电源的要求;具有良好的兼容性,随着技术的发展,USB规范包括USB1.0、USB1.1、USB2.0,以及无线USB和USBOTG等多个版本,并且USB规范都具有良好的向下兼容性;性价比高,目前,随着技术的发展和USB设备的普及,USB的芯片以及USB电缆的价格都已十分低廉,USB接口的性价比日益提高。2.2 USB总线结构USB主机、USB设备和USB电缆组成一个简单的USB应用系统,如图2-1所示。USB系统中最重要的就是

22、USB主机和USB设备。总体来说,用户的特定功能是由USB设备完成而USB协议的处理则是由USB主机负责的。对于USB主机与其设备之间的通信,包含上行通信和下行通信。前者主要用于USB设备向USB主机传输数据,后者则主要用于USB主机向USB设备传输数据。图2-1 简单的USB系统Figure2-1 Simple USB system(1)USB主机广义上讲,具有USB端口的计算机以及其他具有USB主控芯片的设备都可以称为USB主机。USB主机在整个数据通信过程中有着相当重要的地位,它控制着数据的启动和命令的传输,而USB设备只有被动的响应USB主机请求。USB系统中不能有多个USB主机同时存

23、在,如果有多个主机就会引起系统混乱。鉴于此种情况USB协议明确规定:USB系统中只能有一个USB主机存在。(2)USB设备伴随着USB接口的飞速发展,USB设备种类越来越丰富,主要包括USB功能设备和USB集线器两种类型。USB功能设备一般是一个独立的外部设备,例如有用于扩展USB主机功能的USB鼠标,以及用来进行数据传输的移动硬盘或者USB数据采集系统等。USB功能设备连接到USB主机后,主机需对其进行配置设置,这样USB功能设备才可以使用。USB集线器的功能主要是提供额外的连接点给USB主机系统,从而扩展USB主机的端口,那样的话使一个USB端口可以扩展连接多个设备。USB设备与其主机的连

24、接主要包括USB主机与集线器的上行端口连接以及USB设备与集线器的下行端口连接。同时我们必须注意到USB集线器的级联是有限制的,它最多可以级联5级。(3)USB的连接USB连接器有两种:A型和B型,A型插座与A型插头匹配,B型插座与B型插头匹配。A型插座主要用在USB主机或者USB集线器下行端口,而对B型插座来讲,它则主要用在USB设备或集线器的上行端口。当然无论A型还是B型的USB接头,它们均有4根引线:VCC、GND、D+ 、D-,分别对应USB电缆的4根导线。USB主机通过VCC和GND这两个引线向USB设备供电;通过D+ 、D- 差分数据线向USB设备传输数据。典型USB接头如图2-2

25、所示。图2-2 USB接头Figure2-2 USB connector USB电缆将USB主机、USB集线器以及USB设备连接起来,形成一个完整的USB系统。但是,对于USB的不同传输模式会用到不同特性的电缆。2.3 USB设备的开发流程USB设备的开发流程简单介绍如下:(1)分析功能。主要分析USB设备需要实现的所有功能,以及每个功能采用的实现方式、数据传输类型和速率、所需要的硬件资源等。(2)选择USB接口芯片。在明确了USB设备的功能要求后,我们就要选择一款合适的USB接口芯片。需要强调的是选择芯片需要考虑很多因素,比如芯片内部资源、芯片管脚数目、芯片封装形式、兼容性,同时价格也是必须

26、考虑的。(3)USB软硬件开发。在选择了合适的芯片后,我们就可以进行软硬件开发了。软件开发则主要包括设计USB芯片固件程序、驱动程序和用户界面程序等;而硬件开发主要包括设备功能组件、硬件接口、资源分配等。(4)设备综合调试。当USB设备的主要功能设计完成了,但为了完整和完善设备的整体功能,还需要对整个软硬件系统进行综合调试。3 系统总体设计3.1 系统的性能指标输入通道:单通道; 测量对象:工业现场各类传感器的输出电压;电压范围:0.6V2.6V;频率范围:1Hz400KHz;采样分辨力:8位;最大采样速率:2MSPS;数据传输接口:USB2.0接口;FPGA缓存深度:1024,位宽8bits

27、;系统电源:模拟电压+5V、3.3V、1.5V和5V数字电压;用户程序:要能读取USB的配置描述符,采集的控制以及数据的显示、存储等功能;供电方式:USB接口供电或外接电源可选,供电电压为+5.0V;“便携式”应是本系统的最大特色,特别是在数据采集系统的硬件设计时应充分考虑集成度、体积、功耗等问题。3.2 系统方案的确定基于USB接口的数据采集系统典型框架如图3-1所示。 图3-1 USB数据采集系统典型框架Figure3-1 typical framework of the USB data acquisition system现有的数据采集卡常用单片机或DSP作为控制器。单片机的时钟频率比

28、较低,需要软件支持来实现其功能,然而软件的运行时间比较长,就会成为采样速率的一个阻碍。相比而言采用DSP作为控制器的采集卡其运算速度较快而且擅长处理密集的乘加运算,但是它很难完成对外围复杂硬件进行逻辑控制。既然采用单片机或DSP作为控制器的数据采集卡有很大的缺陷,那么就应该寻找速度更快,能更好的对外围硬件进行逻辑控制的控制器。FPGA作为新一代的控制器就能很好的弥补传统控制器的缺陷。FPGA不仅可以使电子系统小型化、低功耗、高稳定性,还能让开发周期缩短、电路板面积缩小、开发软件投入少、成本不断降低等【4-5】。正是因为FPGA具有很多优点,所以促使FPGA越来越多的取代其他专用集成电路市场。因

29、此本文中选用FPGA作为数据采集系统的控制器,它可以代替许多传统的逻辑电路,也可使系统设计简单化、产品小型化。因此本文中采用USB和FPGA技术相结合的方案设计的数据采集系统,它小巧且便于携带,可以大大提高系统的稳定性与可靠性。整体设计思路为:用户首先登入界面程序并发出相应的采集命令;然后命令通过USB传输到下位机也就是采集卡,紧接着采集卡的主控制器FPGA根据命令控制AD进行模数变换的操作,直到计算机终端收到经由USB传输过来转换后的数字信号,最后用户在程序中可以轻松实现数据现的接收、存储和显示等相关功能。本数据采集系统包括两部分:系统的硬件设计和软件设计。系统总体框图如图3-2所示。 3-

30、2 系统总体框图Figure3-2 System framework3.3 硬件构成硬件要实现二大主要功能:一是接收PC主机传送过来的命令,同时并控制其它电路的相关执行命令,二是控制输入信号的模数转化,最后把转化后的数据直接传输到PC主机里。根据硬件要实现的功能,本数据采集系统的硬件主要设计了以下几部分:AD转换电路,FPGA控制器及外围电路,USB接口电路以及电源电路。AD转换芯片主要功能是将输入的模拟信号转换为数字信号;而FPGA作为系统主控器,它是整个系统的核心,主要实现对AD芯片的时序控制和数据的缓存,还要完成对USB接口电路的控制;USB接口电路主要完成FPGA和上位机(PC)的数据

31、传输和信息交换;在电源电路中,系统中采用USB总线供电,并通过电压转换芯片来满足AD芯片、FPGA芯片的供电要求。3.4 软件构成用户要想使上位机能够发送命令给硬件,并接收下层硬件产生的数据,没有相应的软件程序来协助是不可能完成这些功能的。本系统的软件设计主要包括两个部分:一部分主要用于控制AD的模数转换、数据的缓存以及控制USB进行数据传输的FPGA逻辑控制程序;另一部分是开发USB设备涉及到的程序,主要涉及到USB固件程序、USB设备驱动程序以及客户应用程序。其中,固件程序的主要功能是用来设置USB的工作模式,并对用户发来的各种请求做相关的处理,以保证传输数据的高效;驱动程序好比就是硬件电

32、路和上位机客户应用程序的桥梁;而客户应用程序主要为用户提供可视化的操作界面,用户只要轻松的设置界面上相关参数或者点击相关功能按钮就可以实现对硬件电路的控制。系统硬件设计4 系统硬件电路的设计与实现本章主要介绍基于USB的便携式数据采集系统的硬件电路设计。首先简单介绍硬件电路的整体构架,然后介绍芯片的选择,最后介绍各个模块的具体实现方式。硬件电路框架如图4-1所示。 图4-1 硬件电路框架Figure4-1 Hardware circuit framework4.1 FPGA4.1.1 FPGA简介FPGA是Field Programmable Gate Array的缩写,即现场可编程门阵列,是

33、一种能够用编程的方法设计内部硬件电路结构的集成电子器件。随着社会的发展,FPGA应用的领域越来越广范,包括通信、移动设备、航空航天、自动控制等领域,并有向计算密集型应用发展的趋势。FPGA可以完成许多数字器件的功能,无论是高性能的CPU还是简单的74系列电路,这些都可以由FPGA控制实现。数据采集系统使用FPGA作为主控制器可以大大缩短设计时间,减少PCB面积,提高系统的可靠性、扩展性、便携性等。FPGA主要有两种编程方法,它们是相互竞争的。第一种是SRAM编程,这涉及到用SRAM的比特位作为编程单元。基于SRAM的FPGA具有可以被重复编程的优点,这种FPGA被安装到系统以后再被重新编程,使

34、得“在线升级”变得非常容易。编程者只要修改一下软件,就可以替换一个通信协议;为FPGA的设计增加一种特性,它允许在设计中设置一些小规模的存储器,像FIFO(先进先出存储器),但是一个FPGA中一般不设置大规模的存储器,因为那样是不经济的。另外,基于SRAM的FPGA还可以被用于“可重新配置”计算。计算机中含有FPGA,算法可以在计算机中汇编,并在这些FPGA中运行。另一种编程方法牵涉到反熔丝。反熔丝技术的特点主要有以下几个方面:它的单元较小,占用芯片面积小,而工作频率相当高,反拷贝能力强,并且还不需外接PROM或EPROM,。这种FPGA主要适合航天、军事、工业等各领域。理论上,反熔丝型FPG

35、A比SRAM型FPGA在速度上要快很多。这是因为反熔丝型FPGA对于经纬路径来说,其内部导体之间的连接是实质性的,当然这是相当于SRAM型FPGA内部所用的逻辑门或晶体管而言的。然而在实践中,我们发现反熔丝型FPGA的速度并不比SRAM型FPGA的速度快的很多。这与理论上还是存在一定的差距。同时我们不能忽视的是反熔丝型FPGA的缺点也是明显的,它只能一次编程,并且需要专门的编程器,这些都会在一定程度上影响系统的开发成本。4.1.2 FPGA芯片的选择a.芯片选择目前生产FPGA器件的两个主要厂商是Altera公司和Xilinx公司,其生产的PLD产品被广泛的应用到各个领域。两个厂商生产的各个系

36、列产品各有优劣,提供的宏功能模和开发平台也各不相同。在考虑了芯片内部资源、器件的执行速度、可用I/O管脚数目、器件功耗等因素后,本文设计中采用了Altera公司生产的性价比较高的Cyclone系列型号为EPlC6Q240的芯片。该芯片具有强大的硬件逻辑功能,总逻辑单元达5 980个,包含20个12836位的RAM块,总的内部存储单元达到92160位,内嵌2个锁相环,芯片工作电压为1.5V,有180个I/O引脚,支持多种不同的I/O标准;应用广泛,性价比较高【6】。b.FPGA管脚FPGA的管脚主要包括:用户I/O、配置管脚、电源、时钟及特殊应用管脚等,其中有些管脚可有多种用途。这就要求在设计F

37、PGA相关电路之前,设计人员需要认真的阅读相应FPGA的芯片手册。本文设计选用的是Altera公司的EPlC6Q240的芯片,该芯片的主要管脚介绍如下【7-8】。1) 用户I/O一般作为输入或输出接口,也有些是双向口的,同时可用为LVDS差分对的负端。通常情况下对多余的I/O口引脚会进行一些处理,比如通过扩展的插针形式将不用的引脚引出来,作为后期系统升级扩展以及系统的调试工作之用。2) 配置管脚MSEL1:0:用于选择配置模式。FPGA由多种配置模式,可以通过此管脚进行选择;DATA0:FPGA串行数据的输入管脚; DCLK:FPGA时钟管脚;nCSO:FPGA片选信号管脚;ASDO:FPGA

38、串行数据管脚;nCEO:下载链器件的使能输出管脚;nCONFIG:用户模式配置;nSTATUS:状态信号配置;CONF_DONE:结束信号配置;nCE:下载链器件使能输入;3) 电源管脚VCCINT:FPGA的内核电压;VCCIO:FPGA的端口电压;VREF:参考电压;GND:信号地。4) 时钟管脚VCC_PLL:FPGA的锁相环管脚电压;VCCA_PLL:FPGA锁相环的模拟电压;GNDA_PLL:FPGA锁相环的模拟地;GNDD_PLL:FPGA锁相环的数字地;CLknum:FPGA锁相环时钟的输入;PLLnum_OUT:FPGA锁相环时钟的输出;另外,有一些管脚是全局时钟,使用这些管脚

39、作为关键时钟或信号的布线可获得最佳的性能。4.2 AD转换器的选择模拟信号进入FPGA之前,必须用AD转换器将其转换为数字信号以便系统的识别。因此AD转换器是整个数据采集系统设计的一个重点,必须慎重考虑。AD芯片的选用关系到数据采集系统的技术指标、系统结构、功耗、安装、环境要求等。一般情况下AD的选取可以遵循以下几点原则:AD分辨率:相应芯片的分辨率主要根据输入信号的幅度确定;转换速度:主要根据被测信号的频带宽度范围,确定AD转换器的传输速度。通常情况下转换器的转换速率要高于系统要求的采样频率;A/D的环境参数:采集的环境条件决定了符合其环境参数要求的芯片。这里的环境参数主要包括信号输入范围、

40、工作温度范围、供电要求以及抗干扰性能等四个方面;数据接口要求:A/D转换器的输出形式选择,是选用外部时钟还是内部时钟;是否存在转换结束状态提示信号等。在考虑了上面的几点要求后,我们还要考虑到器件成本、供货渠道、技术支持等因素。综合以上因素,本系统设计采用美国德州仪器(TI)公司的AD转换芯片TLC5510。TLC5510特点如下:8bit分辨率;最大转换速率是20MSPS;供电电压是5V;100mW的低功耗;内置采样、保持功能模块。另外,TLC5510由于采用半闪速结构和CMOS工艺,减少了功率损耗和晶片尺寸。 TLC5510采用24引脚的贴片封装,各引脚功能描述如表4-1【9】。表4-1 T

41、LC5510引脚Table4-1 TLC5510 pin引脚名输入/输出描述AGND模拟地ANALOG IN输入模拟信号输入端CLK输入时钟DGND数字地D1-D8输出8位数据输出端OE输入输出使能端,低电平有效REFB输入AD转换器参考输入电压REFBS当内部分压器输出额定2V 基准电压时,该端短路至REFB;REFT输入参考输入电压REFTS当内部分压器产生2 V 的额定基准电压时,该端短路至REFT。VDDD数字电源VDDA模拟电源在本系统中,待测信号的模拟输入范围为0.6 V2.6 V,所以需要利用TLC5510内部分压电路产生2V电压量程,使得TLC5510的输入范围为0.6 V2.

42、6 V。TLC5510内部分压电路连接模式如图4-1所示:图4-1 产生2V电压量程的连接图Figure4-1 connection diagram of the 2V span其中模拟电源VDDA引脚接入+5.0V模拟电压,模拟地AGND引脚接模拟地,REFTS和REFT短接,REFBS和REB短接。内部电阻的标准值分别为:R1=320,Rref=270,R2=80。由图4-1中的连接便可计算出电压量程范围。计算如下所示:REFB= VDDAR2/(R1+Rref+R2)=580/(320+270+80)=0.6(V)REFT= VDDA(Rref+R2)/(R1+Rref+R2)=5(80

43、+270)/(320+270+80)=2.6(V)所以TLC5510的信号输入范围为0.6V2.6V,当模拟输入为0.6V时,转换输出的数字量为00000000,2.6V对应的数字输出为11111111。4.3 USB接口芯片的选择对于目前市场上如此多的USB接口器件,芯片选择时应该考虑的因素就很多了。本设计要求数据采集系统是便携式的,所以必须考虑电路复杂程度、体积大小、系统功耗、程序/数据存储器容量大小、电源需求、数据传输速率要求等多方面互相耦合因素的影响【10】。其中Cypress公司的EZ-USB FX2LP系列芯片是首选。它是集成了USB2.0协议(向下兼容 USB1.1)的微控制器,

44、同时可以进行全速传输(12Mb/s)以及高速传输(480Mb/s),并且包括4种不同的USB传输方式:控制传输、中断传输、块传输和同步传输。值得一提的是EZ-USB FX2LP系列芯片内部集成了USB外围接口设备所需的全部功能,我们可以利用这种芯片的优点便利地开发许多功能迥异的产品。本设计选用的就是EZ-USB FX2LP系列中拥有56引脚的CY7C68013A芯片,它是该系列芯片中引脚最少、体积也较小的一款,符合系统便携的要求,同时也会降低设计成本。4.3.1 CY7C68013A芯片结构CY7C68013A芯片内部结构如图4-2所示。 图4-2 CY7C68013A芯片内部结构图Figur

45、e4-2 CY7C68013A chip internal structure该芯片内部主要包含以下几部分:高速8051单片机、FIFO存储器以及GPIF (通用可编程接口)、串行接口引擎和USB2.0收发器。数据线有8位和16位可供选择,很容易与不同的控制器接口对接【11-12】。单片集成USB2.0收发器、SIE和增强型8051CPU;为适应USB2.0的480MBit/s的速率,FIFO端点可配置成2,3,4个缓冲区;内嵌增强型8051微处理器,它该功能比标准8051强、速度比它快,硬件资源也比较多;RAM是16KB的,程序代码和数据都可以简单地存储在芯片内部的RAM里;接口模式丰富,主

46、要有通用的I/O模式、SlaveFIFO模式、GPIF模式;内部有多达4个的FIFO缓冲区,主要任务是提供主机或从机操作;它与FPGA或其它控制器芯片接口是相当容易的。CY7C68013A芯片主要管脚的功能如表4-2所示。表4-2 CY7C68013A的主要功能管脚Table4-2 The main function of the CY7C68013A pin15,16DPLUS,DMINUSI/O/ZUSB D和D-数据线49RESET#I复位信号线,低电平有效11,12XTALIN,XTALOUTI,O晶振输入、输出管脚5CLKOUTO/Z时钟信号的输出端, 默认为12MHZ4047PA0

47、-PA7I/O/ZI/O 口PA,具有第二复用功能2532PB0-PB7(FD0-FD7)I/O/ZI/O 口PB (双FIFO/GPIF 的低8 位数据总线)5256,13PD0-PD7(FD8-FD15)I/O/ZI/O 口PD (双FIFO/GPIF 的高8 位数据总线)8RDY0/SLRDIGPIF 的输入信号端/ 从属FIFO 的读选送端9RDY1/SLWRIGPIF 的输入信号端/ 从属FIFO 的写选送端3638CTL0-CTL2/FLAGA-FLAGCOGPIF 的控制输出端/从属FIFO 的输出状态标志信号20IFCLKI/O/Z从属FIFO 的同步时钟信号21Reserve

48、dI保留,接地51WAKEUPIUSB的唤醒信号输入端22,23SCL,SDAODI 2C 总线的时钟信号线和数据信号线4.3.2 CY7C68013A的端点缓冲区端点(Endpoint)是USB规范中很重要的一个概念,从CY7C68013A的观点来看,端点是一个通过USB总线来传送与接收字节的数据缓冲区。CY7C68013A在数据传输的时候主要用到了4KB的FIFO和7个端点。CY7C68013A的7个端点如表4-3所示。 表4-3 CY7C68013A的7个端点Table4-3 the seven endpoints of the CY7C68013A端点大小备注EP064B控制传输EP1

49、IN64B输入EP1OUT64B输出EP24KB输入/输出EP44KB输入/输出EP64KB输入/输出EP84KB输入/输出USB协议中将端点做了如下定义:它是窗口,是数据的接受器和发送器。EP0是一个默认的双向控制端点,它即可写数据也可读数据。当传输控制命令有需求时,CY7C68013A中的固件程序就可以读写EP0。EP1IN和EP1OUT使用独立的64字节缓存区,可以配置为同步、中断和块传输方式,这2个端点也只能被固件访问。EP2、EP4、EP6、EP8这几个端点缓存区主要用来进行高带宽数据传输,不需要固件程序的参与。这四个端点可以设为IN或者OUT,自动模式或者手动模式。另外为了解决带宽

50、的问题以及读写双方互相等待的时间过长等问题,可以将这4个端点配置成双重、三重和四重缓冲,这样就可以很好解决这些问题了。这些端点在内部的传输控制是通过满和空两个控制信号来完成的,内部写满了就不能再写数据,读空了就不再对FIFO进行读。4.3.3 CY7C68013A的接口模式CY7C68013A芯片提供了Slave FIFO(从属FIFO)和GPIF(通用可编程接口)两种不同类型的接口模式。其中可以通过设置寄存器IFCFG来选择相对应的接口模式。GPIF代表主机模式,对于这种模式,主控制器是CY7C68013A芯片,可以通过软件编程自动读写控制波形。对于8/16位接口的控制器、存储器可以进行数据

51、的主动读写,没有必要外加控制器。Slave FIFO模式顾名思义即从机模式,在本模式下,系统中的逻辑控制器FPGA就犹如普通FIFO一样,可以轻松完成对CY7C68013A中端点数据缓冲区的读写工作。对应的芯片的工作时钟有内部产生和外部输入两种不同方式可供选择;相关电平的设置由芯片的控制信号控制;工作方式同时也对应有二种模式即异步模式或者同步模式,所谓异步就是读写数据的时候只与读写使能信号有关,与时钟IFCLK无关;所谓同步就是同时受时钟信号以及读写信号的控制。同步与异步的时序如图4-3所示。图 4-3 异步和同步模式下的时序图Figure4-3 Asynchronous and synchr

52、onous mode timing diagramCY7C68013A的固件程序代码和数据,先存储在PC机上,然后再通过USB接口从PC机直接下载到CY7C68013A芯片内部的16KBRAM里面,这样可以缩短产品的开发周期,同时还可以方便对固件进行更新,以及完成对产品进行升级工作等。本设计中选择FPGA作为控制器,那么对应CY7C68013A就选择工作在Slave FIFO模式(从机模式)。4.4 AD电路设计4.4.1接口的电平转换TLC5510的工作额定电压一般是5.0V,而对应的FPGA的I/O口工作电压通常状况下是3.3V。TLC5510的时钟信号ClK和输出使能信号OE能够被FPG

53、A输出的电平驱动,所以TLC5510的时钟信号CLK和使能信号OE与FPGA的I/O口能直接相连,但TLC5510的数据输出端D1-D8与FPGA的I/O口之间不能直接相连的。为了不损坏器件以及完成正常的数据通信,那就必须在TLC5510与FPGA之间进行电平转换。设计中选用74LVC4245A 电平转换芯片,该芯片的特点是双向、8路、电平可控,同时具有3.3V和5V两种供电电源。其各个引脚功能各个参数如下:VCCA电源电压(5V0.5V);VCCB电源电压(3.3V0.3V);GND 地;A1-A7数据输入/输出;B1-B7数据输入/输出;DIR方向控制器;#OE输入输出使能(低电平有效)。

54、电路中74LVC4245A的VCC接+5.0V电源,VBB接3.3V电源【13】。A1-A8与TLC5510输出的8位数字信号连接,#OE、B1-B8与FPGA的I/O口连接,DIR为方向控制器,通过一个选择开关P1可以控制数据的传输方向。当选则开关连接到3.3V高电平时,允许数据从A端(TLC5510)传到B端(FPGA);当选择连接到低电平时允许数据从B端(FPGA)传到A端(TLC5510)。TLC5510与FPGA的接口连接示意如图4-4所示。 图4-4 TLC5510与FPGA的连接示意图Figure4-4 The connection diagram of the TLC5510

55、and FPGA4.4.2 TLC5510外围电路设计设计中采用TLC55l0内部+2V参考电压,因此将REFTS和RETF短接,REFB和REFBS短接,使REFT=2.6V,REFB=0.6V,并通过旁路电容接地。VDDA和VDDD应就近与AGND和DGND连接一个0.1F的高频陶磁滤波电容。其中FB2FB4代表高频磁珠,主要是模拟电源AVDD经过FB2FB4为TLC5510提供模拟工作电流。加上FB2FB4高频磁珠,主要目的是为了获得更好的高频去耦效果。TLC5510的时钟CLK不用单独设置,由FPGA提供。数据的转换控制可通过FPGA按照AD转换的时序直接控制OE的电平状态。模拟输入信

56、号从AIN引脚输入,在经过转换的8位数字信号从D1-D8输出。TLC5510的外围电路如图4-5所示。图 4-5 TLC5510外围电路连接Figure4-5 The connectionof the the TLC5510 peripheral circuit 4.5 USB电路设计以CY7C68013A为核心的数据传输电路,主要完成FPGA与PC机的数据传输以及命令的传输。4.5.1 USB与FPGA的接口电路本系统设计中由FPGA作为控制器,只是简单地利用CY7C68013A作为一个数据通道来实现数据采集卡与上位机应用程序二者之间的高速数据传输。那样的话本系统就应该采用Slave FIF

57、O连接模式,其中Slave FIFO模式传输示意图如图4-6所示。图4-6 Slave FIFO传输示意图Figure4-6 transmission schematic of the Slave FIFO在该方式下,CY7C68013A内嵌的固件功能就只是配置Slave FIFO相关寄存器以及控制CY7C68013A什么时候工作在Slave FIFO模式下。当固件将相关的寄存器和工作模式配置完毕,FPGA就可按照Slave FIFO传输时序,高速与PC机进行通信然而固件却不参与通信。如果我们将CY7C68013A的端点配置成自动输入或输出的话,端点内的数据就会自动打包,接着传给FPGA或者计

58、算机。本数据采集系统设计时采用的是异步方式,数据总线是8位,控制端点为端点0,其主要作用是传输系统控制命令,而端点6则用来传输我们采集的数据。在异步Slave FIFO方式下,CY7C68013A接口芯片的I/O管脚直接连接到相应的FPGA管脚。FPGA与CY7C68013A的Slave FIFO连接示意图如图4-7所示【14-15】。图4-7 FPGA与CY7C68013A的连接示意图Figure 4-7 The connection diagram of the FPGA and CY7C68013ACY7C68013A为FPGA提供内部端点6的空(Empty)满(Full)标志信号和上位

59、机发来的控制信号,FLAGB表示EP6的空状态,FLAGC表示EP6的满状态,PD7:0传输上位机发出的各种命令如:开始采集、停止采集以及采样频率。主控制器FPGA对CY7C68013A数据通道的控制则主要通过如下控制信号来实现:FIFOadr1:0 (端点选择信号)、SLWR(写使能信号)、SLCS(片选信号),FD(8位数据线)。4.5.2 USB的外围电路FD0:7为Slave FIFO的8位数据接口,直接与FPGA的I/O口相连。PD0:7传输上位机发出的各种命令,直接与FPGA的IO口相连。FLAGB、FLAGC分别为CY7C68013A端点6的空状态和满状态标志信号管脚。FIFOA

60、DR0和FIFOADR1为CY7C68013A端点FIFO的选择信号管脚,可通过PFGA选择4个FIFO(EP2、EP4、EP6、EP8)中的一个与数据总线FD相连。Slave FIFO接口模式的使能有SLWR(写使能)、SLRD(读使能)、SLOE(输出使能)和SLCS(片选信号管脚)。XTALIN和XTALOUT则代表外接晶振管脚,它们是需要外接24MHz的晶振的。CY7C68013A内部的锁相环PLL可以将24MHz振荡器倍频到48MHz,内部的计数器可将其分频用作8051时钟,默认的8051时钟频率为12MHz。CY7C68013A的I2C引脚SCL和SDA必须有2.2K外部的上拉电阻

61、,即使没有EEPROM也要接。DPLUS和DMINU即是USB总线中的D+和D-的全称。CY7C68013A可以通过IFCLK向外提供时钟或者由引入外部的时钟源【16-18】。本文中由FPGA内部PLL锁相环产生的时钟通过IFCLK引脚接入CY7C68013A芯片中去的。这里必需提出的是AGND(模拟地)和DGND(数字地)是不能直接连在一起,使用应该用0欧姆电阻把它们隔开,以减少二者的相互干扰。其中USB的外围连接电路如图4-8所示。图 4-8 USB的外围连接Figure4-8 peripheral connection of the usb4.6 FPGA外围电路设计FPGA的外围电路设

62、计包括晶振电路、复位电路、下载配置电路与调试电路。4.6.1时钟电路及复位电路FPGA系统的全局时钟输入采用了有源晶振。FPGA芯片的I/O口电平为3.3V,所以选用3.3V,24MHz晶振。AD芯片所需要的时钟通过FPGA内部锁相环产生,而FX2CLK提供给CY7C68013A芯片作为该芯片的外部时钟源。设计中0.1F电容的作用是很明显的,它可以滤除电源噪声对晶振输出时钟信号的影响,而时钟输出端的电阻的作用也不容小视,因为它对电路起到限流、防止过冲的作用。当我们把硬件系统电源连接好后,因为FPGA内部锁相环电路稳定是需要一定时间的,所以这时候在复位管脚上配置了一个RC电路,以提供有效的复位信号。复位电路同时可以保证系统电路稳定可靠工作,是电路中不空缺少的一部分。本系统时钟及复位电路如图4-9所示。图4-9 时钟及复位电路图Figure4-9 Clock and reset circuit diagram4.6.2FPGA下载配置与调试接口电路设计本系统选择的FPGA芯片是SRAM型结构的,它本身的缺陷即不能将程序永久存储在FPGA里边,一断电的话程序就没

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!