本科毕业设计--高速数据采集系统.doc_第1页
本科毕业设计--高速数据采集系统.doc_第2页
本科毕业设计--高速数据采集系统.doc_第3页
本科毕业设计--高速数据采集系统.doc_第4页
本科毕业设计--高速数据采集系统.doc_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

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

文档简介

毕业设计论文高速数据采集系统信息技术学院 电子信息科学与技术姓名:陈指导教师:高速数据采集系统作者:陈玲 指导教师:论文摘要:介绍了一种基于fpga(现场可编程门阵列)和fifo(先入先出存储器)的多通道高速ad数据采集系统的设计方法,并给出了这种数据采集方法的硬件原理电路和主要的软件设计思路。本系统的特点在于该系统在单片机的控制下实现高速数据采集,采样频率可达12 mhz。该系统可靠性高,抗干扰能力强,造价低廉。采用该设计方法所设计的数据采集系统不但可以实现高速采集多通道的数据,而且还可以扩展模拟量的输入通道数。对于一般的高速数据采集系统而言,除了采用高速的a/d转换器、高速存储器等高速器件之外,还要解决如何高速寻址、如何控制总线逻辑、如何进行高速存储以及如何方便地与pc机交换数据等问题。这些问题都是设计一个高速数据采集系统所要共同面对的问题。兼顾这些共性问题,笔者设计了一套以精确故障定位为目的的高速数据采集系统。abstract: introduced based on a cpld (complex programmable logic devices) and fifo (first in first out memory), multi-channel high-speed data high-speed system design a/d methods, and methods of providing such data collection hardware circuit and the main principles of software design ideas. characteristics of the system lies in the system of control in chanpianji achieve high-speed data collection, sampling frequency to 12 mhz. the high reliability of the system, anti-interference capability is strong, prices are low. the design methodology used to design the data collection system can achieve high-speed multi-channel data acquisition, simulation, but can also expand the volume of a few passages. high-speed data acquisition system in general, in addition to using high-speed a/d, high-speed, high-speed memory devices, but also how to solve the high-speed xinzhi, how to control the bus logic, how to facilitate high-speed storage and data exchange with a pc. these problems are designed to be a high-speed data acquisition system common problems. both of these common problems, the authors designed a precise breakdown as to the purpose of high-speed data acquisition systems.关键词:fpga高速数据采集系统 单片机目录第一章绪论21.1发展前景及研究意义2第二章系统硬件设计42.1系统设计原理框图42.2设计基本思想42.3.1at89c51简介52.3.2fifo存储器件idt72v2113简介72.3.3fpga芯片简介102.3.4ad转换芯片tlc5510的简介122.3.5串口rs232的简介16第三章系统设计原理及工作原理163.1ad转换工作原理163.2关于fpga的简介173.2.1fpga的概述173.3fpga实现硬件采样的原理183.4显示电路的工作原理193.4.1七段显示器的原理193.4.2静态显示接口21第四章数据采集软件设计224.1数据处理23第五章结束语24第六章 附录256.1系统设计总体流程图256.2系统设计程序276.3系统总体电路图286.4参考文献:29第一章绪论1.1发展前景及研究意义现代工业生产和科学研究对数据采集的要求日益提高。计算机技术的发展为现代大工业的发展提供了硬件保障。工业应用系统对作为控制的计算机也提出了新的要求。一方面要求主控机处理的数据更多,速度也更快;另一方面由于应用系统复杂程度不断提高,控制单元种类很多,速度有快有慢,要求主控机有较强的适应性。总线技术的发展为各种系统的设计提供了很大方便,提高了系统运行的速度,用户可以进行各种组合。pc机总线通常联接到pc微机的扩展槽再经插槽为外设提供io通道,速度和可靠性都很高。主机板通过扩展槽这种开放式的总线体系与各种外围设备进行信息交换。ibm的16位工业标准isa总线是在工业生产中广为使用的工控机系统总线,这种总线的技术已经很成熟并被广泛采用。目前不同性能指标的通用或专用的数据采集系统,在各种领域中随处可见。但是,由于成本或技术开发等众多因素的影响,一般的数据采集系统其速度和通道数不能满足一些特殊领域的测试要求,或者满足这些要求的系统又由于成本相当高而市场推广的难度加大。高速数据采集是目前数据采集的发展方向。随着微电子技术飞速发展,电子器件运行速度有了很大的提高,几十兆采样频率的ad逐渐得到广泛的应用。但是,数据传输和存储一直制约着数据采集系统向更高速度上的发展。因此,如何进行高速的数据传输和存储是大容量连续数据采集系统的技术关键。目前一般是从两个方面进行考虑:1 采用高速传输协议,例如pci、usb2.0、1394等高速的数据传输协议,将采样数据传送到主机,然后进行后续处理;2 采用高速度、大容量的存储器件,如sdram、sbsram、fifo等,将采样数据存储在采集板上直接进行处理。其中高速fifo就是硬件上得到广泛使用的一种存储器件,因此我们采用了高速的fifo 器件idt72v2113。对于一般的高速数据采集系统而言,除了采用高速的a/d转换器、高速存储器等高速器件之外,还要解决如何高速寻址、如何控制总线逻辑、如何进行高速存储以及如何方便地与pc机交换数据等问题。这些问题都是设计一个高速数据采集系统所要共同面对的问题。本文介绍的高速数据采集,实现了数据的高速数据采集、数据存储、数据分析等。使cpu能控制和协调外设的运行,并提出了一种解决慢速外设和高速cpu时序之间矛盾的方法。可以应用于高频数据的采集、分析处理。1.2方案论证:随着单片机构成的较小系统中对信号进行实时处理(如谐波分析等)已经成为可能,且越来越受到人们的重视。这就要求作为最底层的数据采集系统,既要具有很高的采样速率,又要能提供更丰富的原始数据信息。 常规采集方案为:(1)由单片机直接控制的采集方案,这是最简单最常用的控制方案。由于每次采样都要有单片机的参与,需占用单片机的时间,影响其数据处理,而且对于多通道、多个ad转换器的控制,因所需处理的信息更多,则更加不方便。(2)由dma控制的采集方案。此方案硬件电路复杂,若与单片机配合使用,需要单片机具有总线挂起功能(hold功能),否则还需要进行总线切换。在总线挂起的时候,单片机就不能访问外部存储器和外部端口,如果单片机要访问外部数据,也只能等待总线的释放,这样就带来很多不方便,也影响数据的及时处理。在电力系统的微机检测系统中或者其他数据巡检系统中,需要对多通道的数据作快速的采集分析,尤其是对于实时性很强的系统,更要求采集获得的数据必须实时准确地反映系统的运行情况,例如,故障滤波和实时在线监测系统。本文提出了一种易与各种单片机系统接口的由纯硬件电路控制的多通道高速数据采集系统。它的自动采样硬件电路主要采用fpga(field programmable gate array)和fifo(first in first out)技术设计而成。该装置可以实现多路模拟量的高速采集,每一个模数转换器(adc)可以采集10个通道的数据,并且多个模数转换器件的输出可以以总线形式进行扩展。第二章系统硬件设计2.1系统设计原理框图多通道高速ad数据采集系统的设计原理框图如图1所示:图2.1高速数据采集系统原理框图2.2设计基本思想图中模拟量经过低通滤波器预处理后,再进入采样保持器(sh),经多路开关(multichannel switches)分时切换进入模数转换器,通过单片机的触发,在fpga器件的控制下,进入一次循环采样,并将采样数据依顺序打入fifo器件,单片机在每个采样结束后直接从fifo芯片中读出数据即可。该多通道高速ad数据采集系统的设计核心就是在单片机的每一个定时中断时,从fifo芯片中读入采样数据后,复位fifo器件,触发fpga进行硬件时序控制采样,采样过程不需要单片机的参与,单片机可以并行处理主程序中的数据。高速数据采集的数据存放在双口ram中,需要向pc机传送数据。通过对单片机来读sram中的数据,而没有采用对存储器的操作办法。当读入数据满时,发出信号停止采样。pc系列微机系统的端口地址空间为0003ffh,这些地址通过对a0a9这10根地址线译码生成。系统预留给用户的地址为30031fh,作为用户io口的扩展。aen参与译码 ,当aen0时,才有效,表明此时由cpu行使总线控制权。2.3芯片介绍2.3.1at89c51简介at89c51是一种带4k字节闪烁可编程可擦除只读存储器(fperomfalsh programmable and erasable read only memory)的低电压,高性能cmos8位微处理器。该器件采用atmel高密度非易失存储器制造技术制造,与工业标准的mcs-51 指令集和输出管脚相兼容。由于将多功能8位cpu和闪烁存储器组合在单个芯片中,atmel的at89c51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。图2.2单片机结构图1主要特性:与mcs-51 兼容 4k字节可编程闪烁存储器 寿命:1000写/擦循环数据保留时间:10年全静态工作:0hz-24hz三级程序存储器锁定128*8位内部ram32可编程i/o线两个16位定时器/计数器5个中断源 可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路 2管脚说明:vcc:供电电压。gnd:接地。p0口:p0口为一个8位漏级开路双向i/o口,每脚可吸收8ttl门电流。当p1口的管脚第一次写1时,被定义为高阻输入。p0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在fiash编程时,p0 口作为原码输入口,当fiash进行校验时,p0输出原码,此时p0外部必须被拉高。p1口:p1口是一个内部提供上拉电阻的8位双向i/o口,p1口缓冲器能接收输出4ttl门电流。p1口管脚写入1后,被内部上拉为高,可用作输入,p1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在flash编程和校验时,p1口作为第八位地址接收。 p2口:p2口为一个内部上拉电阻的8位双向i/o口,p2口缓冲器可接收,输出4个ttl门电流,当p2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,p2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。p2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,p2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,p2口输出其特殊功能寄存器的内容。p2口在flash编程和校验时接收高八位地址信号和控制信号。p3口:p3口管脚是8个带内部上拉电阻的双向i/o口,可接收输出4个ttl门电流。当p3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,p3口将输出电流(ill)这是由于上拉的缘故。p3口也可作为at89c51的一些特殊功能口,如下表所示:口管脚 备选功能p3.0 rxd(串行输入口)p3.1 txd(串行输出口)p3.2 /int0(外部中断0)p3.3 /int1(外部中断1)p3.4 t0(记时器0外部输入)p3.5 t1(记时器1外部输入)p3.6 /wr(外部数据存储器写选通)p3.7 /rd(外部数据存储器读选通)p3口同时为闪烁编程和编程校验接收一些控制信号。rst:复位输入。当振荡器复位器件时,要保持rst脚两个机器周期的高电平时间。ale/prog:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在flash编程期间,此引脚用于输入编程脉冲。在平时,ale端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ale脉冲。如想禁止ale的输出可在sfr8eh地址上置0。此时, ale只有在执行movx,movc指令是ale才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ale禁止,置位无效。/psen:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/psen有效。但在访问外部数据存储器时,这两次有效的/psen信号将不出现。/ea/vpp:当/ea保持低电平时,则在此期间外部程序存储器(0000h-ffffh),不管是否有内部程序存储器。注意加密方式1时,/ea将内部锁定为reset;当/ea端保持高电平时,此间内部程序存储器。在flash编程期间,此引脚也用于施加12v编程电源(vpp)。xtal1:反向振荡放大器的输入及内部时钟工作电路的输入。xtal2:来自反向振荡器的输出。3振荡器特性xtal1和xtal2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,xtal2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。4芯片擦除整个perom阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ale管脚处于低电平10ms 来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。此外,at89c51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,cpu停止工作。但ram,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存ram的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。2.3.2fifo存储器件idt72v2113简介高速数据采集是目前数据采集的发展方向。随着微电子技术飞速发展,电子器件运行速度有了很大的提高,几十兆采样频率的ad逐渐得到广泛的应用。但是,数据传输和存储一直制约着数据采集系统向更高速度上的发展。因此,如何进行高速的数据传输和存储是大容量连续数据采集系统的技术关键。目前一般是从两个方面进行考虑:1 采用高速传输协议,例如pci、usb2.0、1394等高速的数据传输协议,将采样数据传送到主机,然后进行后续处理;2 采用高速度、大容量的存储器件,如sdram、sbsram、fifo等,将采样数据存储在采集板上直接进行处理。其中高速fifo就是硬件上得到广泛使用的一种存储器件,在此详细介绍了美国idt公司的idt72v2113的内部结构、主要功能及其使用方法,并就如何实现多片72v2113的字长和深度扩展的软件和硬件连接给出详细的说明。1) idt72v2113功能介绍idt72v2113是由美国idt公司生产的高速大容量先进先出存储器件。其最高工作频率为133mhz;容量为512k 字节,可以通过引脚方便的将容量设置成512k 9bit或者256k 18bit两种方式;idt72v2113可以设置标准工作模式或者fwft(fist word fall through)工作模式,并提供全满、半满、全空、将满以及将空等五种标志信号。图2.3 idt72v2113内部原理图idt72v2113的内部结构如图2.3所示,主要由一个内部ram阵列以及读写控制单元、读写指针单元、输入输出寄存器、标志信号以及复位单元组成。其内部ram阵列采用先进先出设计技术,外部数据首先存到输入数据寄存器,再传送到ram阵列,依次保存,数据的先后顺序通过修改写指针确认。ram阵列始终检测输出数据寄存器的状态,一旦为空,ram阵列的数据送到输出数据寄存器,外部设备可以直接从输出数据寄存器读出数据,数据的读顺序通过读指针来控制。通过设置输出使能引脚为高状态来禁止数据的输出,以减低芯片的功耗。为了方便数据的读写,idt72v2113还增加了一些对数据读写的控制信号,包括读写使能、读写时钟以及字宽控制等。2)idt72v2113的字长和字深扩展大容量数据存储是高速数据采集系统迫切需要解决的问题,例如,一个20m采样速率、8位的adc,在一秒钟的时间内所采集到的数据量是20m字节,虽然idt72v2113的单片容量是512k 9 bit,可以很好的满足一般的数据采集系统的需要,但是,对于高速、无间隔的数据采集系统来说,一片的容量是不够的。idt72v2113便于扩展的特性可以很容易地解决这个问题。其容量扩展可以分为字长扩展和深度扩展,且不需要外部控制电路,很方便电路设计及软件开发。 idt72v2113的字长扩展idt72v2113的字长扩展比较简单,只要把各个芯片的控制信号连在一起就可以实现。这里需要注意的是 ef/ir和ff/or两个引脚,在标准模式下这两个管脚的功能为ef和ff,把各个芯片这两个管脚分别相与;在fwft模式下,这两个管脚功能为ir和or,把各个芯片的这两个管脚分别相或,这样就可以确保同步读写每一个idt72v213。idt72v2113的深度扩展idt72v2113的深度扩展方式仅适用于fwft工作模式。两片idt72v2113的字深扩展的硬件连接如图2.4所示。其中,传输时钟可以选择写时钟和读时钟中频率高的那个时钟信号。工作原理为:当有数据写入第一片fifo中后,其输出允许信号(or)低有效,从而使第二片fifo的写使能信号有效;同时,只要第二片fifo中仍有空间,它的输入允许信号(ir)有效(低有效),从而使第一片fifo的读使能信号(ren)有效,这样,在传输时钟的驱动下,数据由第一片fifo向第二片fifo传送,直到第二片fifo写满为止,以后的数据将储存在第一片fifo中。通过深度扩展,两片idt72v2113可形成容量为1m 9 bit的数据缓冲。3)idt72v2113的容量扩展实例idt72v2113不仅可以通过字长扩展和深度扩展来实现容量扩展,而且可以将两者结合起来,进行更大容量的扩展,如用四片idt72v2113扩展成容量为1m 18 bit的数据缓冲,连接图如图2.5所示。 图2.5 容量扩展示例2.3.3fpga芯片简介本数据采集的设计中,选用一片flex10k系列芯片epf10k130v epf10k130b来实现时序发生器的功能 。flex 10k是altera公司研制的第一个嵌入式的pld,它具有高密度、低成本、低功率等特点,是当今altera cpld中应用前景最好的器件系列之一。它采用了重复可构造的cmos sram工艺,并把连续的快速通道互连与独特的嵌入式阵列结构相结合,同时可结合众多可编程器件来完成普通门阵列的宏功能。每一个flex 10k器件均包括一个嵌入式阵列和一个逻辑阵列,因而设计人员可轻松地开发集存贮器、数字信号处理器及特殊逻辑等强大功能于一身的芯片。flex10k系列是altera公司新近开发的一种高性能可编程逻辑器件系列,它的结构特点使之有很多新颖的功能,尤其适合于数字信号处理系统应用。 1)flex10k系列主要具有以下特点: 是第一种商品化的具有嵌入阵列(embeded array)的可编程逻辑器件 系列,可以高效实现片内存储器和复杂逻辑函数。 高容量,单片集成度为1万10万等效逻辑门,具有7205392个片内寄 存器,可以在不占用内部逻辑资源的条件下实现6,14424,576 bits的片内 存储器。 具有灵活的内部连线资源,内部模块间采用高速、延时可预测的快速通道连接,逻辑单元间具有高速、高扇出的级联链和快速进位链,片内还有三态网络和6个全局时钟以及4个全局清零信号。 丰富的i/o资源,每个i/o管腿可以选择为三态控制或集电极开路输出,还可以通过编程控制每个i/o管腿的速度以及i/o寄存器的使用。采用0.5微米三层金属sram工艺,配置信息由片外存储器或主机提供,可以灵活实现在线动态重构功能。片内包含符合ieee标准的边界扫描测试(bst)电路。对3.3v和5v电源兼容,并具有低功耗工作模式。灵活的封装形式,具有84560管腿的多种封装,并且该系列内同一封装的不同型号芯片管腿兼容。altera公司的flex10k是工业界第一个嵌入式的pld,具有高密度、低成本、低功率等优点。器件的主要结构特点是除主要的逻辑阵列块(lab)之外,首次采用了嵌入阵列块(eab)。每个阵列块包含8个逻辑单元(le)和一个局部互连。一个le又由四输入查找表(lut)、一个可编程寄存器和专用的载运和级联功能的信号通道所组成。 在flex10k器件中,把每一组逻辑单元(8个le)组成一个逻辑阵列块(lab),所有的逻辑阵列块(lab)排成行和列。在一行里还包含一个单一的eab。多个lab和多个eab采用快速通道互相连接。 嵌入式阵列块(eab)是flex10k系列器件在结构设计上的一个重要部件。它是一个输入端口和输出端口都带有寄存器的一种灵活的ram块,嵌入阵列块(eab)组成的规模和灵活性对比较多的内存是适宜的。采用可编程的带有只读平台的嵌入阵列块(eab)在配置期间可执行逻辑功能并建立一个大的查找表(lut),在这个查找表里用查找的结果执行组合逻辑函数,而不用计算它们。显然,用这种组合逻辑函数执行比通常在逻辑里应用算法执行要快,而且专用eab容易应用,并且快速提供可能预测的延迟。该系列芯片是altera公司典型的可通过jtag在线编程的fpga器件。外部时钟信号作为fpga时序发生器的基准信号,所有时序信号的产生都是以此为基础的。epf10k130v epf10k130b芯片内部分为两部分:一部分是信号处理控制时序发生器,它为信号处理(如a/d转换、数字信号存取等)提供各种同步控制时序;另一部分是驱动时序发生器,它根据具体驱动时序逻辑的要求,产生工作所需的驱动信号,并通过积分控制信号设定不同的积分周期,同时它还为信号处理控制时序的产生提供时钟控制信号。该数据采集系统有三种工作状态:数据采集系统初始化;数据采集过程;机读取信号过程。每个flex 10k中的eab均含有2048bit的ram。另外,每个eab单元中还包括数据区、总线和读/写控制等几部分。图2.6所示为eab单元的内都结构。数据区是eab的核心部分,每个eab包含2048bit的ram,同时又可根据数据线/地址线的不同设置将其宽度调整为20481bit,10242bit,5124bit,2568bit等。总线是指eab中所包括的三条总线,即输入数据总线、地址总线和输出数据总线。其中输入数据总线可以配制成8bit、4bit、2bit或1bit位宽;地址总线同数据总线相适应,具有8bit、9bit、10bit或11bit位宽;而输出数据总线则与输入总线相对应,这三条总线都设计有同步/异步两种工作方式。第三部分为读/写控制部分。当eab用于异步ram电路时,必须外加ram写使能信号we,以保证数据和地址信号满足其时序要求,而当eab用作同步ram时,它可以产生相对其全局时钟信号的we信号。eab的ram与epga中的分布式ram不同,flex 10k eab能够信号可预测的定时关系,而且eab的写使能信号(we)即可与输入时钟同步工作,也可以异步工作。另外,eab还包含用于同步设计的输入寄存器、输出寄存器和地址寄存器。eab的输出可以是寄存器输出,也可以是组合输出,eab ram的大小很灵活,因此,它既可以配置成2568、5124,也可以配置成10242或20481。flex 10k器件的eab资源如表1所列。eab的ram资源较为丰富,可用来设计ram、fifo及双端口ram等许多应用电路。表1 flex 10k器件eab资源器件型号eab的个数epf10k10 epf10k10a3epf10k206epf10k30 epf10k30a epf10k30b6epf10k408epf10k50 epf10k50v epf10k50b10epf10k709epf10k100 epf10k100a epf10k100b12epf10k130v epf10k130b16一片fpga可以替代原来的几十个分立元件来实现数据采集系统中各种驱动和控制时序逻辑,而且fpga还允许设计编程保密位。采用fpga有利于减小系统电路板的面积、提高系统的安全保密性、降低系统功耗和保证产品的质量。总之,时序发生器的可编程特性使其能够最大程度地满足用户的不同要求。2.3.4ad转换芯片tlc5510的简介ad转换器采用ti公司的t lc 5510芯片。tlc 5510为5v电源、8bit、20msps的高速并行a/d转换器,最大量程为2v。() 的引脚说明为引脚、表贴封装形式()。其引脚排列如图所示。各引脚功能如下:模拟信号地; :模拟信号输入端;:时钟输入端;:数字信号地;:数据输出端口。为数据最低位,为最高位;:输出使能端。当为低时, 数据有效,当为高时,为高阻抗;:模拟电路工作电源;:数字电路工作电源; :内部参考电压引出端之一,当使用内部电压分压器产生额定的基准电压时,此端短路至端;:参考电压引出端之二;:参考电压引出端之三; :内部参考电压引出端之四,当使用内部电压基准器产生额定的基准电压时,此端短路至端。() 的内部结构及工作过程的内部结构如图所示。由图中可以看出:模数转换器内含时钟发生器、内部基准电压分压器、套高位采样比较器、编码器、锁存器、套低位采样比较器、编码器和个低位锁存器等电路。的外部时钟信号通过其内部的时钟发生器可产生路内部时钟,以驱动组采样比较器。基准电压分压器则可用来为这组比较器提供基准电压。输出信号的高位由高位编码器直接提供,而低位的采样数据则由两个低位的编码器交替提供。的工作时序时钟信号在每一个下降沿采集模拟输入信号。第次采集的数据经过个时钟周期的延迟之后,将送到内部数据总线上。在工作时序的控制下,当第一个时钟周期的下降沿到来时,模拟输入电压将被采样到高比较器块和低比较器块,高比较器块在第二个时钟周期的上升沿最后确定高位数据,同时,低基准电压产生与高位数据相应的电压。低比较块在第三个时钟周期的上升沿的最后确定低位数据。高位数据和低位数据在第四个时钟周期的上升沿进行组合,这样,第次采集的数据经过个时钟周期的延迟之后,便可送到内部数据总线上。此时如果输出使能有效,则数据便可被送至位数据总线上。由于的最大周期为,因此,数模转换器的最小采样速率可以达到。在电路中,模拟电源vdda和数字电源vddd相互独立。vdda与数字地agnd之间及vddd与模拟地dgnd之间都用4.7电容、0.1电容和铁氧磁环去耦和消除电源的纹波。agnd与dgnd分开,以避免数字信号给模拟信号带来噪声。放大后的视频信号直接加在tlc5510的19脚。tlc5510的时钟信号由tms320f206的时钟信号输出脚clkoiu1提供。(3)在线阵数据系统中的应用图2.8 为的典型外接电路。图中的为高频磁珠,模拟供电电源经为三部分模拟电路提供工作电流,以获得更好的高频去耦效果。在用该数据采集系统采集数据的过程中,当系统输入端输入模拟信号时,在由时序发生器产生的转换控制时钟的同步控制下, 会将差动放大、低通滤波后的模拟信号实时地转换为与其模拟幅值相对应的数字信号,当的输出使能 为低电平且高速数据存储器的地址译码控制和写控制均有效时,系统可将转换结果存入高速数据存储器,以等待机的读取。为了使系统输入的模拟信号能够正确可靠的转换和存储,在设计过程中,对的工作控制时钟、输出使能及高速数据存储器的地址译码控制时钟、读写控制时钟的周期做了具体的时间预算,并对它们之间的逻辑相位关系做了详细的研究。根据预算,将时序发生器内部的计数器、比较器、逻辑门以及触发器等进行逐级分频和逻辑组合,从而使其产生正确可靠的时序逻辑。系统及数据分析实验证明,采用作为转换芯片,其接口电路简单实用,使用方便,稳定性好。2.3.5串口rs232的简介采用rs-232标准的通信连接,电平转换芯片采用max232。rs-232是目前串行通信中最常用的总线,其标准rs-232c是美国电子工业协会eia制定的串行物理接口协议。rs表示eia的“推荐标准”,232为标准编号。rs-232接口的特征是负逻辑,单端驱动,共地接收,只适用于点对点通信。当信号线上的电平-3v-15v时,表示逻辑“1”;当信号线上的电平为+3v+15v时,表示逻辑“0”。通信双方使用一条公共信号地线作电平参考。rs-232c标准规定,驱动器负载电容不超过2500pf,通信距离受此电容的限制。另外,rs-232属于单端信号传送,存在共地噪声和不能抑制的共模干扰;因此其通信距离限15m以下,通信速率限于20kbps以下。 第三章系统设计原理及工作原理3.1ad转换工作原理ad转换器采用ti公司的t lc 5510芯片。tlc 5510为5v电源、8bit、20msps的高速并行a/d转换器,最大量程为2v。tlc5510的工作特点是:以流水线方式工作,在每一个clk周期都启动一次采样,完成一次采样;每次启动采样是在clk的下降沿进行,不过采样转换结果的输出却在2.5个周期后,如果计算上输出时延tdd,从采样到输出需经2.5*tclk+tdd。对于需要设计的采样控制器,可以认为,每加一个采样clk周期,a/d就会输出一个采样数据。当采样时钟为高电平时,a/d转换器处于跟踪状态;时钟下降沿时,输入信号被保持,a/d转换器进入转换状态,转换数据延迟2.5个时钟周期后在时钟上升沿输出。这样对于a/d采样,每一个时钟到来时就会有采样数据输出。因此tlc5510除了数据线外,还包含一个输出允许接口信号。对于一个数据采样系统关键的是地址产生电路和采样时钟产生电路,传统的采样大多是借助于逻辑芯片来分别实现这两部分电路。而这里引入软件采样的概念,即利用软件编程的方法来分别产生a/d采样所需的时钟脉冲和地址信号。控制采样的指令如下。 ld 起始地址,arpt 每行采样点数 write smem多通道高速ad数据采集系统的采样部分的原理框图如图3.1所示。它由一片多路模拟开关max306,一片tlc5510,构成了一个数据转换单元。max306是一个16路的多路模拟开关,为了减小采样误差, tlc采用内部25v电压基准源,输入接到tlc5510的数据线上,输出接到连接fifo的输入数据总线上,可以将多个这样的数据转换单元并接到总线上,通过每个单元的74hc245的使能脚选通。由于设计上是可以扩展的,即,将多个数据转换单元数据输出总线并联接到fifo的输入总线上,所以,采用将tlc5510的busy位作为数据位最低位读入。由于可以是多通道多ad转换器的工作模式,在设计时已经考虑到采样保持及转换时间的要求,并给出了一定的裕度,定时采样时不必判断ad转换是否完成,而直接读取总线上的数据。在数据处理时,判断最低位是否为0来确定本次采样数据是否有效,如果有效,则右移一位得到有效数据,当然,这样会降低采样精度,但对一般的数据处理系统,8位也已经足够了。如果无效,则舍弃本次采样数据,并累加无效次数,计数超过设定的次数,则应发出告警,提示tlc5510采样异常。3.2关于fpga的简介3.2.1fpga的概述fpga是复杂的pld,专指那些集成规模大于1000门以上的可编程逻辑器件。它由与阵列、或阵列、输入缓冲电路、输出宏单元组成,具有门电路集成度高、可配置为多种输入输出形式、多时钟驱动、内含rom或flash(部分支持在系统编程)、可加密、低电压、低功耗以及支持混合编程技术等突出特点。而且cpld的逻辑单元功能强大,一般的逻辑在单元内均可实现,因而其互连关系简单,电路的延时就是单元本身和集总总线的延时(通常在数纳秒至十数纳秒),并且可以预测。所以fpga比较适合于逻辑复杂、输入变量多但对触发器的需求量相对较少的逻辑型系统。 当今社会是数字化的社会,是数字集成电路广泛应用的社会。数字集成电路本身在不断地进行更新换代。它由早期的电子管、晶体管、小中规模集成电路、发展到超大规模集成电路(vlsic,几万门以上)以及许多具有特定功能的专用集成电路。但是,随着微电子技术的发展,设计与制造集成电路的任务已不完全由半导体厂商来独立承担。系统设计师们更愿意自己设计专用集成电路(asic)芯片,而且希望asic的设计周期尽可能短,最好是在实验室里就能设计出合适的asic芯片,并且立即投入实际应用之中,因而出现了现场可编程逻辑器件(fpld),其中应用最广泛的当属现场可编程门阵列(fpga)和复杂可编程逻辑器件(cpld)。 fpga是可编程逻辑器件,是在pal,gal等逻辑器件的基础之上发展起来的。同以往的pal,gal等相比较, fpga的规模比较大,它可以替代几十甚至几千块通用ic芯片。这样的fpga实际上就是一个子系统部件。这种芯片受到世界范围内电子工程设计人员的广泛关注和普遍欢迎。经过了十几年的发展,许多公司都开发出了多种可编程逻辑器件。比较典型的就是xilinx公司的fpga器件系列和altera公司的cpld器件系列,它们开发较早,占用了较大的pld市场。通常来说,在欧洲用xilinx的人多,在日本和亚太地区用altera的人多,在美国则是平分秋色。全球pld/fpga产品60%以上是由altera和xilinx提供的。可以讲altera和xilinx共同决定了pld技术的发展方向。当然还有许多其它类型器件,如:lattice,vantis,actel,quicklogic,lucent等。3.2.2fpga的发展: 可编程逻辑器(pld)是70年代发展起来的一种划时代的新型逻辑器件,一般来说,pld器件是由用户配置以完成某种逻辑功能的电路。pld器件自问世以来,制造工艺上采用ttl、cmos、ecl及静态ram技术,器件类型有prom、艺高度发展的产物。80年代末,美国altera和xilinx公司采用eecmos工艺,分别推出大规模和超大规模的复杂可编程逻辑器件(cpld)和现场可编程逻辑门阵列器件(fpga),这种芯片在达到高度集成度的同时,所具有的应用灵活性和多组态功能是以往的lsi/vlsi电路无法比拟的。到90年代,cpld/fpga发展更为迅速,不仅具有电擦除特性,而且出现了边缘扫描及在线编程等高级特性。另外,外围i/o模块扩大了在系统中的应用范围和扩展性。较常用的有xilin x公司的epld和altera及lattice公司的cpld。1992年lattice公司率先推出isp(in-system program-mability),并推出isp_lsi1000系列高密度isp器件。1998年hdpld的主流产品集成 度约为13万门,同时25万门产品开始面世,1999年产品集成度40万门,2000年已经出现了容量为200万门的产品。pld器件目前正朝着更高速、更高集成度、更强功能和更灵活的方向发展,它eprom、e2prom、fpla、pal、gal、pml及lca等,pld在性能和规模上的发展,主要依赖于制造工艺的不断改进,高密度pld是vlsi集成工不仅已成为标准逻辑器件的一个强有力的竞争对手,也成为掩膜式专用集成电路的竞争者。3.3fpga实现硬件采样的原理fifo的d0d7连接到ad转换单元的tlc5510的输出数据线上,wr f是由cpld发出的将tlc5510转换完成后的数据打入fifo的写信号,rd f是 单片机采样数据从fifo芯片中读出的读信号。/rst f复位fifo芯片的信号,sh是启动采样保持器工作在采样还是保持状态的控制信号,ch0ch3是每一片ad芯片的输入通道选择。由于每次采样前会复位fifo器件,所以,每次采样开始时的读指针和写指针均指向第一个物理存储地址,只要采样的数据不超过256个字,ef和ff标志可以不读入判断,实际上,ef和ff标志引脚虽然连接到了 idt72v2113,但没有处理。idt72v2113实现时序的控制,包括:启动采样,锁存数据,启动ad转换,将数据打入fifo存储器,道号递增重复下一通道采样。硬件控制采样逻辑实际上就是fpga与采样保持器、ad转换器、fifo的时序配合,时序由fpga在单片机触发采样后自动完成。单片机上电初始化时就给fifo器件发一个复位信号,使fifo器件的读指针和写指针复位,指向第一个物理单元,同时,去触发cpld进入第一通道的采样逻辑。复位fifo触发采样 启动采样保持器保持数据 启动a/d转换将采样数据打入fifo由于fifo器件的读和写是完全独立的,所以单片机在每一个定时中断中,直接一次性地将所有采样数据从fifo中读取数据,放入单片机的内存区域供处理,读完数据后,复位fifo器件并重新触发fpga执行下一点的采样,退出定时中断程序处理数据。tlc5510的转换是同时进行的,顺序进行的仅仅是从tlc5510将采样数据打入fifo存储器和从fifo读出采样数据,所以,数据最高采样速率取决于以下几个部件的速率,即,采样保持器的采样时间,ad转换时间,ad中数据打入fifo的时间,以及从fifo中读出数据的时间。通过选用高速的采样保持器件和高速的ad转换器件,可以提高采样的速率。fpga程序用vhdl语言设计,设计的关键是分析各个器件的工作时序和采样保持时间,ad转换时间,打入数据等。vhdl设计的时序处理的进程中,要根据fpga工作的频率计算各个等待周期,等器件准备好以后才能进行下一个处理。如图5所示,单片机触发复位fifo信号和采样逻辑,cpld先复位fifo,然后启动采样保持器进行采样,插入等待周期,等采样完成以后,再发出命令使采样保持器保持数据,然后启动ad转换器转换,插入等待周期,即理论上的转换完成时间加上一定的时间裕度,等待ad转换结束,然后将数据打入fifo,递增模拟通道号,进行下一通道的采样。fpga硬件逻辑如图3.3所示。图3.3 fpga控制的采样逻辑3.4显示电路的工作原理3.4.1七段显示器的原理1)数码管结构数码管由8个发光二极管(以下简称字段)构成,通过不同的组合可用来显示数字0 9、字符a f、h、l、p、r、u、y、符号“-”及小数点“.”。数码管的外型结构如图3.4所示。数码管又分为共阴极和共阳极两种结构,分别如图3.4(a)和图3.4(b)所示。 外型结构 (a) 共阴极 (b)共阳极图3.4 数码管结构图2)数码管工作原理 共阳极数码管的8个发光二极管的阳极(二极管正端)连接在一起,通常,公共阳极接高电平(一般接电源),其它管脚接段驱动电路输出端。当某段驱动电路的输出端为低电平时,则该端所连接的字段导通并点亮,根据发光字段的不同组合可显示出各种数字或字符。此时,要求段驱动电路能吸收额定的段导通电流,还需根据外接电源及额定段导通电流来确定相应的限流电阻。共阴极数码管的8个发光二极管的阴极(二极管负端)连接在一起,通常,公共阴极接低电平(一般接地),其它管脚接段驱动电路输出端,当某段驱动电路的输出端为高电平时,则该端所连接的字段导通并点亮,根据发光字段的不同组合可显示出各种数字或字符。此时,要求段驱动电路能提供额定的段导通电流,还需根据外接电源及额定段导通电流来确定相应的限流电阻。3)七段数码管显示控件的制作原理:首先将数码管分为七段,如下图所示:(1)根据数码(0,1,2,3,4,5,6,7,8,9)来决定七段中的某一段或某几段进行绘制,例如如果数码为0,则显示0、1、2、3、4、5段;数码为1,则显示1、2段,依次类推。(2)运行appwizard来生成sevensegnum工程。通过从file菜单选择new,然后在project选项卡上选定mfc activex controlwizard .命名工程名为sevensegnum,接受其他默认设置。(3)使用classwizard(快捷键ctrl+w)在csevensegnumctrl类中重载ondraw函数。七段数码管在工业控制中有着很广泛的应用,例如用来显示温度、数量、重量、日期、时间,还可以用来显示比赛的比分等,具有显示醒目、直观的优点。笔者采用vc+6.0开发了七段数码管显示控件,用在支持activex技术的软件系统中(如vb,vc,excel等),取得了很好的效果。3.4.2静态显示接口 1)静态显示概念静态显示是指数码管显示某一字符时,相应的发光二极管恒定导通或恒定截止。这种显示方式的各位数码管相互独立,公共端恒定接地(共阴极)或接正电源(共阳极)。每个数码管的8个字段分别与一个8位i/o口地址相连,i/o口只要有段码输出,相应字符即显示出来,并保持不变,直到i/o口输出新的段码。采用静态显示方式,较小的电流即可获得较高的亮度,且占用cpu时间少,编程简单,显示便于监测和控制,但其占用的口线多,硬件电路复杂,成本高,只适合于显示位数较少的场合。2)静态显示电路:3.4单片机与双口ram的接口在高速的数据采集系统中,由于数据采集速度大于pc微机系统总线的最高传送速率 ,因此需要在采集电路中加入高速缓冲器作为缓存。先将采集的数据存储在缓存器中,然后再成组的向主机传送。存储器数据传送的时间要比总线周期慢,因而二者之间的时序并不相配,要想准确的传输数据,必须解决时序问题。例如某cpu总线周期为30 ns ,双口ram数据传送时间为70 ns,这样cpu就不能得到正确的数据。解决方法之一可以利用系统总线上的io通道就绪信号(iochrdy),把它拉低,延长总线周期。但是实现起来比较麻烦,要对系统时钟进行处理。在本文中采用了静态设计的思想,保证了数据正确稳定的传输。把整个读写过程分步实现。即首先由总线指定双口ram中数据的地址,通过锁存器锁住地址,等待数据出现;然后准备好数据,等二者都准备好以后总线对端口操作读或写数据。在时间上保证了数据和数据地址相匹配,就保证了数据不丢失。此方法优点在于无须对系统时钟进行改造。这种方法也适于高速cpu与其他低速外设之间的时序问题。第四章数据采集软件设计上位机首先通知单片机采集数据,当数据采集完毕后,单片机给工控机发送信号。单片机把采集的数据放在sram中,然后总线通过io口读取sram中的数据,并进行分析处理。单片机需要与工控机进行联络传送一些信息,比如通知pc机数据采集完毕等;主机也需要对单片机发送命令,

温馨提示

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

评论

0/150

提交评论