收藏 分享(赏)

基于FPGA和STM32的数据采集系统设计.doc

上传人:精品资料 文档编号:9870838 上传时间:2019-09-13 格式:DOC 页数:42 大小:2.56MB
下载 相关 举报
基于FPGA和STM32的数据采集系统设计.doc_第1页
第1页 / 共42页
基于FPGA和STM32的数据采集系统设计.doc_第2页
第2页 / 共42页
基于FPGA和STM32的数据采集系统设计.doc_第3页
第3页 / 共42页
基于FPGA和STM32的数据采集系统设计.doc_第4页
第4页 / 共42页
基于FPGA和STM32的数据采集系统设计.doc_第5页
第5页 / 共42页
点击查看更多>>
资源描述

1、本 科 毕 业 设 计 第 1 页 共 42 页1 绪论1.1 虚拟仪器的背景现在客户对于测试的需求越来越大。随着创新的步伐越来越快,希望更多具有竞争力的新产品更快投入市场的压力也越来越大。消费者的期望在不断地增高。以电子市场为例,消费者要求不同的功能可以更低的成本在一个更小的空间得到集成。近年来经济的低迷并没有阻止革新的需要,但是却要求使用更少资源。满足这些需要是商业成功的一个因素能够快速、一贯并且最可靠地满足这些需要的公司一定能在竞争中占有决定性的优势。所有这些条件都驱使着对新的验证、检验和生产测试技术的高要求。一个能与创新保持同步的测试平台不是可有可无的,而是必需的。这个平台必须包含具有

2、足够适应能力的快速测试开发工具以在整个产品开发流程中使用。产品快速上市和高效生产产品的需要要求有高吞吐量的测试技术。为了测试消费者所要求的复杂多功能产品需要精确的同步测量能力,而且随着公司不断地创新以提供有竞争力的产品,测试系统必须能够进行快速调整以满足新的测试需求。虚拟仪器是应对这些挑战的一种革新性的解决方案。它将快速软件开发和模块化、灵活的硬件结合在一起从而创建用户定义的测试系统。模拟式仪器是指针式的,它基于电磁原理进行测量;数字式仪器则适应了快速响应和高精度的要求,将对模拟信号的测量转化成为对数字信号的测量来显示测量结果;智能化仪器仪表则运用了微处理器芯片,通过将程序固化在 ROM 中以

3、及将测量结果储存在 RAM 中自动完成各种测量功能。它的功能模块全部都是以硬件(或固化的软件)的形式存在,相对虚拟仪器而言,无论是开发还是应用,都缺乏灵活性。第四代虚拟示波器,它是现代计算机技术、通信技术和测量技术相结合的产物,是传统仪器观念的一次巨大变革。虚拟示波器的出现改变了原有的示波器的整体设计思路,用软代替了硬件。将传统仪器由硬件实现的数据分析与显示功能能,改由功能强大的微型计算机来完成信号的处理和波形的显示,利用软件技术在屏幕上设计出方便、逼真的仪器面板,进行各种信号的处理、加工和分析,用各种不同方式(如数据、图形、图表等)表示测量结果,完成各种规模的测量任务。并具有存储、再现、分析

4、、处理波形等特点,而且体积小,耗电少的功能。本 科 毕 业 设 计 第 2 页 共 42 页1.2 虚拟仪器的发展现状虚拟仪器技术目前在国外发展很快,以美国国家仪器公司(NI 公司)为代表的一批厂商已经在市场上推出了基于虚拟仪器技术而设计的商品化仪器产品。在美国虚拟仪器系统及其图形编程语言,已作为各大学理工科学生的一门必修课程。美国的斯福坦大学的机械工程系要求三、四年级的学生在实验时应用虚拟仪器进行数据采集和实验控制。当今虚拟仪器的系统开发采用的总线包括传统的 RS232 串行总线、GPIB 通用接口总线、VXI 总线,以及已经被 PC 机广泛采用的 USB 串行总线和 IEEE1394 总线

5、(即Fire wire,也叫做火线) 。世界各国的公司,特别是美国 NI 公司,为使虚拟仪器能够适应上述各种总线的配置,开发了大量的软件以及适应要求的硬件(插件) ,可以灵活的组建不同复杂程度的虚拟仪器自动检测系统。传统仪器有复杂的工艺问题和知识产权问题,发达国家的传统仪器市场已具有相当规模。而虚拟仪器是一个全新的领域,大力发展虚拟仪器技术可以略过传统仪器的发展阶段,迅速进入虚拟仪器发展阶段,与国外大公司处于同一起跑线,形成跨越式发展。目前,虚拟仪器技术在中国越来越受到人们重视,研究高潮方兴未艾,应用范围越来越广,虚拟仪器技术必然会有突飞猛进的发展。1.3 选题目的和意义1.3.1 选题目的(

6、1)培养毕业生综合运用所学专业知识解决实际问题的能力;(2)使毕业生初步掌握开展科学研究的工作步骤和基本方法;(3)培养毕业生正确表达技术路线和研究成果的能力(写作和口头表达) ;(4)初步培养毕业生探索科学技术前沿问题的兴趣;(5)掌握虚拟示波器开发过程1.3.2 选题意义传统示波器是由仪器厂家设定并定义好功能的一个封闭结构,它有特定的输入输出和仪器操作面板,具有波形显示、参数测量等功能。当要实现更多的测量功能时,就要配置更多的仪器,这给用户的使用带来很多的不便,并且传统示波器的测量精度比较低,无法满足高精度的测量要求,而且传统的示波器缺乏相应的计算机接口,配合数据采集及数据处理比较困难。此

7、外传统示波器比较庞大,制造成本比较高,这就本 科 毕 业 设 计 第 3 页 共 42 页增加了测量系统的开发成本。虚拟示波器的出现改变了原有的示波器的整体设计思路,用软件代替了硬件。将传统仪器由硬件实现的数据分析与显示功能能,改由功能强大的微型计算机来完成信号的处理和波形的显示,利用软件技术在屏幕上设计出方便、逼真的仪器面板,进行各种信号的处理、加工和分析,用各种不同方式(如数据、图形、图表等)表示测量结果,完成各种规模的测量任务。并具有存储、再现、分析、处理波形等特点,而且体积小,耗电少的功能。虚拟示波器携带方便,应用灵活,可以根据自己的应用重新更新仪器的功能。利用虚拟示波器所做的任何测量

8、,都是归结为对电压的测量。虚拟示波器可以测量各种波形的电压幅度,既可以测量直流电压和正弦电压,又可以测量脉冲或非正弦电压的幅度。更有用的是它可以测量一个脉冲电压波形各部分的电压幅值,如上冲量或顶部下降量等。这是其他任何电压测量仪器都不能比拟的。虚拟示波器可以测量信号的频率。通过采集的信号进行存储后,利用处理器对数据提取并处理,计算出信号的频率以及周期等。1.4 论述内容设计一种基于 FPGA 和 STM32 的虚拟数据采集系统,实现现场数据的采集、传输和存储。数据采集和处理过程主要由三部分构成:(1)由前级放大电路进行信号的调理,对数据衰减或放大来满足 AD 转换的要求;(2) AD 转换部分

9、由 80MHz 的 AD 转换芯片进行模拟到数字信号的转换;(3)控制和数据处理部分采用两种方案: 由 FPGA 控制,采用 Verilog HDL 语言设计 FIFO 缓冲数据区和 FIFO、AD 转换的时钟分频电路,通过 USB 芯片 CH372 将采集数据传输给上位机进行进一步处理,另外还有前级放大倍数的控制和 AC/DC 选择也可以由 FPGA 控制,FPGA 接受上位机传来的指令分析判断后输出相应的放大倍数控制电平和 AC/DC 选择电平; 在 STM32 中实现数据处理、传输以及放大倍数和 AC/DC 的选择,并在 PC 机中开发上层数据管理软件,实现数据的显示、存储并能给单片机和

10、 FPGA 发送指令。电路设计方法简单、可靠性高,能满足实际应用的要求。本 科 毕 业 设 计 第 4 页 共 42 页2 系统方案设计2.1 虚拟示波器设计要求(1)分析虚拟示波器的国内外发展概况与发展趋势,并对现有的几种虚拟示波器的优缺点进行分析,确定本课题所研究系统的技术类型,为课题的进一步研究工作奠定基础;(2)分析当前流行虚拟示波器方案优缺点的基础上,确定系统的总体设计方案,掌握虚拟示波器的原理;(3)在系统总体设计方案的基础上,通过调研,了解目前市场上各种芯片的性能,根据实际市场供需状况综合考虑性能、价格等因素,选择满足实际系统需要的各种芯片,进行系统硬件部分的具体设计,主要包括电

11、源模块、前级处理模块以及主控模块的电路原理图设计;(4)设计虚拟示波器单片机和 FPGA 的软件。在系统硬件平台的基础上,进行系统软件部分的设计,应用 KEIL 开发工具进行单片机 STM32 的程序设计及优化,应用quartus 开发工具进行 FPGA 模块的程序设计;(5)系统测试与分析,对系统测试;2.2 实验原理及设计基本思路2.2.1 工作原理虚拟示波器的出现改变了原有的示波器的整体设计思路,用软代替了硬件。将传统仪器由硬件实现的数据分析与显示功能能,改由功能强大的微型计算机来完成信号的处理和波形的显示,利用软件技术在屏幕上设计出方便、逼真的仪器面板,进行各种信号的处理、加工和分析,

12、用各种不同方式(如数据、图形、图表等)表示测量结果。一个典型的虚拟示波器原理框图如图 2.1 所示,它的工作过程一般分为存储和显示两个阶段,在存储工作阶段,模拟输入信号先经过适当的放大或衰减,然后经过取样和量化两个过程的数字化处理,将模拟信号转化成数字化信号,最后,数字化信号在逻辑控制电路的控制下一次写入到 FIFO 中,FIFO 缓存器是用 FPGA 芯片采用硬件编程语言编写异步 FIFO 缓存器,工作频率比专用 FIFO 芯片高许多,并且性能稳定。FIFO 采用 8Bit 数据宽度。对于高频信号和脉冲信号应用 FIFO 存储工作模式,低频信本 科 毕 业 设 计 第 5 页 共 42 页号

13、用实时工作模式。虚拟示波器对模拟量进行实时取样。实时取样是对一个周期内的信号的不同点取样,它与取样示波器的跨周期取样是不同的。N 个取样点得到的数字量分别存储于地址号为 OOH.0NH 的 N 个 FIFO 存储单元中,这样,采样点所存储的地址信息即表示了采样点的时间信息。在显示时依序取出采样离散化数据,再通过数据处理,送上位机进行波形显示。将数字存储技术和微处理器用于取样示波器,可以构成存储取样示波器。示波器的采样频率和满足 AD 转换要求的模拟信号的调理由上位机软件发出指令来控制。探头 前级放大和衰减AD转换FPGA、STM32数据处理及控制数据缓存PC 机处理及显示图 2.1 设计总框图

14、2.2.2 设计基本思路采集的模拟信号从 BNC 接口的探头进入,再通过模拟开关进行 AC/DC 和阻容衰减倍数的选择,选择合适的缩放比后进入跟随放大器使前后级阻抗匹配,以至于模拟信号能无大量丢失的传输到下一级压控运算放大器,进一步对模拟信号缩放调理,其输出信号再加上电平调节电路送来的直流分量使完全的适合 AD 转化电压要求。这部分的设计很重要,它制约着示波器的最大工作带宽,通过广泛的挑选芯片、精心的设计和实验使示波器的带宽达到 15MHz 左右。进入 AD 转换器输出数字信号,选择 8Bit 数据精度,80MHz 转换速率的高速 AD 转换器得到较高的测量频率。因为采用高达 80MHz 转换

15、速率的 AD 转换器,然而单片机的处理速度远远不如 AD转换的速度,所以对 AD 频率进行控制的同时还需要缓存器对采集的数据暂时缓存配合单片机进行数据处理。由于专用分频集成芯片和 FIFO 缓存搭建出来的电路频率不够高,本 科 毕 业 设 计 第 6 页 共 42 页抗干扰能力低,可靠性和灵活性差再加上成本的考虑,电路的性能和最高频率不能达到需求,因此采用 FPGA 对时钟进行分频控制 AD 转换的频率和 FIFO 缓存的频率,且FIFO 是通过硬件编程语言在 FPGA 内部烧写的逻辑缓存器。硬件描述语言编写的代码烧写到 FPGA 芯片内形成实实在在的逻辑电路,不仅频率高而且抗干扰能力很强。S

16、TM32 单片机进行数据处理,软件触发和放大倍数以及 AC/DC 选择将处理好的数据传输给上位机显示出波形。STM32 单片机和 FPGA 的控制指令由上位机软件通过操控得到,控制数据采集。2.3 单片机的选型论文的虚拟示波器由于使用 FPGA 设计的大容量 FIFO 并且 FPGA 的工作频率可以做的很高,因此对单片机的性能要求不高,所需的 IO 端口数量也不多,一般的普通单片机就能完成所需的工作。示波器通过哪种接口向上位机传输数据最方便是个值得考虑的问题。由于现在绝大部分上位机都带有 USB 接口,USB 接口的发展已经很成熟,传输速率较高,抗干扰能力强等优点,我选择一款带有 USB 接口

17、的单片机,即 STM32 单片机,具有性能高、成本低、功耗低等优点。STM32 系列基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARM Cortex.M3 内核。Cortex.M3 是一个 32 位的核,在传统的单片机领域中,有一些不同于通用 32 位 CPU 应用的要求。谭军举例说,在工控领域,用户要求具有更快的中断速度,Cortex.M3 采用了 Tail.Chaining 中断技术,完全基于硬件进行中断处理,最多可减少 12 个时钟周期数,在实际应用中可减少 70%中断。单片机的另外一个特点是调试工具非常便宜,不象 ARM 的仿真器动辄几千上万。针对这个特点,Cortex.M

18、3 采用了新型的单线调试(Single Wire)技术,专门拿出一个引脚来做调试,从而节约了大笔的调试工具费用。同时,Cortex.M3 中还集成了大部分存储器控制器,这样工程师可以直接在 MCU 外连接 Flash,降低了设计难度和应用障碍。按性能分成两个不同的系列:STM32F103“增强型”系列和 STM32F101“基本型”系列。增强型系列时钟频率达到 72MHz,是同类产品中性能最高的产品;基本型时钟频率为 36MHz,以 16 位产品的价格得到比 16 位产品大幅提升的性能,是 16 位产品用户的最佳选择。两个系列都内置 32K 到 128K 的闪存,不同的是 SRAM 的最大容量

19、和外设接口的组合。时钟频率 72MHz 时,从闪存执行代码,STM32 功耗 36mA,是 32 位市场上功耗最低的产品,相当于 0.5mA/MHz。此单片机有一个 USB 2.0 全速接口。本 科 毕 业 设 计 第 7 页 共 42 页考虑到所需 IO 端口的数量不多,外设功能也较少的因素,我选用了一款引脚数量较少,外设资源足够用的 STM32F103C8T6 单片机。STM32F103C8T6 是中等容量的 STM32产品,它基于 ARM 的 Cortex.M3内核,具有 64K 片上闪存以及一系列丰富的外设接口。支持任意用于调试 ARM 芯片的调试器,例如 Segger 的 JLink

20、,Keil(ARM)的 ULink 等。如图 2.2 所示。图 2.2 STM32F103C8T6 最小系统板2.4 FPGA 的选型FPGA(FieldProgrammable Gate Array) ,即现场可编程门阵列,它是在PAL、GAL、CPLD 等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。以硬件描述语言(Verilog 或 VHDL)所完成的电路设计,可以经过简单的综合与布局,快速的烧录至 FPGA 上进行测试,是现代 IC 设计验证的技术主流。这些可编辑元件

21、可以被用来实现一些基本的逻辑门电路(比如 AND、OR、XOR、NOT)或者更复杂一些的组合功能比如解码器或数学方程式。在大多数的 FPGA 里面,这些可编辑的元件里也包含记忆元件例如触发器(Flipflop)或者其他更加完整的记忆块。考虑到 AD 转换器需要的最高频率和 FIFO 容量的大小,我选用了 ALTERA 公司的性能不算高、价格合适的一款 FPGA 芯片,即 Cyclone 系列中的EP1C3144C8N。EP1C3144C8N 内核电压 1.5,IO 电压 3.3 ,最高频率 402MHz, TQFP144封装可编程阵列场。Cyclone 系列 FPGA 芯片 0.13 层铜 S

22、RAM 全过程,以及密度高达20060 逻辑单元(字)并且高达 288Bit 的 RAM 以及时钟功能(像锁相环锁相环)和专本 科 毕 业 设 计 第 8 页 共 42 页用双数据率(DDR)DDR SDRAM 接口和内存(内存要求快速循环 FCRAM) ,旋风设备是成本有效的解决方案的应用程序数据的路径旋风设备支持不同的 I / O 标准,包括 LVDS数据速率 640 每秒(Mbps) , 66 和 33MHz,32 位和 64 .外围组件互连(PCI) ,外围接口与支持 ASSP 和 ASIC 器件 Altera 公司的低成本也提供新配置设备配置串行到Cyclone 芯片。如图 2.3

23、所示。图 2.3 ALTERA 公司的 EP1C3T144C8N 芯片2.5 信号采集处理部分的方案确定AD 转换部分需要 8 位的最高达到 80MHz 的转换速率。AD 转换芯片输出的数字信号高电平不能高于+3.6V,且输出的低电平和高电平符合 FPGA 和单片机的正常工作标准。选用 AD 公司 ADS831 型 A/D 转换器,它是一款单通道、3.3V 供电、80Mbit/s 采样频率的模数转换器芯片。此款 AD 转换器的数字信号输出电平有 5V 和 3V 两种选择,满足设计的要求。对于阻抗变换,选择 ADI 公司的高性能 FET 输入单电压反馈的双路放大器 AD8066芯片,构成跟随器来

24、实现阻抗变换。AD8066 具有 5 V 至 24 V 的宽电源电压范围,可采用单电源供电,带宽为 145 MHz,适合各种应用。此外,这些放大器还具有轨到轨输出,使其功能更加多样化。成本很低,并且这些器件能提供出色的整体性能。此放大器的差分增益和相位误差分别为 0.02%和 0.02,0.1 dB 平坦度为 7 MHz。此外,此器件具有 180 V/s 高压摆率、出色的失真性能、极高的共模抑制(100 dB)和低输入失调电压。进一步信号调理部分选择了 ADI 公司的 AD603 芯片。AD603 是一款低噪声、电压控制型放大器,主要用于射频(RF)和中频(IF)自动增益控制(AGC)系统。它

25、提供精确的引脚可选增益,90 MHz 带宽时增益范围为.11 dB 至 +31 dB,9 MHz 带宽时增益范围为+9 dB 至+51 dB。用一个外部电阻便可获得任何中间增益范围。折合到输入的噪声谱密度仅为 1.3 nV/Hz,采用推荐的5 V 电源时功耗为 125mW。因此,非常适合本系统的本 科 毕 业 设 计 第 9 页 共 42 页设计指标并且容易控制放大倍数。 2.6 输出显示部分运用上位机进行波形显示。由于完成一个功能类似的大型应用软件,熟练的LabVIEW 程序员所需的开发时间,大概只是熟练的 C 程序员所需时间的 1/5 左右。所以,如果项目开发时间紧张,应该优先考虑使用 L

26、abVIEW,以缩短开发时间。经过搜集各类上位机软件的资料并考虑到时间的限制,最终选择了 LabVIEW(Laboratory Virtual Instrument Engineering Workbench) 。LabVIEW(Laboratory Virtual instrument Engineering Workbench)是一种图形化的编程语言的开发环境,它广泛地被工业界、学术界和研究实验室所接受,视为一个标准的数据采集和仪器控制软件。LabVIEW 集成了与满足 GPIB、VXI、RS.232 和 RS.485 协议的硬件及数据采集卡通讯的全部功能。它还内置了便于应用TCP/IP、

27、ActiveX 等软件标准的库函数。这是一个功能强大且灵活的软件。利用它可以方便地建立自己的虚拟仪器,其图形化的界面使得编程及使用过程都生动有趣。LabVIEW1 提供很多外观与传统仪器(如示波器、万用表)类似的控件,可用来方便地创建用户界面。用户界面在 LabVIEW 中被称为前面板。使用图标和连线,可以通过编程对前面板上的对象进行控制。这就是图形化源代码,又称 G 代码。LabVIEW 的图形化源代码在某种程度上类似于流程图,因此又被称作程序框图代码。2.7 系统电源本课题的电源需要提供四种电压:+5V,.5V,+3.3V,+1.5V,还需要较大的功率输出。+5V 和.5V 电源为运算放大

28、器和模拟开关提供电压和电流,电流要求大概 300mA 左右。+3.3V 电源为 FPGA 和单片机供电,所需电流大概 300mA 左右。+1.5V 电源为 FPGA 提供电压和所需电流。因此,经过查询资料,最终选择了 AMS1117 系列的稳压芯片和小功率极性反转电源转换器 ICL7660。AMS1117 系列稳压器有多种固定电压版,设计用于提供 1A 输出电流且工作压差可低至 1V。在最大输出电流时,AMS1117 器件的压差保证最大不超过 1.3V,并随负载电流的减小而逐渐降低。1.5V, 1.8V, 2.5V, 2.85V, 3.3V 和 5.0V 输出电流 1A 工作压差低至 1V 线

29、荷载调节:0.2% Max。负载调节:0.4% Max。可选 SOT.223,TO.252 和 SO.8封装。它的初始误差 (%) 1.5 压差 (V) 1.3。 本 科 毕 业 设 计 第 10 页 共 42 页ICL7660 的静态电流典型值为 170A,输入电压范围为 1.5.10V,(Intersil 公司ICL7660A 输入电压范围为 1.5.12)工作频率为 10 kHz 只需外接 10 kHz 的小体积电容,只需外接 10F 的小体积电容效率高达 98合输出功率可达 700mW(以 DIP 封装为例) ,符合输出 100mA 的要求。选用封装类型 SOT.223 的 AMS11

30、17.5.0,AMS1117.3.3,AMS1117.1.5。由于ICL7660 的最大输出电流 100mA,设计要求最大电流在 300mA 左右,因此,选用三片ICL7660 并联提供.5V 电压。 电源部分电路如图 2.4。图 2.4 电源电路图本 科 毕 业 设 计 第 11 页 共 42 页3 方案设计的具体实现根据为满足工程测量中使用便携并且成本低廉的要求,设计出一款高性能、高采样速率、带宽很宽的单通道虚拟示波器。硬件方面做了两种方案完成此设计:一种是STM32 用作控制器、数据及命令收发器,FPGA 只负责时钟分频和数据缓存;另一种是FPGA 既作控制器,也负责时钟的分频和数据的缓

31、存,同时与 USB 芯片 CH372 实现数据及命令的收发。3.1 数据采集与信号处理电路本部分的电路设计如图 3.1 所示。 图 3.1 数据采集与信号处理电路 3.1.1 衰减电路、AC/DC 选择及阻抗匹配电路本系统的测量电压的范围可达到95V,采用示波器探头和电路板上分压的方法将输入信号先进行 2:1 或 19:1 衰减,衰减电路要求输入阻抗高,同时在示波器的整个通频带内衰减的分压比均匀不变。要达到这个要求,仅简单的电阻分压是达不到目的的。本 科 毕 业 设 计 第 12 页 共 42 页因为在下一级输入及引线都存在分布电容,这个分布电容的存在对于被测信号的高频分量有严重的衰减,会造成

32、信号的高频分量的失真,因此,必须使用阻容补偿分压电路,然后再通过后续电路处理以满足 A/D 转换器的输入电压范围要求。阻容分压电路:Cw1、Cw2 为补偿电容,对于衰减倍数 K 为 2:1 时,调节Cw1、Cw2,当满足 R18Cw1=(Cw2/C64) (R25+R21) ,此时满足:K = = 。2518R6421Cw衰减倍数(Am)的计算:当 K 选择为 2:1 时,有 K = ;2518当 K 选择为 19:1 时,有 K = 。RAC/DC 电路通过电阻和电容串联组成 AC 通路。AC/DC 选择和衰减倍数的选择用模拟开关 CD4053 实现。CD4053/CC4053 是三 2 通

33、道数字控制模拟开关,有三个独立的数字控制输入端 A、B、C 和 INH 输入,具有低导通阻抗和低的截止漏电流。幅值为4.520V 的数字信号可控制峰.峰值至 20V 的数字信号。例如若VDD+5,VSS0,VEE.13.5V,则 05V 的数字信号可控制.13.54.5V 的模拟信号。这些开关电路在整个 VDD.VSS 和 VDDVEE 电源范围内具有极低的静态功耗,与控制信号的逻辑状态无关。通道选择输入端决定了哪个通道被连接。当 INH 输入端“1”时,所有通道截止。控制输入为高电平时, “0”通道被选,反之, “1”通道被选。电源电压为 5V 芯片且温度为 25.85时的最大模拟信号输入到

34、输出的延时时间是 15ns 左右,通道选择到模拟输出信号的最大延时时间是 93ns 左右。此部分的电路如图 3.2 所示。本 科 毕 业 设 计 第 13 页 共 42 页图 3.2 衰减电路、AC/DC 选择及阻抗匹配电路被测信号通过通用探头和分压器得到的输出信号,由于输出阻抗较高,需要经过阻抗变换成为低的输出阻抗,以保持信号的完整性。同时,对于一个系统来讲,过载是不可避免的,在过载情况下,如果没有保护,器件很容易损坏。因此,系统中设计了由二极管和电阻构成的过载保护电路,将输入信号限制在4.8V 的范围之间。输入保护及阻抗变换电路如图 3.3 所示。图 3.3 输入保护及阻抗变换电路3.1.

35、2 增益调节电路经过阻抗变换的信号,还要通过增益调节,增益调节芯片选用的是一款电压控制本 科 毕 业 设 计 第 14 页 共 42 页放大倍数的高性能 AD603 芯片。增益调节电路包括放大电路、直流分量调节电路和直流分量控制增益倍数的电路。在能使输入到 A/D 转换器的电压满足 A/D 的输入电压要求,采用模拟开关和宽带精密放大器配合,由模拟开关选通不同的接入电阻值,从而实现不同的放大倍数,达到程控放大的目的。增益调节电路如图 3.4 所示。图 3.4 增益调节电路增益调节 AD603 电路的分析:2 脚为差分电压参考固定端,即输入电压为固定值U2,U2 = * Vcc 。1 脚为控制放大

36、倍数电压端,即 1 脚的输入电压是可780R变电压 U1,由 PWM 输出电压控制。增益放大倍数由 U3 = U1.U2 决定。设计 AD603 的增益,当 7 脚 VOUT 和 5 脚 FDBK 两管脚的连接不同时,其放大器的增益范围也不一样。可设置位三种形式。 模式一:将 7 脚 VOUT 与 5 脚 FDBK 短路,即为宽频带模式(90MHz 宽频带) ,AD603的增益设置为.11.07dB+31.07dB. 模式二:7 脚 VOUT 与 5 脚 FDBK 之间外接一个电阻 REXT,FDBK 与 COMN 端之间接一个 5.6uF 的电容频率补偿。根据放大器的增益关系式,选取合适的

37、REXT,可获得所需要的模式一与模式三之间的增益值。当 REXT=2.15 千欧时,增益范围为.1+41dB。 模式三:7 脚 VOUT 与 5 脚 FDBK 之间开路,FDBK 对 COMN 连接一个 18uF 的电容用于扩展频率响应,该模式为高增益模式,其增益范围为+8.92+51.07dB,带宽为 9MHz.本 科 毕 业 设 计 第 15 页 共 42 页在以上三种模式中,增益 G(dB)与控制电压 U3 的关系。当 U3 在.500mV+500mV范围内以 40dB/V(既 25mV/dB)进行线性增益控制,增益 G(dB)与控制电压 U3 之间的关系为:GdB=40*U3+Goi(

38、i=1,2,3) ,其中 VG=VGPOS.VGNEG(单位为伏特) ,Goi 分别为三种不同模式的增益常量:GO1=10dB,GO2=1030dB(由 REXT 决定,当 REXT=2.15千欧时,GO2=20dB) ,GO3=30dB。 当 U3+500mV 时,增益(dB)与控制电压 VG 之间不满足线性关系,当 U3=.526mV 时,Gmin(dB)=U3.42.14;U3=+526mV 时,Gmax(dB)=GF。根据设计要求,论文采用的是模式一,即宽频带模式,增益设置为.11.07dB+31.07dB。增益与控制电压 U3 的关系为 GdB=40*U3+10。3.1.3 阻抗匹配

39、、直流调节及增益调节控制电路增益倍数调节和直流分量输出都是采用 PWM 控制方法。PWM 信号由控制器输出,再经过低通滤波器输入到运算放大器 LM6172 组成的阻抗匹配电路,输出到增益调节控制端和直流分量控制端。增益倍数调节电路如图 3.5 所示。图 3.5 增益倍数控制电路直流分量电路选用 LM6172 运算放大器组成跟随电路,控制电路输出 PWM 控制信号,输入到 LM6172 的跟随输入端,其输入端由低通滤波电路组成,最终输出符合要求的直流电平。由设计图加上运算放大器的“虚短、虚断”的特性,输入信号 Vi 加入直流分量 Ui 再经过 AD8066 跟随输出 Vo,它们之间的关系为:Vo

40、 = 。根2405*RViUi本 科 毕 业 设 计 第 16 页 共 42 页据关系式可看出输入信号被缩减到 倍。直流分量调节电路如图 3.6 所示。2405R图 3.6 直流分量调节电路3.1.4 A/D 转换电路AD831 模数转换器采用内部参考电压工作方式,输出数字电压高电平 3V,模拟供电电压+5V,并采用了模拟地和数字地隔离的措施,增强系统的工作稳定性。如图 3.7所示。图 3.7 AD 转换电路本 科 毕 业 设 计 第 17 页 共 42 页3.2 STM32 部分的主控电路3.2.1 STM32 的 USART 接口通用同步异步收发器(USART)提供了一种灵活的方法与使用工

41、业标准 NRZ 异步串行数据格式的外部设备之间进行全双工数据交换。USART 利用分数波特率发生器提供宽范围的波特率选择。 它支持同步单向通信和半双工单线通信,也支持 LIN(局部互连网),智能卡协议和 IrDA(红外数据组织)SIR ENDEC 规范,以及调制解调器(CTS/RTS)操作。它还允许多处理器通信。 使用多缓冲器配置的 DMA 方式,可以实现高速数据通信。论文应用 USART 接口的半双工单线通信方式实现数据和命令的收发。 3.2.2 STM32 的 USB 接口USB 模块为 PC 主机和微控制器所实现的功能之间提供了符合 USB 规范的通信连接。PC 主机和微控制器之间的数据

42、传输是通过共享一专用的数据缓冲区来完成的,该数据缓冲区能被 USB 外设直接访问。此外,STM32 可以通过 USB 电源加上 AMS1117.3.3 的稳压芯片获得+3.3V 的供电电压。USB 可提供最大电流 500mA 的+5V 电压电源,能满足STM32 的工作需求。如图 3.8 所示。图 3.8 USB 接口电路3.2.3 STM32 的主控应用电路STM32 单片机选用 8MHz 的外部无源晶振,通过内部的 PLL 电路可倍频到 72MHz 的工作频率。它的 BOOT0 和 BOOT1 引脚控制启动模式,可以通过 BOOT1:0引脚选择三种不同启动模式。如图表 1 所示。本 科 毕

43、 业 设 计 第 18 页 共 42 页论文的硬件电路设计 BOOT1 引脚接地,即 BOOT1 恒为 0,BOOT0 引脚有 0 和 1 两种选择。在使用 ISP 方式下载程序时将 BOOT0 脚接高电平,即 BOOT0 脚为 0,再按下复位键,即可完成程序的下载。在完成程序下载后 BOOT0 脚可以作为普通 I/O 端口使用。STM32 的主控应用电路如图 3.9 所示。STM32 主要负责读 FIFO 缓存中的数据,然后传输给上位机,同时接受上位机传来的命令,分析命令做出相应的控制。控制部分主要有:对 PWM1、PWM2 的输出占空比控制来调节直流分量大小和增益大小;对 FIFO 缓存和

44、 AD 转换器的频率控制,通过 STM32发出改变频率脉冲给 FPGA 的频率控制接口来改变它们的时钟频率。例如当 STM32 接受到改变 PWM1 或 PWM2 占空比大小命令式时,STM32 调节 PWM 值一次,反复调节找到合适的值(PWM 设置了 2 个数组,分别设置了 6 个不同的值) ;当 FPGA 接受到改变频率脉冲式,控制器改变一次 FIFO 和 AD 的频率,如此循环改变选择合适的频率值(有 8 种不同的频率选择值,3 位的频率选择寄存器不断加 1 变化来选择合适的值) 。表 1 启动模式启动模式选择引脚BOOT1 BOOT0 启动模式 说明X 0 主闪存存储器 主闪存存储器

45、被选为启动区域 0 1 系统存储器 系统存储器被选为启动区域 1 1 内置 SRAM 内置 SRAM 被选为启动区域 本 科 毕 业 设 计 第 19 页 共 42 页图 3.9 STM32 主控电路图3.3 FPGA 部分的主控电路3.3.1 FPGA 的硬件电路设计FPGA 的电路设计采用两种程序下载方式:JTAG 和 AS 两种方式。JTAG 下载方式是将编译后生成的 sof 文件通过 JTAG 口直接下载到 FPGA 内,一般是临时调试用的,掉电后下载数据将丢失;AS 下载一般是将编译后生成的 pof 文件下载到 prom(flash)里,掉电数据不会丢失,重新上电 prom 会自动加

46、载程序到 FPGA。AS 下载方式选用的prom 为 EPCS1N 型号,是 1Mbit 的 flash 存储设备,+3.3V 供电电压的 8 脚贴片封装的存储器,常用于 Stratix II FPGAs 和 Cyclone series FPGAs 的 AS 配置方案。FPGA芯片选择的是 EP1C3T144C8N,其内部资源足够本次设计的使用。FPGA 内部资源介绍在第二章 2.4 节。FPGA 的硬件电路设计如图 3.10 所示。本 科 毕 业 设 计 第 20 页 共 42 页图 3.10 FPGA 硬件电路设计3.3.2 FPGA 的内部逻辑电路FPGA 的内部逻辑电路有时钟分频电路

47、,异步 FIFO 缓存模块,串口发送和接收模块,两路 PWM 输出模块,异步 FIFO 控制模块。50MHz 的时钟信号进入分频电路模块得到两路分频后的信号,一路给 AD 转换器,另一路给内部的异步 FIFO 模块。分频电路共提供 FIFO 写时钟 8 种频率,有:50MHz,25MHz,12.5MHz,5MHz,6.25MHz,1.25MHz,500KHz,250KHz;由于 ADS831的最低工作频率在 500KHz 以上,所以分频电路提供给 AD 转换器的时钟频率为 7 种。UART 模块的发送负责将接收到的 FIFO 数据发送到上位机,接收模块负责接受上位机的命令,此部分还包括对接收到

48、的命令的分析,并做出相应的控制,主要有对 PWM 模块输出信号的控制和前级处理部分模拟开关的控制。异步 FIFO 模块是调用 Altera 的官方固件库得到,性能比自己编写的要好很多。分频逻辑电路由 Quartus II 软件自带的基本分频器件单元 74390 组合得到不同需求的频率。内部逻辑顶层电路如图 3.11 所示,分频电路如图 3.12 所示。本 科 毕 业 设 计 第 21 页 共 42 页图 3.11 FPGA 内部逻辑电路图图 3.12 分频电路3.3.3 FPGA 与 CH372 的接口电路设计CH372 是一个 USB 总线的通用设备接口芯片,是 CH371 的升级产品,是

49、CH375 芯片的功能简化版。在本地端,CH372 具有 8 位数据总线和读、写、片选控制线以及中断输出,可以方便地挂接到单片机/DSP/MCU/MPU 等控制器的系统总线上。CH372 芯片本 科 毕 业 设 计 第 22 页 共 42 页在本地端提供了通用的被动并行接口,包括:8 位双向数据总线 D7D0、读选通输入引脚 RD#、写选通输入引脚 WR#、片选输入引脚 CS#、中断输出引脚 INT#以及地址输入引脚 A0。通过被动并行接口,CH372 芯片可以很方便地挂接到各种 8 位单片机、MCU的系统总线上,并且可以与多个外围器件共存。论文应用 FPGA 硬件语言描述的内部逻辑控制电路来控制 CH372 的数据读写。它有两种电源供电电压:+5V 和+3.3V。CH372 芯片支持 5V 电源电压或者 3.3V 电源电压。当使用 5V 工作电压时, CH372 芯片的 VCC 引脚输入外部 5V 电源,并且 V3 引脚应该外接容量为 1000pF 到 0.01uF 左右的电源退耦电容。当使用 3.3V 工作电压时,CH372 芯片的 V3 引脚应该与

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报