杨林娜智能电子计数器的毕业论文_第1页
杨林娜智能电子计数器的毕业论文_第2页
杨林娜智能电子计数器的毕业论文_第3页
杨林娜智能电子计数器的毕业论文_第4页
杨林娜智能电子计数器的毕业论文_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

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

文档简介

兰州交通大学博文学院毕业设计(论文)题目基于单片机的智能电子计数器的设计学校兰州交通大学博文学院专业电子信息工程学生姓名杨林娜指导教师孙春霞毕业设计(论文)时间二0一一年3月日5月日共周兰州交通大学博文学院毕业设计(论文)I摘要数字频率计是电子测量领域中最常见的测量仪器之一。它可以测量方波和正弦波的频率、周期和脉冲宽度等时间参数。本设计是由单片机控制的数字频率计设计。本文在讨论频率测量的常用方法与原理的基础上,阐述了等精度测频系统的设计。系统包括稳压电源电路、信号放大整形电路、测频电路、单片机电路模块、标准频率信号源、键盘模块、数码显示模块等。采用软硬件结合的方法,频率、周期、脉宽和占空比的计算由单片机89C51完成,外围电路其数字电路部分使用了CPLD,并采用VHDL语言进行设计描述,其输入通道由模拟电路来实现。系统将单片机AT89C51的控制灵活性及CPLD芯片的现场可编程性相结合,不但大大缩短了开发研制周期,而且使本系统具有结构紧凑、体积小、可靠性高、测频范围宽、精度高等优点。关键词频率计单片机CPLD等精度ABSTRACT兰州交通大学博文学院毕业设计(论文)IIIDIGITALCYMOMETERISONEOFTHEMOSTCOMMONINSTRUMENTSOFELECTRONICMEASUREMENTITCANMEASURETIMEPARAMETERSSUCHASTHESQUAREWAVEANDTHESINEWAVEFREQUENCY,CYCLEANDPULSEWIDTH,ANDSOONTHEDESIGNISTHEDIGITALCYMOMETERBASEDONTHESIGNALCHIPCOMPUTERCONTROLBASEDONTHEDISCUSSIONOFTHECOMMONLYUSEDMETHODOFMEASURINGFREQUENCYANDONTHEBASISOFPRINCIPLE,ITDESCRIBESTHEDESIGNOFFREQUENCYMEASUREMENTSYSTEMWITHTHESAMEACCURACYINCLUDINGTHEPOWERSUPPLYSYSTEMCIRCUIT,SIGNALAMPLIFICATIONPLASTICCIRCUIT,MEASURINGFREQUENCYCIRCUITS,MCUCIRCUITMODULE,THESTANDARDFREQUENCYSIGNALSOURCE,KEYBOARDMODULE,THEDIGITALDISPLAYMODULE,ANDSOONITTAKESTHEMETHODOFCOMBINATIONOFHARDWAREANDSOFTWAREFREQUENCY,PERIOD,PULSEWIDTHANDROOMOCCUPYINGRATIOOFCALCULATIONCOMPLETEDBYTHEMCU89C51,THEEXTERNALCIRCUITPARTOFITSDIGITALCIRCUITSUSEDWITHTHECPLD,INPUTCHANNELSFROMANALOGCIRCUITSTOACHIEVE,ANDUSEOFVHDLDESIGNDESCRIPTIONTHESYSTEMCOMBINESTHECONTROLFLEXIBILITYOF89C51WITHPROGRAMMABLEPERFORMANCEOFCPLD,SONOTONLYCANITSHORTENTHEPERIODOFTHEDEVELOPMENTANDRESEARCHBUTALSOHASTHEADVANTAGESOFCOMPACTSTRUCTURELITTLEVOLUME,HIGHRELIABILITY,WIDESCOPEANDHIGHPRECISIONKEYWORDSCYMOMETERSIGNALCHIPCOMPUTERCPLDEQUALPRECISION目录第一章引言11课题研究的现状与发展趋势兰州交通大学博文学院毕业设计(论文)III12课题研究的意义与作用13数字频率计的基本原理14系统设计技术指标141基本指标142发挥部分第二章系统硬件设计21频率测量的方法的研究211数字化直接测量频率的原理212数字化直接测量周期的原理213多周期同步等精度测量的原理22实验方案的确定221测量方法的确定222频率测量模块的方法223周期测量模块的方法224脉冲宽度测量模块的方法23系统硬件设计231稳压电源电路232信号放大整形电路233单片机控制电路234标准频率信号源235数码管显示模块第三章系统软件设计31CPLD测频专用模块的设计311频率计CPLD部分的VHDL程序312频率计CPLD部分的仿真32单片机控制与运算程序的设计321单片机主程序的设计322频率、周期计数子程序的设计兰州交通大学博文学院毕业设计(论文)IV323脉宽、占空比子程序的设计324键盘扫描及数码管显示子程序的设计总结参考文献致谢兰州交通大学博文学院毕业设计(论文)1第一章引言11课题研究的现状与发展趋势随着大规模集成电路技术的发展及电子产品市场运作节奏的进一步加快,涉及诸如计算机应用、通信、智能仪表、医用设备、军事、民用电器等领域的现代电子设计技术已迈入一个全新的阶段。在电子测量中,频率的测量精确度是非常高的。利用计数法测量频率具有精度高、使用方便、容易实现测量过程自动化等一系列突出优点,已成为目前频率测量的重要方法。人们将许多参数的测量转换为频率量来测量和处理。传统的频率计通常采用组合电路和时序电路等大量的硬件电路构成,在使用过程中存在电路结构复杂,测量精度低、故障率高、维护不易等问题,其产品不但体积较大,运行速度慢,而且测量低频信号时不宜直接使用。频率测量在科技研究和实际应用中的作用日益重要。测量的数字化、智能化是当前测量技术发展的趋势。12课题研究的意义与作用数字频率计数器又称通用计数器,是电子测量领域中最常见的测量仪器之一。它可以测量正弦波的频率(周期),脉冲波的频率(周期),脉冲宽度等时间参数。随着单片机技术的不断发展,用单片机通过软件设计,采用适当的算法取代这部分电路不仅能弥补上述不足,而且性能也将大有提高。针对普通频率计存在读数难、测量精度不高等问题,目前采用单片机控制的数字频率计,用于测量方波、正弦波或其它脉冲信号的频率,并用数字显示,具有精度高、测量迅速、读数方便等优点,已经在电子测量领域里得到了广泛应用。MCS51系列单片机具有体积小,功能强,性能价格比较高等特点,因此被广泛应用于工业控制和智能化仪器,仪表等领域。本次设计的数字频率计以AT89C51单片机为核心,具有性能优良,精度高,可靠性好等特点。13数字频率计的基本原理频率计的基本原理是用一个频率稳定度高的频率源作为基准时钟,对比测量其他信号的频率。通常情况下计算每秒内待测信号的脉冲个数,此时我们称闸门时间为1秒。闸门时间也可以大于或小于一秒。闸门时间越长,得到的频率值就越准确,但闸门时间越长,则每测一次频率的间隔就越长。闸门时间越短,测的频率值刷新就越快,但测得的频率精度就受影响。数字频率计是用数字显示被测信号频率的仪器,被测信号可以是正弦波,方波或其兰州交通大学博文学院毕业设计(论文)2它周期性变化的信号。14系统设计技术指标基于传统测频原理的频率计的测量精度将随被测信号频率的下降而降低,在实用中有较大的局限性,而等精度频率计不但具有较高的测量精度,而且在整个测频区域内保持恒定的测试精度。课题要求运用单片机或者CPLD技术,结合传统直接测量频率方法和等精度测量频率的方法,实现高频和低频的测量,本系统设计的基本指标如下。141基本指标1频率10HZ30MHZ2闸门时间为01秒、1秒(3)实现对频率、周期和时间间隔的测量功能142发挥部分1信号方波、正弦波2幅度002V05V3周期脉冲宽度幅度(05V5V、频率1HZ1KHZ)的占空比,占空比变化范围为1090,测试误差1。兰州交通大学博文学院毕业设计(论文)3第二章系统硬件设计21频率测量的方法的研究211数字化直接测量频率的原理无论频率、周期还是时间间隔的数字化测量,均是基于主门(闸门)加计数器的结构而实现的,图21A示出了这种计数式直接测频的原理框图。其中主门(闸门)具有“与门”的逻辑功能。主门(闸门)的一个输入端送入的是频率为XF的窄脉冲,它是由被测信号经A通道放大整形后得到的。主门(闸门)的另一个输入端送来的是来自门控双稳的闸门时间信号TS。因为门控双稳是受时基(标准频率)信号控制的,所以TS即准确又稳定。设计时通过晶体震荡器和分频器的配合,可以获得10S、1S、01S等闸门时间。由于主门(闸门)的“与”功能,它的输出端只有在闸门信号TS有效时间才有频率XF的窄脉冲输出,并送到计数器去计数。设计数器的值为N,由频率定义式可以计算得到被测信号频率为XFN/TS21其原理框图和时序图如图21所示。(A)直接测频法原理框图(B)直接测频法时序图图21(A)直接测频法原理框图;(B)直接测频法时序图时基脉冲被测信号实际检出信号TS兰州交通大学博文学院毕业设计(论文)5由式21可知,当闸门时间T为1S时,N值即为被测量信号的频率。该测量方法由于主门的开启时间与被测信号之间不同步,而使计数值N带有1量化误差;且当被测信号频率越低时,该量化误差的影响越大。若再考虑由晶体振荡器引起的闸门时间误差,对式21进行误差的累积与合成运算后,可以得到直接测量测频率误差的计算公式如下1CCCXCFFNTFNTTFF(22)上式右边第一项为量化误差的相对值,其中N1;第二项为闸门时间的相对误差,数值上等于晶体振荡器基准频率的相对不确定度CCFF。在XF一定时,闸门时间T越长,测量准确度越高。而当T选定后,XF越高,由于1误差对测量结果的影响减小,测量准确度越高。但是随着1误差的影响的减小,闸门时间(也即基准频率)自身的准确度对测量结果的影响不可忽略,这时可以认为CCFF是计数式直接测频率准确度的极限。212数字化直接测量周期的原理虽然直接测频法可以测出单位时间内脉冲的个数即频率,但是对于较低频率的信号其检测误差会大大增大,解决办法就是改直接测频法为直接测周期法。图22A为计数式直接测周期的原理框图。与测频原理框图相比,其中门控双稳改由输入信号放大、整形和分频后的脉冲控制,所以闸门时间的宽度就等于K倍被测信号的周期KTX;而主门的另一个输入端,送入由晶体震荡器和分频器产生的周期为T0的时标脉冲信号。由于主门的“与”功能,它的输出端只有在闸门信号KTX期间有时标脉冲输出,并送到计数器去计数,计数器的值为N。不难看出,被测信号的周期为0/TXNTK23其原理框图和时序图如图22所示兰州交通大学博文学院毕业设计(论文)5(A)测周期法原理框图(B)测周期法时序图图22(A)测周期法原理框图;(B)测周期法时序图与计数式测频率相似,由于TX和T0之间也不是同步的,所以计数值N也带有1量化误差;此外由于晶振的不确定度,时标的周期T0也存在误差;最后,由于被测输入信号噪声的影响,使经B通道放大整形后的脉冲周期TX中还引入了一种触发误差。对式23进行误差的积累和合成运算,可以得到测周期误差的计算公式如下/20000003210RTXNXTNXTFCTTXNTKTXFCTXTFXFCKFCK24上式右边第一项为量化误差的相对值,其中计数误差XN1第二项为时标的相对误差;第三项为触发误差,其中R为被测信号XU与噪声NU比,可由公式R20XNUU计算单位为DB)。要降低触发误差就必须增大信噪比R,并采用多周期测量,还被测闸门信号高频基准信号实际检出已知信号TX兰州交通大学博文学院毕业设计(论文)6可以在整形电路中采用具有滞回特性电路来减小噪声的影响。在倍率K和时标T0固定时,与测频率相反,测量周期的误差随被测信号的频率升高而增大,此外由于有限的信噪比,使触发误差成为影响测量周期准确度的主要因素。采用多周期测量可以有效的降低触发误差的影响。213多周期同步等精度测量的原理无论是直接测频法还是测周期法,都无法保证闸门信号和另一信号的首尾实现同步,这就难以保证获得较高的测量精度,其误差在一个脉冲之内。由此,当引入多周期同步等精度测量法时,可以较好的解决这个问题。多周期同步等精度测量法的原理是电路需引入一个比被测信号频率高若干倍的内部时基信号,测量结果的误差范围便在这一个时基信号范围内。首先由相应的控制电路给出闸门开启信号,此时计数器并不开始计数,而是等到被测信号的上升沿到来时才真正开始计数。然后,两组计数器分别对被测信号和时基信号脉冲计数,当控制电路给出闸门关闭信号,此时计数器并不停止计数,而是等到被测信号的上升沿到来时才真正停止计数。图23中XF为输入信号频率,CF为时钟脉冲的频率。A、B两个计数器在同一闸门时间T内分别对XF和CF进行计数,计数器A的计数值AXNFT,计数器B的计数值为BCNFT。由于NAFXNFCT,则被测频率XF和周期TX分别为AXCBNFFNAXCBNTTN27式26中CT1/CF,为时钟的周期。图23中同步电路(D触发器)的作用在于使计数闸门信号与被测信号同步,实现同步开门,并且开门时间T准确地等于被测信号周期的整数倍,故式26、27中的计数AN没有1量化误差。计数器BN虽然有量化误差,但由于CF很高,BN远大于1,所以BN的1量化误差的相对值(1/BN)很小,且该误差与被测频率XF无关,因此在整个测频范围内,多周期同步等精度测量法能够实现等精度的测量。该测试方法需要的除法功能运算,对于使用微处理器的仪器来说,是不难实现的。考虑计数值BN的1量化误差、时钟CF的不确定度和同步门的触发误差时,根据式26和式27可以推导出倒数计数器的测频、测周期误差的计算公式/2003210RCCXXXXCTFFTFTTFK28上式中R20XNUU,为被测信号XU与噪声NU比,K为多周期倍率。与式(22)、(24)相比较,式28中没有对被测信号计数引起的1量化误差,只有BN计数器在同步门T周期的1计数误差CT/T,而且与被测量信号的频率无关,即在整个测量频兰州交通大学博文学院毕业设计(论文)7段上是等精度的。这时多周期同步等精度测量法的测频、测周期的精度在整个测量频段上均可达到710量级。其原理框图和时序图如图23所示。(A)多周期同步等精度测量法原理框(B)多周期同步等精度测量法时序图图23(A)多周期同步等精度测量法原理框图B多周期同步等精度测量法时序图22实验方案的确定兰州交通大学博文学院毕业设计(论文)8221测量方法的确定经过21节对频率测量和周期测量方法的分析,得知直接测量法不可能满足该任务所要求的测量精度,只要采用多周期同步等精度测量法就可以直接读出被测信号的周期值或者频率值,在中界频率附近能达到较高的测量精度。基于以上讨论,决定选用多周期同步测量法来实现该数字频率计。222频率测量模块的方法频率测量模块我们选择等精度测频法,其实现方式可用图24来说明。图24等精度测频原理图当方波预置门控信号由底变为高电平时,经整形后的别测信号上升沿启动D触发器,由D触发器的R段同时启动可控计数器CNTI和CNT2同时计数,当预置门为低电平时,随后而至的被测信号使可控计数器同时关闭。设FX为整形后的被测信号,FS为基准频率信号,若在一次预置门高电平脉宽时间内被测信号计数值为NX,基准频率计数值NS,则有FXFSNSNX223周期测量模块的方法周期测量与频率测量完全相同,只是在进行计算时公式不同,用周期T代换等精度频率测量公式中的频率因数即可。计算公式为SSXXTNTN215式中,XT为被测信号周期的测量值,SN、XN分别与12式中的NS、XN含义相同。224脉冲宽度测量模块的方法兰州交通大学博文学院毕业设计(论文)9在进行脉冲宽度测量时,首先经信号处理电路进行处理,限制只有信号的50幅度及其以上部分才能输入数字测量部分。脉冲边沿被处理得非常陡峭,然后送入测量计数器进行测量。测量电路在检测到脉冲信号的上升沿时打开计数器,在下降沿是关闭计数器,设脉冲宽度为TWX,计算公式为TWXNX/FS。225周期脉冲信号占空比测量模块测一个脉冲信号的脉宽,记其值为TWX1;信号反相后,再测一次脉宽并记录其值TWX2,通过以下公式汁算占空比TWX1/TWX1TWX210021723系统硬件设计根据频率计的设计要求,我们可将整个电路系统划分为几个基本模块,组成模块框图如图25所示。图25频率计组成模块框图其主要由以下几个部分构成1信号整形电路。用于对待测信号进行放大和整形,以便作为CPLD的输入信号。2测频电路。是测频的核心电路模块,由CPLD器件担任。3单片机电路模块。用于控制CPLD的测频操作和读取测频数据,并作出相应数据处理。450MHZ的标准频率信号源。本模块采用高频率稳定度和高精度的晶振作为标准兰州交通大学博文学院毕业设计(论文)10频率发生器,产生50MHZ的标准频率信号直接进入CPLD。5键盘模块。可以用5个键执行测试控制,一个是复位键,其余是命令键。6数码显示模块。可以用7个数码管显示测试结果,最高可表示百万分之一的精度。231稳压电源电路本项设计要求的电源均为5V的直流稳压电源。7905空载时测量输出在6V左右加上负载,输出正常。7805驱动电流可达1A,运行时电流200300MA,7805温度有50度左右。频率计稳压电源电路图如图26所示。图26频率计稳压电源电路232信号放大整形电路信号放大整形电路包括放大级和整形级两部分。放大级的设计主要考虑增益和带宽的指标。因为后面的整形级采用了电压比较器,所以放大级的增益应根据频率计指标提出的最小输入信号幅度(002V)和电压比较器所要求的输入电压的最小压摆率来决定。在本通道中,电压比较器整形级是设计过零触发方式的,因此必须对输入信号过零处的压摆率予以审查。,从输入级到第二放大级其带宽大于10MHZ的指标要求完全可以达到的。因为模拟通道部分所用的器件都是带宽高速器件,为了防止寄生振荡,在每个器件的电源引脚附近到地之间均需要加上去耦电容,每组去耦电容由两种电容并联起来,以取得良好的宽频带宽去耦效果。其中容量小的(01F)用陶瓷电容,对高频分量有良好的去耦作用;容量大的(68F)用钽电解电容,对低频分量有良好的去耦作用。兰州交通大学博文学院毕业设计(论文)11整形级选用输出为TTL电平的高速集成双压比较器MAX902来构成,它比TTL电路有触发灵敏度高、因而可降低放大级增益的优点;上面已讨论过,根据手册提示,使用高速电压比较器时必须保证输入信号的压摆率大于手册上所给的最小容许值,以免在比较器输出信号的前后沿部位产生振荡。此外电源引脚附近也需要加接良好的去耦电容,布线短,数字电源和模拟电源的接地要分开,以免比较器输出端的数字信号干扰模拟电路部分的工作。为了防止输入信号过大而损坏后面的元器件,在输入端加上由一个470电阻和两个二极管组成的限幅保护电路。限幅二极管应选用结电容小,开关时间短,容许的正向电流大且正向压降小的管子,2DK17A开关二极管是符合上述要求的一种。有时被测信号中含有较高的直流分量,为了保证通道放大器正常工作,输入信号应通过隔直流电容耦合到输入级的输入端,为此还要加上交、直流耦合切换开关S1。图27信号放大整形电路233单片机控制电路对单片机这部分的主要指标考虑如下由5V电源供电,I/O口与TTL电平兼容,并有足够数目的I/O口;要有丰富的四则算术运算和逻辑运算指令,指令执行速度要快;片内除RAM外还要有EPROM;至少有两个16位的定时器/计数器;有外部中断输入引脚;具有串行通信口;价格要低廉。根据以上条件,查阅相关资料,发现8位单片机AT89C51的指标已经能够满足要求。而对于实验环境的限制,能选择的CPLD有限,所以根据实验室的情况选用了XILINX公司的XC9572。由于等精度数字频率计涉及到的计算包括加、减、乘、除,耗用的资源比较大。因兰州交通大学博文学院毕业设计(论文)12此,我们选择单片机和CPLD的结合来实现。单片机控制电路如图28所示,其中单片机完成整个测量电路的测试控制、数据处理和显示输出;CPLD完成各种测试功能;键盘信号由89C51单片机进行处理,它从CPLD读回计数器数据并进行运算,然后向显示电路输出测量结果。等精度数字频率计电路系统原理框图如图28所示。系统的基本工作方式如下1P2口是单片机与CPLD的数据传送通信口,P0口为双向控制口。P3口利用键盘显示管理芯片ZLG7289作为数码管显示,实现数据显示。系统的P1口设置5个功能键占空比、脉宽、周期、频率、自检,进行各测试功能的转换。27个LED数码管组成测量数据显示器,另一个独立的数码管用于状态显示。3FS为测频标准频率50MHZ信号输入端,由晶体振荡源电路提供。4FX为被测信号输入,此待测信号是经放大整形后输入CPLD的。图28等精度数字频率计电路系统原理框图兰州交通大学博文学院毕业设计(论文)13234标准频率信号源本设计采用50MHZ的晶体振荡器产生标准频率方波信号频标供数字测量电路使用。由公式28及其讨论可知,多周期同步等精度测量法所达到的测量精度和系统时钟源的精度量级相近。晶体振荡器采用恒温晶振,稳定度可以达到为2010724小时。235数码管显示模块从实验条件等实际出发考虑,数码管显示模块采用了ZLG7289。ZLG7289是一片具有串行接口的,可同时驱动8位共阴式数码管的显示驱动芯片,同时还可连接多达64键的键盘矩阵,单片即可完成LED显示的全部功能。ZLG7289具有的特点和丰富的指令系统,使得由其组成的LED显示和键盘电路具有外围电路简单,功能强大,使用方便,可靠性高,与MCU接口简单等特点,是LED显示和键盘电路的首选器件。ZLG7289与单片机的连接如下图29所示。图29ZLG7289与单片机的连接因为本设计用等精度测频的方法,预置门时间为1S,在标准频率信号为50MHZ的情况下,可以算出测量精度为电路中采用了8位LED显示器其中7个LED数码管组成测兰州交通大学博文学院毕业设计(论文)14量数据显示器,另一个独立的数码管用于状态显示。当测频率时,有显示指示,为了保证频率计有足够的显示时间,并且在打开门控信号之前,要先清零,以使测量数字计数器每次从零开始计数。第三章系统软件设计兰州交通大学博文学院毕业设计(论文)15设计包括频率计的测频模块和利用对单片机的编程。单片机的编程又由三部分构成对CPLD的数据读取及控制信号输出,键盘电路的扫描以及数码管显示输出。31CPLD测频专用模块的设计利用VHDL设计的测频模块主逻辑结构如图31所示,图31等精度频率计主逻辑结构图图31中,预置门控信号CL可由单片机发出,可以证明,在1秒至01秒间选择的范围内,CL的时间宽度对测频精度几乎没有影响,在此设其宽度为TPR。BZH和TF模块是两个可控的32位高速计数器,BENA和ENA分别是他们的允许信号端,高电平有效。标准频率信号从BZH的时钟输入端BLCK输入,设其频率为FS;经整形后的被测信号从与BZH相似的32位计数器TF的时钟输入端TCLK输入,设其真实频率值为XEF,被测量频率为XF。测频原理说明如下测频开始前,首先发出一个清零信号CLR,使两个计数器和D的触发器置零,同时通过信号ENA,禁止两个计数器计数。这是一个初始化的操作。然后由单片机发出允许测频命令,即令预置门控信号CL为高电平,这时D触发器要一直等到被测信号的上升沿通过时Q端才被置1(即令START为高电平),与此同时,将同时启动计数器BZH和TF,进入计数允许周期。在此期间,BZH和TF分别对被测信号(频率为XF)和标准频率信号(频率为FS)同时计数。当TPR秒后,预置门信号被单片机置为低电平,但此时兰州交通大学博文学院毕业设计(论文)16两个计数器并没有停止计数,一直等到被测信号的上升沿到来时,才通过D触发器将这两个计数器同时关闭。被测频率值为XF,标准频率值为FS,设在一次预置门时间TPR中对被测信号计数值为NX,对标准频率信号的计数值为NS,则下式成立SXXSFFNN31不难得到测得的频率为FXFSNXNS32最后通过控制SEL选择信号和64位至8位的多路选择器MUX,将计数器BHZ和TF中的两个32位数据按照SEL20的编码次序,分8次依次读入单片机,并按照各个模块的计算公式进行计算和显示。311频率计CPLD部分的VHDL程序根据图31的主逻辑结构图和图32的测控时序,以及测频原理,可以写出相应的VHDL功能描述。相应的RTL电路图如图33。频率计CPLD部分的VHDL程序设计如下LIBRARYIEEE等精度频率计CPLD设计部分USEIEEESTD_LOGIC_1164ALLUSEIEEESTD_LOGIC_UNSIGNEDALLENTITYETESTERISPORTBCLKINSTD_LOGIC标准频率时钟信号CLOCK2,50MHZTCLKINSTD_LOGIC待测频率时钟信号CLRINSTD_LOGIC清零和初始化信号CLINSTD_LOGIC当SPUL为高电平时,CL为预置门控信号,用于测频计数时间控制当SPUL为低电平时,CL为测脉宽控制信号CL高电平时测高电平脉宽而当CL为低电平时,测低电平脉宽SPULINSTD_LOGIC测频或测脉宽控制STARTOUTSTD_LOGIC起始计数标志信号EENDOUTSTD_LOGIC由低电平变到高电平时指示脉宽计数结束SELINSTD_LOGIC_VECTOR2DOWNTO0数据读出选同控制DATAOUTSTD_LOGIC_VECTOR7DOWNTO08位数据读出兰州交通大学博文学院毕业设计(论文)17ENDETESTERARCHITECTUREBEHAVOFETESTERISSIGNALBZQSTD_LOGIC_VECTOR31DOWNTO0标准计数器SIGNALTSQSTD_LOGIC_VECTOR31DOWNTO0测频计数器SIGNALENASTD_LOGIC计数使能SIGNALMA,CLK1,CLK2,CLK3STD_LOGICSIGNALQ1,Q2,Q3,BENA,PULSTD_LOGICSIGNALSSSTD_LOGIC_VECTOR1DOWNTO0BEGINSTART0ELSIFBCLKEVENTANDBCLK1THENIFBENA1THENBZQ0ELSIFTCLKEVENTANDTCLK1THENIFENA1THENTSQTSQ1ENDIF兰州交通大学博文学院毕业设计(论文)18ENDIFENDPROCESSPROCESSTCLK,CLRBEGINIFCLR1THENENA0ELSIFTCLKEVENTANDTCLK1THENENACLENDIFENDPROCESSMATCLKANDCLORNOTTCLKORCL测脉宽逻辑CLK1NOTMACLK2MAANDQ1CLK3NOTCLK2SSQ2ELSIFCLK1EVENTANDCLK11THENQ11ENDIFENDPROCESSDD2PROCESSCLK2,CLRBEGINIFCLR1THENQ20ELSIFCLK2EVENTANDCLK21THENQ21ENDIFENDPROCESSDD3PROCESSCLK3,CLRBEGINIFCLR1THENQ30ELSIFCLK3EVENTANDCLK31THENQ31ENDIFENDPROCESSPUL1WHENSS“10“ELSE当SS“10”时,PUL高电平,允许标准计数器计数0禁止计数EEND1WHENSS“11“ELSEEEND为低电平时,表示正在计数,由低电平变到高电平0时,表示计数结束,可以从标准计数器中读数据了兰州交通大学博文学院毕业设计(论文)19BENAENAWHENSPUL1ELSE标准计数器时钟使能控制信号,当SPUL为1时,测频率PULWHENSPUL0ELSE当SPUL为0时,测脉宽和占空比PULENDBEHAV利用VHDL设计的测频模块其中有关的接口信号规定如下1、BCLK标准频率输入信号,50MHZ。2、TCLK待测频率输入信号,01HZ10MHZ。最高可以为50MHZ。3、CLR全局清0和初始化输入,高电平有效,由单片机向CPLD发出。4、CL预置门控制输入,时间为1S,高电平有效,由单片机向CPLD发出。5、SPUL高电平测频率,低电平测脉宽,由单片机向CPLD发出。6、START此信号由单片机读取。在测频时,高电平时表示进入计数周期,低电平时表示计数结束,单片计可以读取CPLD中的计数。7、EEND在测脉宽期间(SPUL0),由低电平变为高电平,表示脉宽计数结束,EEND信号由单片机读取。8、DATA计数数据输出,8位,由单片机根据SEL选择信号分别读取。9、SEL计数数据读出控制,3位,由单片机输出控制。当SEL分别等于“000”、“001”、“010”、“011”;可由DATA分别读出BZQ70、158、2316、3124共32位。当SEL分别等于“100”、“101”、“110”、“111”;可由DATA分别读出TSQ70、158、2316、3124共32位。312频率计CPLD部分的仿真图34和图35分别是频率测试仿真波形和脉宽测试仿真波形。从图34可以看出,SPUL1时,系统进行等精度测频。这时,CLR一个正脉冲后,系统被初始化。然后CL被置为高电平,但这时两个计数器并未开始计数START0,直到此后被测信号TCLK出现一个上升沿,START1时2个计数器同时启动分别对被测信号和标准信号开始计数,其中BZQ和TSQ分别为标准频率计数器和被测频率计数器的计数值。由图可见,在CL变为低电平后,计数仍未停止,直到TCLK出现一个上升沿为止,这时START0,可作为单片机了解计数结束的标志信号。仿真波形中TCLK和BCLK的周期分别设置为10S和500NS。由图可见,计数结果是,对TCLK的计数值是5,对BCLK的计数值是64十六进制。通过控制SEL就能按照兰州交通大学博文学院毕业设计(论文)208个8位将两个计数器中的32位数读入单片机中进行计算。从图中的波形可以看出,VHDL部分描述的测频的功能完全正确。图34频率/周期测量仿真图图35脉宽/占空比测量仿真图图35中,取SPUL0时,则系统进行脉宽测试。为了便于观察,图中仿真波形中的TCLK和BCLK的周期分别设置为75S和500NS。由VHDL程序和RTL电路图可以分析,CL和CLR的功能都发生了变化,前者为1时测信号高电平的脉宽,为0时测低电平的脉宽;而后者CLR变为1时作系统初始化,由1变为0后启动电路系统的标准信号计数器BZQ准备对标准频率进行计数。而允许计数的条件是此后出现的第一个脉宽的宽度。由图35可见,当CL1,TCLK的高电平脉冲到来时,即启动了BZQ进行计数,而在TCLK的低电平到来时停止计数,状态信号EEND则由低电平变为高电平,兰州交通大学博文学院毕业设计(论文)21告诉单片机计数结束。计数值可以通过SEL读出,这里是4BH。由此不难算出,TCLK的高电平脉宽应该等于4BH乘以BCLK的周期。改变CL为0,又能测出TCLK的低电平脉宽,从而可以获得TCLK的周期和占空比。32单片机控制与运算程序的设计完成VHDL硬件语言编程,系统内CPLD芯片中的逻辑资源尚缺一点即可大功告成,系统需要单片机为它实现控制,运算,显示等功能。所以,采用89C51单片机控制模块对各种信号进行处理并显示。与单片机可以按照如下方式接口1单片机的P0口接八位数据DATA70,负责读取测频数据。2单片机可以通过信号STARTP27,指示计数是否结束,以确定何时可以读取数据。3P20、P21、P22与SEL20相接,用于控制多路通道的数据选择。当SEL分别为“000”、“001”、“010”、“011”时,由低八位到高八位读出标准频率计数值;当SEL分别为“100”、“101”、“110”、“111”;由低八位到高八位读出待测频率计数值。4EENDP23与START功能基本相同,当其由低电平变到高电平使指示脉冲宽度计数结束。5P25和P26分别接控制信号CL和SPUL。CL和SPUL协同控制测试操作。即当为1时,CL作为测脉宽控制信号。这时,CL若为1,测TCLK的高电平脉宽,而当CL为0,则测TCLK的低电平脉宽。然后分别从DATA数据口读出BZH对标准频率的计数,即只需令SEL的取值分别为“000”、“001”、“010”、“011”即可。6P00接清零信号CLR,高电平有效。每一测频周期开始时,都应该首先清零。321单片机主程序的设计当系统通过5V电源供电时,自动进入自检状态,由单片机发出按键扫描信号对各个按键进行扫描。系统进行初始化后,此时当某键按下时,程序跳转到相应的子程序执行功能,然后返回继续执行键盘扫描主程序。单片机控制主程序流程图如图36。兰州交通大学博文学院毕业设计(论文)22图36单片机主程序流程图322频率、周期计数子程序的设计如果按下测频键,则开始测量过程首先,由单片机的P24发出一个清零信号P241,把计数使能信号START的预置门控信号CL置成0。然后P25CL控制端给出一个高电平的脉冲,长度控制在01秒至1秒之间。在此过程中,CPLD部分已经完成测频的任务。P25CL控制端下跳成0后,要有一个延迟时间单片机再开始读取CPLD信息,这个延迟由单片机控制,长度要大于等于待测量信号的一个周期。然后就是读取待测频率的过程了,P0口负责读取数据。P20、P21、P22与SEL20相接,用于控制多路通道的数据选择。当SEL分别为“000”、“001”、“010”、“011”时,由低八位到高八位读出标准频率计数值;当SEL分别为“100”、“101”、“110”、“111”;由低八位到高八位读出待测频率计数值。然后单片机计算(FS/NS)NX值,通过ZLG7289传给LED显示。兰州交通大学博文学院毕业设计(论文)23在测量周期时只要将计算结果由频率值取倒数转换为周期值即可。图37频率、周期计数子程序流程图兰州交通大学博文学院毕业设计(论文)24图38测周期子程序流程图兰州交通大学博文学院毕业设计(论文)25图39测频率子程序流程图323脉宽、占空比子程序的设计脉宽测量子程序与周期测量子程序基本一致,脉宽测量是将被测量信号的脉宽作为闸门信号对标准频率计数。占空比子程序是分别测量出高低电平的脉宽计数值N1,N2,由公式占空比N1/(N1N2)100算出。图310脉宽、占空比计数子程序流程图兰州交通大学博文学院毕业设计(论文)26兰州交通大学博文学院毕业设计(论文)27图311测脉宽子程序流程图324键盘扫描及数码管显示子程序的设计键盘采用的是循环扫描的工作方式,当有键输入时,将读到的键值存入预存单元,用软件延时10MS消除抖动,再读键值,和原键值进行比较,若不相同,则继续进入扫描,如相同,则跳转到相应的入口执行子程序。单片机读入测量结果后,还要根据等精度测频原理进行计算,才能得到最终的测量结果。图312为键盘扫描子程序的流程图。数码管显示部分采用的是ZLG7289。ZLG7289是一片具有串行接口的,可同时驱动8位共阴式数码管的显示驱动芯片,单片即可完成LED显示。显示子程序的流程图如图313所示。兰州交通大学博文学院毕业设计(论文)28图312扫描子程序流程图兰州交通大学博文学院毕业设计(论文)29图313显示子程序流程图兰州交通大学博文学院毕业设计(论文)30总结1在系统总体设计方面,充分利用单片机和CPLD各自的优势,将测控的主体分配给CPLD,既可满足频测对速度方面的要求和多I/O口的要求,同时利用单片机具有良好的人机接口和控制运算的功能,可以较简单地实现键盘和显示控制以及数据处理运算。2在频率测量方面,由于采用了等精度测频法,使该系统具有以下特点相对测量误差与被测频率的高低无关;增大PRT或SF可以增大NS,减少测量误差,提高测量精度;测量精度与预置门宽度和标准频率有关,与被测信号的频率无关,预置门和常规测频闸门时间相同而被测信号频率不同的情况下,等精度测量法的测量精度不变。3在显示方面,采用串行接口8位LED数码管及64键键盘智能控制芯片ZLG7289,节约了I/O口,简化了驱动电路的设计。兰州交通大学博文学院毕业设计(论文)31致谢三个月的时间很快过去了,在这里首先要感谢院、系领导给予的大力支持,为我们提供了良好的设计条件,特别要感谢指导老师孙春霞老师给予的悉心指导和不厌其烦的热情帮助。在此谨向导师表示最衷心的感谢、并致以崇高的敬意。同时要感谢参加论文评审和答辩委员会的各位老师,感谢他们对我的论文提出了宝贵的建议。在过去的这段时间中,我得到了来自各方面的热情帮助,在此向在我学业生涯中所有帮助过我的朋友表示深深的谢意致谢人杨林娜兰州交通大学博文学院毕业设计(论文)32参考文献1张杰,杨艳丽,马莉莉等基于单片机C语言的数字频率计设计J内蒙古农业大学学报,2007,2821911922邹道生,李铭,杨汉祥多功能数字频率计的设计J赣南师范学院学报,2004,316183李春树基于AT89C51单片机的等精度数显频率计J零陵学院学报,2003,24250544王保强,窦文,白红高精度测频方案设计J成都信息工程学院学报,2002,277815洛家华用MCS51系列单片机测量频率的方法研究J辽宁工学院学报,2000(5)32336孙笑雨用单片机实现高精度数字频率计J沈阳高等专科学校学报,1999,1320227刘永强8031单片机测频方法及其应用J自动化与仪器仪表,1997,48徐淑华,程退安,姚万生单片机微型机原理及应用M哈尔滨哈尔滨工业大学出版社,19949公茂法单片机人机接口实例集M北京航天航空大学出版社,199710马宏杰,张思东等微机通信原理与实用技术M北京清华大学出版社,199411张德贞基于单片机的数字频率计D黄河科技大学,200212张永艳基于复杂可编程逻辑器件及用VHDL语言编程的数字频率计的设计D内蒙古大学,200413张永安基于CPLD的多功能等精度数字频率计的设计D内蒙古大学,200414刘夫江基于单片机和CPLD的等精度数字频率计设计D山东科技大学,2007兰州交通大学博文学院毕业设计(论文)33外文翻译AT89C51THEAT89C51ISALOWPOWER,HIGHPERFORMANCECMOS8BITMICROCOMPUTERWITH4KBYTESOFFLASHPROGRAMMABLEANDERASABLEREADONLYMEMORYPEROMAND128BYTESOFDATARANDOMACCESSMEMORYRAMTHEDEVICEISMANUFACTUREDUSINGATMELCOSHIGHDENSITYNONVOLATILEMEMORYTECHNOLOGYANDISCOMPATIBLEWITHTHEINDUSTRYSTANDARDMCS51INSTRUCTIONSETANDPINOUTTHEO

温馨提示

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

评论

0/150

提交评论