爆轰性能测试系统软件设计_第1页
爆轰性能测试系统软件设计_第2页
爆轰性能测试系统软件设计_第3页
爆轰性能测试系统软件设计_第4页
爆轰性能测试系统软件设计_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

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

文档简介

本科毕业设计(论文)爆轰性能测试系统软件设计SOFTWAREDESIGNOFDETONATIONPERFORMANCETESTSYSTEM总计毕业设计(论文)26页表格2个插图20幅学院(系)电子与电气工程系专业电子信息工程爆轰性能测试系统软件设计摘要火药性能测试系统主要是对炸药爆炸时的各种性能参数进行有效的测试,并将这些测试参数上传给PC机,进行数据存储记录。整个炸药性能测试系统包括爆轰波数据测试和爆速数据测试两个方面。本文对爆轰波波形数据存储,根据实际中的条件和要求,本论文中选择了ADC、CPLD、RAM、AT89C52单片机等模块和串口传输的方案。该方案的主要思路是ADC芯片完成数据采集,CPLD模块用于控制ADC工作及数据传输。RAM模块负责数据的存储。单片机控制模块用于数据的读取,然后通过串口传输上传到PC机。当PC机得到所采集的数据后,对数据进行存储。本文首先对系统功能进行了详细分析,提出系统总体结构和设计原则。然后对高速数据采集系统、存储器等相关控制电路进行了设计、仿真和调试。关键词CPLD;采样;高速数据采集;系统调试SOFTWAREDESIGNOFDETONATIONPERFORMANCETESTSYSTEMABSTRACTPOWDERPERFORMANCETESTSYSTEMMAINLYFOREXPLOSIVEPERFORMANCEPARAMETERSDURINGTHETESTEFFICIENTLY,ANDUPLOADTHEMTOTHEPC,TESTPARAMETERS,DATASTORAGERECORDSPERFORMANCETESTSYSTEM,INCLUDINGTHEEXPLOSIVEDETONATIONANDTHEDETONATIONVELOCITYDATATESTINGDATATESTINGTWOASPECTSTHISFORMOFDATASTORAGEONTHEDETONATIONWAVE,INACCORDANCEWITHTHEACTUALCONDITIONSANDREQUIREMENTS,THEPAPERSELECTEDADC,CPLD,RAM,AT89C52MICROCONTROLLERMODULEANDSERIALTRANSMISSIONOFSUCHPROGRAMTHEPROGRAMSMAINIDEAISTOCOMPLETETHEDATAACQUISITIONADCCHIP,CPLDMODULEISUSEDTOCONTROLTHEADCWORKANDDATATRANSMISSIONRAMMODULESRESPONSIBLEFORDATASTORAGESCMCONTROLMODULEFORDATAREAD,ANDTHENUPLOADEDTOTHEPCTHROUGHTHESERIALPORTMACHINEWHENTHEPC,THEDATAARECOLLECTED,THEDATASTORAGETHISPAPERFEATURESADETAILEDSYSTEMANALYSIS,SYSTEMARCHITECTUREANDDESIGNPRINCIPLESTHENHIGHSPEEDDATAACQUISITIONSYSTEM,MEMORYANDOTHERRELATEDCONTROLCIRCUITDESIGN,SIMULATIONANDDEBUGGINGKEYWORDSCPLDSAMPLINGHIGHSPEEDDATAACQUISITIONSYSTEMCOMMISSIONING目录1引言12炸药性能测试系统的设计概述13爆轰波波形数据的采集、存储、处理及通讯的具体实现331数据采集系统的基本方案3311AD转换电路332CPLD电路部分设计4321可编程逻辑器件5322VHDL语言5323可编程逻辑器件的开发工具6324CPLD控制器的详细设计633单片机控制模块设计9331AT89C52的体系结构和硬件描述9332中断系统9333RS232通讯接口的设计104软件设计1041CPLD控制程序部分10411CPLD最小控制系统各模块程序及仿真11412CPLD最小控制系统流程图1842单片机控制程序部分20结束语24参考文献25致谢261引言随着无线通信与计算技术、信号处理与分析技术的发展,军事、卫星通信等信号不断向高频、宽带、数字化发展。高速采集成为制约信号处理的关键因素之一。今天高速数据采集技术已在雷达、通信、地震勘探、智能仪器、科学实验等各个方面有着广泛的应用。本文介绍了以CPLD为核心处理芯片的多路数据采集系统的实现方法。该系统通过CPLD控制ADC转换,将采样数据储存到静态存储器RAM中,再由单片机从RAM中取出数据经MAX232串口上传到PC机,由PC机完成对数据的处理。由于实验条件,论文中实现的最高采样率为20MSPS。本设计系统主要是完成对炸药爆速及爆轰波数据的采集和数据处理工作,形象的反映出炸药爆炸时的性能。具体到本文,主要是实现爆轰波数据的采集和处理。在具体的实现上,主要解决了传感器的数据测量、模数的转换、高速信号的缓冲处理、数据的存储、看门狗、单片机与PC机的通信等问题。论文中侧重分析了CPLD芯片FLEX10K30E在系统中的硬件应用以及软件实现,另一个重点是主CPU模板的单片机对整个系统的控制,以及PC机的终端数据库软件的设计。在器件的选择上,主要采用了FLEX10K30E和AT89C521。这是从本设计的实际要求出发而考虑的。由于数据处理方面的高速要求,考虑到成本,采用了CPLD器件来作为数据缓冲的设计器件,这样达到电路保密以及减小系统的PCB面积的目的。采用AT89C52可以以最小的成本来达到对系统全面控制的要求。本文针对炸药性能爆轰波数据采集的要求,首先阐明了本设计的产生和应用背景,接着讨论了整个高速数据采集系统的整体实现原理,接下来主要具体讲述了如何设计一种基于CPLD和单片机的卡式测试仪器。讲述了可编程器件CPLD及VHDL语言的原理和设计实现,单片机及汇编语言的原理和设计实现,PC终端数据的处理。在文章的最后给出了具体设计中应该注意的一些问题。2炸药性能测试系统的设计概述单独使用单片机作为存储测试系统主控元件发送数据采集和数据传输的指令时,单片机的工作速度很难完成采样率达到1MSS的数据采集工作,而且单片机的端口数目、内部定时器和中断源的数目都有限,在应用中往往要加外围扩展芯片,这就增加了系统硬件的复杂程度;若选择CPLD作为系统控制核心,不仅可以简化系统设计,而且提高了系统的整体性能和系统稳定性,但若单独通过CPLD完成整个系统的控制功能,则需选用内部容量大,可用门数多的CPLD器件,这势必使系统功耗和成本都有所提高2。而且控制时序的设计也相当复杂,应用者开发起来比较费力。因此,本设计在传统存储测试系统的基础上,采用高速ADC与高速静态随机存取存储器RAM构成的设计方案结合采用CPLD与单片机技术相结合的存储测试系统。由于考虑研究中主要还是实验室研究阶段,是采用信号发生器产生被测信号,省去了ADC前端的滤波、放大等信号调理电路部分。经全面衡量对比,选择了ADCCPLDRAMAT89C52单片机串口传输的方案。该方案的主要思路是,先采用CPLD控制高速AD转换器把信号采集进来并同时存储到RAM存储器中,当RAM存储器存满以后,认为CPLD及ADC和RAM完成一次采集存储任务,此为前一阶段任务完成;然后通知并等待单片机将存储器中采集的数据取走,通过串口传输上传到PC机。当PC机得到所采集的数据后,对数据进行存储。其方案框图如图1所示。ADC0809CPLDATC89C52SRAMPC机串行上传数据数据写入控制写入数据读出控制读出顺序写入图1爆轰性能测试系统方案框图该系统能够以较高的采样率完成对信号的采集存储。模拟信号在CPLD时序控制下经AD转换器转换为数字信号,并实时存储于静态存储器中。现场采集完成后即RAM已经存储满,单片机将数据从存储器中读取出来,通过RS232串口上传至PC计算机作进一步的处理3。在通常的数据采集系统中,每次数据采集过程,单片机和AD转换之间都由执行指令完成数据的传送,由于受单片机执行指令时间的限制,采集一个数据往往需要几到几十微秒的时间,这样的数据采集系统难以适应高速信号采集的需要。本系统是在单片机控制下,完全由硬件自动实现数据采集的全过程。在该系统中单片机只控制数据采集的启动和采集结束后对数据的传输,在数据采集的过程中,单片机并不对采集通道进行任何干预,这样就使系统的采集速率完全不受单片机速度的限制,从而实现高速数据采集的目的。该系统具体工作原理是作为控制器的CPLD上电以后即输出连续的定时脉冲给AD转换器ADC0809的CLK端,使其每接受一个时间脉冲即进行一次AD转换,同时将CPLD内部地址发生器产生的依次连续变化的地址信号在每一定时脉冲期间经地址选择器在CPLD内部直接送到存储器,同时在每一定时脉冲期间AD转换器将所采集到的第N一3次的数据经数据总线直接输入到两片SRAM存储器中保存,如此连续循环,完成一个一个采样周期。重复上述过程,直到存储器存满,由CPLD器件引起单片机外部中断,结束数据采集,转入中断处理程序进行数据处理,单片机从RAM中读取数据并送PC机处理。系统工作原理可由图1描述4。3爆轰波波形数据的采集、存储、处理及通讯的具体实现31数据采集系统的基本方案开机后,CPLD发出时钟脉冲ADCLK给ADC,控制AD转换。每ADCLK脉冲ADC转换一次,CPLD即刻给出OE输出数据使能信号,将8位数据写入存储器中。这样一直循环采集,直到存储器满。然后CPLD置低INTO通知单片机读取数据,得到通知后,单片机将工作状态信号置为有效以应答,然后单片机直接控制RAM读取数据,并不断通过串口RS232将数据上传到PC机,当读取完数据后,再将工作状态信号置为无效。CPLD一直处于工作状态,当工作状态信号置为无效后,又开始下一次的数据写入到存储器。此时,PC机对上传的数据进行处理、波形回放,如此循环。详细原理逻辑框图如图2。单片机最小系统控制器CPLD存储器ADC0809振荡器RS232数据地址数据CLKOEINT0数据地址WE模拟信号图2数据采集系统逻辑框图311AD转换电路AD转换是将模拟量电信号转换为数字信号。本文中AD转换单元采用ADC0809芯片实现模数转换功能,下面分别对这种芯片的工作原理做出介绍。ADC0809是CMOS工艺,采用8位逐次逼近型8路模数转换器,ADC0809集成了8路地址锁存与译码8位模拟量输入IN0IN7ADDCALE启动START输出允许OE时钟CLOCKVREFVREF8位输出数字量转换结束(中断)EOC8路模拟开关8位A/D转换器三态输出缓冲器ADDAADDB图3芯片的内部结构模拟开关,地址锁存与译码器、8位AD转换器以及8位三态输出锁存器。其中IN0IN7为8路模拟量输入端口,D0D0为8为数字量输出端口,VREF与VREF9是基准参考电压,用于确定输入模拟量的量程范围。CLK为时钟信号输入端,一个转换周期需要64个时钟信号。START为转换启动引脚,高电平有效。ALE是地址锁存允许信号,在它的下降沿将地址打入锁存器5。EOC为转换结束信号,在转换期间该信号为低电平,转换结束后变为高电平。OE为数字量输出允许信号,高电平有效。A、B、C为地址输入端口,通过他们的二进制编码组合选择输入模拟量的通道。ADC0809在一个转换周期内,首先在ALE的作用下读入A、B、C的数据,进而控制8路模拟开关接通所要转换的通道,然后EOC变为低电平,被转换信号在转换器内同多个参考值相比较,直至找到最为接近的一个参考值,并将该参考值对应的数字量送到三态输出锁存器,然后EOC变为高电平,表示转换结束。这时如果OE收到高电平信号,便将输出锁存起开放,送出转换后的数字量。这一部分电路的功能是将输入模拟信号高速数字化,并将结果存储在RAM中,供CPU处理。本设计采用双通道输入。由两个信号发生器发出的信号,通过两路AD转换后,由CPLD控制送入两片RAM中存储。该电路的工作原理是CPLD发出时钟脉冲ADCLK给ADC,控制AD转换。每ADCLK脉冲ADC转换一次,CPLD同时即刻给出0E输出数据使能信号,将两路8位数经8根数据总线输送至存储器中。与此同时,CPLD在同时给存储器送9位相同地址信号后再送写信号WE,将数据同时写入RAM中。这种并行处理方式也在一定程度上提高了系统的速度。32CPLD电路部分设计高速数据采集系统中,一般采用DMA方式,由于单片机本身并不支持DMA接口方式,必须外加DMA控制器和总线仲裁电路数据采集电路中,时序控制电路、地址发生器、多路控制驱动器等芯片众多,从而提高了硬件电路的复杂性,降低了系统的灵活性和可靠性,并且占用了大部分体积,逻辑时序复杂。用CPLD实现这些电路则使开发简单、灵活、方便。321可编程逻辑器件在数字化的道路上,电子设计技术的发展经历了并将继续经历许多重大的变革和飞跃。从应用通用数字电路芯片构成电路与系统、广泛应用的MPU徼处理单元等到可编程逻辑器件包括现场可编程门阵列FPGA和复杂可编程逻辑器件CPLD在电子设计自动化EDA中广泛应用,使得电路系统在设计上发生了系列具有里程碑意义的飞跃6。如果说MPU在逻辑的实现上是无限的话,那么FPCACPLD不但包括了MPU这一特点,而且还触及硅片电路的物理极限,并兼有高速、大容量、高可靠性以及很宽的适用性等诸多特点。其不可替代的地位及伴随而来的极具知识经济特征的IP核技术的发展越来越受到电路设计人员的关注。可编程逻辑器件FLD是由用户编程实现所需逻辑功能的数字集成电路。在20世纪80年代初,简单的PLD主要用于集成多个分立逻辑器件,还可用它来实现布尔方程。如今,高密度PLD不仅可以实现系统级的电路集成,而且被看作是ASIC和ASSP的替代品。ASIC是用户根据某一专门应用设计的,ASSP是用来实现特定功能的器件。由于大批量的生产采用了先进的工艺技术,使PLD的价格不断降低。ALTERA公司提供的器件在集成度、密度、性能和成本方面都可与ASIC相比。这些因素与产品投放市场的时间和可编程的灵活性相结合,不断地推动着高密度PLD在电子系统开发和生产中的应用7。在可编程逻辑器件的学习和使用中,我认识到可编程逻辑器件的学习和应用已不仅仅是单纯地基于某种特定器件的开发过程,而是一种极富挑战性和创造性的劳动,使目前许多处于计算机辅助设计CAD和规划的纯软件活动变成了实实在在的设计和实体,这些设计在计算机上仿真通过后,几乎即可应用于实际电路,大大地简化了设计方法和调试过程。322VHDL语言VHDL最早是由美国国防部提出的。1987年12月,IEEE接受VHDL为标准的IIDL,这就是今天我们所了解的IEEESTDL0761987LRM87。此后又做了一些修改,增加了一些功能,后来形成了新的版本IEEESTDL0761993。VHDL主要用于描述数字系统的结构、行为、功能和接口,其语言形式和描述风格与句法十分类似于一般的计算机高级语言。VHDL的程序结构特点是将一项工程设计,或称设计实体可以是一个元件、一个电路模块或一个系统分成外部或称可视部分及端口和内部或称不可视部分,即涉及实体的内部功能和算法完成部分。在对一个设计实体定义了外部界面后,一旦内部开发完成,其他的设计就可以直接调用这个实体。随着数字电路的发展,VHDL语言将承担更多数字系统设计任务。323可编程逻辑器件的开发工具开发ALTERA公司的可编程逻辑器件有两种软件,QUARTUSLI和MAXPLUSII。本设计采用QUARTUSII可编程逻辑器件开发软件,它提供了一种与结构无关的全集成化设计环境,使设计者能对ALTERA公司的各种产品系列方便地进行设计输入、快速处理和器件编程8。QUARTUSII开发系统具有强大的处理能力和高度的灵活性,它的优点主要表现在以下方面1与结构无关QUARTUSII系统的编译程序,支持从CLASS到FLEXI的ALTERA全部系列的PLD产品,提供与结构无关的设计开发坏境,具有强大的逻辑综合与优化功能。2多平台QUARTUSII可在基于PC机的WINDOWS或WINDOWSNT环境下运行。全集成化QUARTUSII的设计输入、处理、优化和校验功能全部集成在统一的开发环境下,可以加快动态调试,缩短开发周期。3硬件描述语言HDLQUARTUS11支持各种HDL输入选项,包括DL,VERILONGHDL和ALTERA公司自己的硬件描述语言VHDL。4丰富的设计库OUARTUSII提供丰富的库单元提供设计者调用,其中包括74系列的全部器件和多种特殊的逻辑宏单元MACROFUNTION,以及新型的参数化宏单元MAGAFUNCTION。调用库单元进行设计,可以大大减轻设计工作量,设计周期成倍缩短。5开放的界面QUARTUSTI提供标准的接口,可以与其它工业标准的EDA软件协同使用。设计者可以使用其他的EDA软件工具进行设计输入再利用QUARTUSII的COMPILER进行编译处理,并使用其它工具进行器件和板级仿真晰朝。324CPLD控制器的详细设计在整个高速采集系统中,CPLD起着决定性的控制作用,因为CPLD本身具有高速、并行工作的特点,所以具有很好的控制能力。下面具体说CPLD内部的工作机制。所设计的CPLD控制程序是针对基本方案的。CPLD的主要任务是CPLD对AD进行时序控制,以采集模拟信号到CPLD,在AD进行采集的同时,CPLD将采集到的数据,按RAM的写时序,将数据并行写入RAM中,这样AD每采集一次数据,CPLD立即将采集到的数据写入RAM,直到RAM存储满为止,然后CPLD发出数据已满的低跳变信号给单片机的外部中断INTO口通知线,通知单片机可以读取数据了。单片机得到通知,当做好读取数据的准备后,立刻将工作状态置为有效以应答CPLD,表示正在采集数据,这时CPLD等待单片机从RAM取走数据。当单片机取走数据后,置工作状态信号为无效。一旦CPLD检测到工作状态信号无效后,则说明单片机己读取完数据,CPLD就立即控制AD进入下一轮的采集工作当中。经过对AD和RAM的详细时序分析,可以据此很精确的对它们进行时序控制设计了。在CPLD中设计了两大部分。分别是AD转换部分与存储控制模块和地址计数器部分。(1)AD转换与存储控制模块的功能是对AD进行时序控制和对RAM的写时序控制。(2)地址计数器模块的功能是输出9位地址信号,实现对RAM寻址。引脚及功能介绍,详细连接图见图4。图4AD转换与存储控制模块和地址计数器模块框图CLKCPLD的全局时钟信号输入端,实验初期暂时采用20MHZ,以免对于调试过程给予过高苛求。D70AD转换器输入到CPLD的数据端口。EOC转换状态指示,低电平表示正在转换。ALE8个模拟信号通道地址锁存信号。START转换开始信号。OECPLD输送给AD转换器的AD数据输出使能信号。当为低时,ADC输出所锁存的采集的数据信号ADDA信号通道最低位控制信号。LOCK0观察数据锁存时钟。Q708位数据输出。CPLD输出到RAM的AD转换数据输出端口。通过它将数据写入RAM数据端口。WRENRAM的写脉冲。当为高电平时,写有效。INTERRUPT读取通知信号,连接到单片机的INTO口,下跳沿有效。4时序和状态机设计说明根据时序图的特点,AD只需要供给固定的时钟节拍就可以进行控制,同时按照RAM的写时序的特点,设计了如下状态机来进行基本的采集和存储,存储是与AD的采集时钟完全同步的,也就是说,在每一个AD采样周期内实现的数据存储。设计了状态机如图5所示。ST0ST1ST2ST3ST4RESET图5采集存储状态机图当系统复位后,进入状态STO,根据一定的状态转移条件进入下一个状态。下面分别说明每个状态的主要任务。STO初始化各端口信号和等待作用。如检测是否开始采集,复位地址计数器,将外部输出端口信号进行复位。STLALEALEALEALEALEALENEXT_STATE“CYCLONEII“,WIDTH_A8,WIDTHAD_A9,NUMWORDS_A512,OPERATION_MODE“SINGLE_PORT“,OUTDATA_REG_A“CLOCK0“,OUTDATA_ACLR_A“NONE“,WIDTH_BYTEENA_A1,CLOCK_ENABLE_INPUT_A“BYPASS“,CLOCK_ENABLE_OUTPUT_A“BYPASS“,POWER_UP_UNINITIALIZED“FALSE“,LPM_HINT“ENABLE_RUNTIME_MODYES,INSTANCE_NAMERAM“,LPM_TYPE“ALTSYNCRAM“PORTMAPWREN_AWREN,CLOCK0CLOCK,ADDRESS_AADDRESS,DATA_ADATA,Q_ASUB_WIRE0ENDSYN412CPLD最小控制系统流程图CPLD最小控制系统包括ADCINT模块,地址计数器模块和RAM存储器模块。ADCINT模块控制ADC0809启动采集数据,输出数据锁存时钟信号(用于单片机读取数据的时钟信号)。地址计数器模块控制RAM数据的写入和读出的地址计数。RAM存储器模块用于将ADC0809采样的数据存储和作为单片机的片外数据存储器15。RAM存储器的读入和写出状态由WREN控制,写入状态下的时钟信号由CPLD的LOCK0输出数据锁存信号提供,读出状态下的时钟信号为状态机的的工作时钟信号。判断WE是否为高电平进入采样允许阶段,RAM进入写入状态进入采样禁止阶段,RAM进入读出状态判断地址计数器是否计满ADC0809初始化CPLD控制启动AD转换,并将AD输出的数据进行锁存数据写入SRMA数据停止写入,单片机进入中断状态判断地址计数器是否计满单片机读出数据并发送给PC机返回YESNONOYESYESNO开始图19CPLD最小控制系统流程图42单片机控制程序部分AT89C51内部有一个可编程的全双工串行接口SBUF,具有UART通用异步接受和发送器的全部功能。串行接口的控制寄存器有两个,串行控制寄存器SCON和能改变波特率的特殊功能寄存器PCON,其作用如下(1)串行控制寄存器SCON,字节地址98HSCON寄存器用于设定串行口的工作方式、接收发送控制以及设置状态标志。各位的含义如表表1专用寄存器SCON各位含义表D0D1D2D3D4D5D6D7RITIRB8TB8RENSM2SM1SM1SM0、SML一串口的方式选择位,其编码如表2所示。REN允许串行接受控制位。RENL允许串行接受,REN0禁止串行接受。SM2一允许方式2和方式3进行多机通信控制位。SM20单机对单机,SM2I多机通信。TB8发送数据第9位。RB8接收数据第9位。TI发送中断标志。RI接收中断标志。表2串口的工作方式方式SM0SM1功能说明012300110101移位寄存器方式,波特率为FOSC/128位UART,波特率可变(T溢出率/N)8位UART,波特率为FOSC/64或FOSC/329位UART,波特率可变(T溢出率/N)表中FOSC为晶振频率;UART为通用异步接受和发送器。(2)特殊功能寄存器PCON,字节地址87HPCON是电源控制寄存器,其中SMOD为串行接口波特率系数选择位。当SMOD1时波特率加倍。波特率串行接口每秒发送或接收的位数串行口工作方式1将串行口配置为波特率可变的通用异步接收发送UART方式。本方式的数据格式为10位一个起始位0,8个数据位LSB在前,一个停止位1。接收时,停止位进入SCON特殊功能寄存器的RB8位。工作方式1时的波特率是可变的。在51型中方式1的波特率取决于定时器1溢出率。波特率确定采用定时器1的方式2,即自动重装的8位定时器。串口初始化波特率设置开外部中断0打开串口中断串口中断是否到来等待中断外部中断0是否到来NO传送数据YESNOYES等待中断是否传送完毕YESNO关闭串口中断开始返回图20单片机最小控制系统流程图INCLUDEINCLUDEUNSIGNEDCHARGETDATA;UNSIGNEDINTTEMP;INTI;INTJ;SBITP11P11SBITP10P10串口初始化VOIDCORN_INITIALIZEVOIDTMOD0X20;设置波特率为9600的定时器1方式和初始值TLL0XF3;THL0XF3;SCON0XD8;设置串口工作方式3PCON0X80;IT01TRLL;EA1EX01MAINGETDATAP0;TEMPGETDATA;CORN_INITIALIZE;WHILE1SBUFTERNP;VOIDINT0_INTERRUPTVOIDINTERRUPT0P100ES1VOIDSERIAL_INTERRUPTVOIDINTERRUPT4TI0IP11P11IF(I512)ES0P100单片机的P0口用来读取存储器的数据,P10接地址计数器的WE读写时钟信号选择端和存储器的WREN读写使能端,当计数器在写时钟状态计满时,申请中断,单片机响应外部中断,并在中断服务子程序中将P10置零,即使存储器进入读出状态,同时开串口中断,准备发送数据到PC机中,读出时钟由单片机的P11提供。当读地址计到512时,关闭串口中断,同时使存储器进入写入状态。这里存在中断嵌套问题,必须先执行由地址计数器申请的外部中断,使存储器进入读出状态,然后再执行串口中断,将单片机读出的数据发送到PC机中。如此循环,存储器写满由单片机读出,读完再写,将数据不断的送入到PC机中。整个工作流程是循环执行,但同时也存在一些问题。如单片机控制存储器由读出状态进入写入状态时,地址计数器应该从0000单元开始再次写入数据,但在程序执行时,却是在读出的地址基础上继续计数,使数据存储的地址单元不能被单片机访问。结束语本次设计完成了基于爆轰系统数据采集系统的设计、软件编程和系统调试,实现了上述各个逻辑控制功能,基本达到了设计的要求。利用CPLD器件构成的高速数据采集系统具有结构简单,设计灵活,良好的移植和较高的性价比。整个采样过程由CPLD器件控制完成,摆脱了单片机速度瓶颈,当采用ALTERA公司EPM7128S器件时可获得50MHZ的采样频率,获得的数据既可由单片机处理,也可通过串行接口传给计算机处理。这次毕业设计中,我主要进行了数据采集系统含AD转换器、存储器、CPLD及其相关控制电路的设计、CPLD和单片机的编程仿真调试等。在设计的全部过程中,得到导师的带领和指导,我学到了许多科研的方法和技能,包括方案设计、程序编制与仿真调试,特别是处理调试过程中遇到的问题,对于自己收益颇丰。通过做毕业设计课题,使我的理论水平和实践水平得到全面的提高。由于时间问题,本设计只是用软件进行了各模块的仿真测试,没有考虑到整体中各模块的协调和调试以

温馨提示

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

评论

0/150

提交评论