高精度的频率计设计.docx
- 文档编号:11549099
- 上传时间:2023-03-19
- 格式:DOCX
- 页数:31
- 大小:473.59KB
高精度的频率计设计.docx
《高精度的频率计设计.docx》由会员分享,可在线阅读,更多相关《高精度的频率计设计.docx(31页珍藏版)》请在冰豆网上搜索。
高精度的频率计设计
2012届毕业设计说明书
高精度的频率计设计
系、部:
电气与信息工程系
学生姓名:
指导教师:
职称
专业:
电子信息工程
班级:
完成时间:
2012年5月
摘要
高精度频率计是一种测量信号频率的仪器,可以用来测量正弦波、方波、三角波、尖脉冲信号的频率和周期。
除此之外还能对其他多种物理量的变化频率进行测量,诸如机械振动次数,物体转动速度,明暗变化的闪光次数,单位时间里经过传送带的产品数量等,这些物理量的变化情况可以有关传感器先转变成周期变化的信号,再用数字频率计测量单位时间内变化次数,通过数码显示出来。
它在科研、教学、高精度仪器测量、工业控制等领域都有较广泛的应用。
本设计以AT89S51单片机为控制核心作为系统控制单元。
其结构主要包括单片机控制电路和数码管显示电路,软件编程采用C语言。
该频率计具有高速、精度高、可靠性好、抗干扰性强、设计产品成本低,性价比高、现场可编程等优点。
关键词:
高精度频率;单片机;频率测量;AT89S51
ABSTRACT
High-precisionfrequencymeterisameasureofthesignalfrequencyinstrument.Itcanbeusedtomeasuresinewave,squarewave,trianglewave,sharppulsethefrequencyofthesignalandthecycle.Inadditiontoavarietyofotherphysicalquantitiescanchangefrequencymeasurement,suchasmechanicalvibrationfrequency,theobjectrotationspeed,lightandshadechangeflashnumber,theunitoftimeaftertheconveyorbeltoftheamountofproducts,etc.Thesequantitiesthechangesoftherelevantsensorscanbetransformedintofirstcyclesofsignals,thenusedigitalfrequencymetermeasuringunitoftimetochangefrequency,throughthedigitaldisplay.Itinscientificresearch,teachingandhighprecisioninstrumentmeasurement,industrialcontroldomainhasthewidespreadapplication.
ThisdesignwithAT89S51ascontrolcoreassystemcontrolunit.Itsstructureismainlyincludesinglechipmicrocomputercontrolcircuitanddigitaltubedisplaycircuit,softwareprogrammingusingClanguage.Thefrequencymeterwithspeed,highprecision,goodreliabilityandanti-interferencestrong,designproductswithlowcost,highperformance/priceratio,fieldprogrammable,etc.
Keywordshigh-precisionfrequency;microcontroller;frequencymeasurement;
AT89S51
1绪论………………………………………………………………………………1
1.1选题的依据及意义………………………………………………………1
1.2数字频率计测频方法选择及原理………………………………………2
1.3本课题研究内容…………………………………………………………3
2高精度频率计方案论证与选择…………………………………………………5
2.1方案对比与选择…………………………………………………………5
3硬件设计与实现…………………………………………………………………8
3.1系统最终硬件设计………………………………………………………8
3.2基本设计原理……………………………………………………………12
3.3AT89S51单片机简介……………………………………………………12
3.4系统硬件模块……………………………………………………………16
4系统软件设计……………………………………………………………………17
4.1编程语言与编译器介绍…………………………………………………17
4.2程序流程图………………………………………………………………17
5软件与硬件调试…………………………………………………………………20
5.1C程序编译与仿真结果…………………………………………………20
5.2硬件仿真结果……………………………………………………………21
结束语………………………………………………………………………………24
参考文献……………………………………………………………………………25.
致谢…………………………………………………………………………………26
附录…………………………………………………………………………………27
1绪论
1.1选题的依据及意义
在电子技术中,能够精确测量各种设备仪器中电路的频率、电压、电流等参数已越来越重要。
而频率是最基本的参数之一,并且与许多电参数的测量方案、测量结果都有十分密切的关系,因此频率的测量就显得更为重要。
数字频率计是一种基础测量仪器,到目前为止已有30多年的发展史。
早期,设计师们追求的目标主要是扩展测量范围,提高测量精度、稳定度等。
这也是衡量电子计算器的技术水平,决定电子计数器价格高低的重要依据。
目前这些基本技术日臻完善,成熟。
随着科学技术的发展,用户也提出了新的要求。
对于低档产品要求使用操作方便,量程(足够)宽,可靠性高,价格低。
而对于中高档产品,则要求有高分辨率,高精度,高稳定度,高测量速率。
由于微电子技术和计算机技术的发展,频率计也在不断地进步着,灵敏度不断提高,频率范围不断扩大,功能不断地增加。
在测试通讯、微波器件或产品时,通常都是较复杂的信号,如含有复杂频率成分、调制的或含有未知频率分量的、频率固定的或变化的、纯净的或叠加有干扰的等等。
为了能正确地测量不同类型的信号,必须了解待测信号特性和各种频率测量仪器的性能。
数字频率计是用数字显示被测信号频率的仪器,被测信号可以是正弦波,方波或其它周期性变化的信号。
如配以适当的传感器,可以对多种物理量进行测试,比如机械振动的频率,转速,声音的频率以及产品的计件等等。
毫无疑问,无论是在科技研究中还是在实际应用中,频率测量的作用都显得尤为重要。
然而传统的频率计通常采用组合电路和时序电路等大量的硬件电路构成,产品不但体积较大,运行速度慢,而且测量低频信号时不宜直接使用。
随着科技的进步,为了较好的解决这一问题人们开始运用单片机测量频率,它是一种基于时间或频率的模数转换原理,并依赖于数字电路技术发展起来的一种显示被测信号频率的数字测量仪器。
1.2数字频率计测频方法选择及原理
1.2.1数字频率计测频方法
频电子计数式的测频方法主要有以下几种:
脉冲数定时测频法(M法),脉冲周期测频法(T法),脉冲数倍频测频法(AM法),脉冲数分频测频法(AT法),脉冲平均周期测频法(M/T法),多周期同步测频法。
下面是几种方案的具体方法介绍。
脉冲数定时测频法(M法):
此法是记录在确定时间Tc内待测信号的脉冲个数Mx,则待测频率为:
Fx=Mx/Tc
(1)
脉冲周期测频法(T法):
此法是在待测信号的一个周期Tx内,记录标准频率信号变化次数Mo。
这种方法测出的频率是:
Fx=Mo/Tx
(2)
脉冲数倍频测频法(AM法):
此法是为克服M法在低频测量时精度不高的缺陷发展起来的。
通过A倍频,把待测信号频率放大A倍,以提高测量精度。
其待测频率为:
Fx=Mx/ATo(3)
脉冲数分频测频法(AT法):
此法是为了提高T法高频测量时的精度形成的。
由于T法测量时要求待测信号的周期不能太短,所以可通过A分频使待测信号的周期扩大A倍,所测频率为:
Fx=AMo/Tx(4)
脉冲平均周期测频法(M/T法):
此法是在闸门时间Tc内,同时用两个计数器分别记录待测信号的脉冲数Mx和标准信号的脉冲数Mo。
若标准信号的频率为Fo,则待测信号频率为:
Fx=FoMx/Mo(5)
多周期同步测频法:
是由闸门时间Tc与同步门控时间Td共同控制计数器计数的一种测量方法,待测信号频率与M/T法相同。
1.2.2各测频方法优缺点及方法选择
脉冲数定时测频法,时间Tc为准确值,测量的精度主要取决于计数Mx的误差。
其特点在于:
测量方法简单,测量精度与待测信号频率和门控时间有关,当待测信号频率较低时,误差较大。
脉冲周期测频法,此法的特点是低频检测时精度高,但当高频检测时误差较大。
脉冲数倍频测频法,其特点是待测信号脉冲间隔减小,间隔误差降低;精度比M法高A倍,但控制电路较复杂。
脉冲数分频测频法,其特点就是高频测量精度比T法高A倍,但控制电路也较复杂。
脉冲平均周期测频法,在测高频时精度较高,但在测低频信号时精度较低。
多周期同步测频法,此法的优点是,闸门时间与被测信号同步,消除了对被测信号计数产生的±1个字误差,测量精度大大提高,且测量精度与待测信号的频率无关,达到了在整个测量频段等精度测量。
通过以上方法的对比我们可以发现多周期同步测频法是最佳方法,所以我选择它作为本设计的测频方法。
1.2.3多周期同步测频法原理
多周期同步测频的基本原理是用一个频率稳定度高的频率源作为基准时钟,对比测量其他信号的频率。
通常情况下计算每秒内待测信号的脉冲个数,此时我们称闸门时间为1秒。
闸门时间也可以大于或小于一秒。
闸门时间越长,得到的频率值就越准确,但闸门时间越长则每测一次频率的间隔就越长。
闸门时间越短,测的频率值刷新就越快,但测得的频率精度就受影响。
数字频率计是用数字显示被测信号频率的仪器,被测信号可以是正弦波,方波或其它周期性变化的信号。
1.3本课题研究内容
本课题的研究内容为基于单片机AT89S51的高精度数字频率计,此设计是基于ATMEL公司的AT89S51单片机为核心,通过其T0与T1的定时与计数功能,来测量输入信号的频率,并通过六位动态数码管显示出来,并且尽可能使用最少的元器件,在满足性能要求的前提下,节省成本,以期达到最大的性价比。
它有着体积更小,运算速度更快,测量范围更宽的优点,更重要的是它能大大的降低制作成本。
由于传统的频率计中有许多功能是依靠硬件来实现的,而采用单片机测量频率之后,有许多以前需要用硬件才能实现的功能现在仅仅依靠软件编程就能实现,而且不同的软件编程能够实现不同的功能,这一巨大优势无疑使得制作成本大大降低。
通过该项设计,可以将模拟电路及单片机基础的理论知识运用于实际设计中,并熟练C语言编程能力,同时提高分析问题和解决问题的能力灵活应用电子相关学科的理论知识,联系实际电路设计的具体实现方法,达到理论与实践的统一。
在此过程中,加深对信号检测和信号处理的理解和认识。
这对我以后的工作和学习都是有很大帮助的。
由于基于单片机的数字频率计与传统的频率计有着那么明显的优势,因此,我将高精度频率计的设计与实现作为我的研究课题。
2高精度频率计方案论证与选择
2.1方案对比及选择
2.1.1方案一
工作原理如下图l所示:
该方法采用单片机自身的计数器对输入脉冲进行计数。
优点是设计出的频率计系统结构和程序编写简单,成本低廉,不需要外部计数器,直接利用单片机最小系统就可以实现。
这种方法的缺陷是受限于所用单片机计数的晶振频率。
本次设计使用的AT89S51单片机,将其内部定时/计数器Tl的功能设为定时。
频率信号由T0端引入。
由于检测一个由“1”到“0”的跳变需要两个机器周期。
在前一个机器周期测出高电平“1”,后一个周期测出低电平“0”。
则输入时钟信号的最高频率不得超过单片机晶振频率的二十四分之一。
而且由于定时不能达到ls,所以要多次引起片内定时器的溢出中断,由此会引起测频的误差。
图1方案一原理框图
2.1.2方案二
其工作原理如图2所示。
该方法是单片机使用外部计数器对脉冲信号进行计数,计数值再由单片机读取。
此方法的好处是输入的时钟信号频率可以不受单片机晶振频率的限制,可以对相对较高频率进行测量,但缺点是成本比第一种方法高,硬件系统结构比较复杂。
为了节省硬件成本,可以采用动态扫描的方法进行显示。
图2方案二原理框图
2.1.3方案三
工作原理如图3所示。
系统测频、测周期部分采用中小规模数字集成电路,用机械式功能转换开关换挡,完成测频率,测周期,测脉冲的功能。
该方案的特点是中小规模数字集成电路应用技术熟悉,概念清楚,能可靠地完成频率计的基本功能,但由于系统功能要求较高,所以电路过于复杂。
而多量程转换开关使用不便。
图3方案三测频原理框图
2.1.4方案比较
方案一的设计系统硬件结构和编程都相对简单。
不需要外部计数器,可直接利用单片机最小系统实现。
所以设计成本低,编程简洁。
但它受限于所用单片机计数的晶振频率,输入时钟信号的最高频率不得超过单片机晶振频率的二十四分之一。
同时多次引起片内定时器的溢出中断,由此会产生测频的误差。
方案二的设计克服了方案一输入的时钟信号频率受单片机晶振频率的限制的缺点。
但硬件系统结构复杂、成本高,作为毕业设计难以实现。
方案三的设计系统测频、测周期部分采用中小规模数字集成电路,用机械式功能转换开关换挡,完成测频率,测周期,测脉冲的功能,能可靠地完成频率计的基本功能。
但它的硬件系统由于采用中小规模数字集成电路,所以电路非常复杂,难以实现。
作为毕业设计,本设计本着系统硬件结构简单,稳定性、可靠性高,易于实现为原则。
我采用方案一,而且它可以在软件编程中减小测量误差,所以采用单片机内部计数器法测量频率。
3硬件设计与实现
3.1系统硬件模块
3.1.1总体硬件系统
硬件系统总体分为:
主控芯片,时钟电路,上电复位电路,显示电路等部分。
系统总体方框如图4所示。
图4系统总体方框图
3.1.2电源电路
电源是单片机工作的动力源泉,下图图7电路的设计是为了给系统提供稳定的+5V电压,提高系统工作性能。
其对应的接线方法为:
40脚(VCC)电源引脚,工作时接+5V电源,20脚(GND)为接地线。
直流电源电路如图5所示。
图5直流电源电路
3.1.3上电复位电路
复位是单片机的初始化操作。
单片机系统在上电启动运行时,都需要先复位。
其作用是使CPU和系统中其他部件都处于一个确定的初始状态,并从这个状态开始工作。
而复位是一个很重要的操作方式,但单片机本身是不能自动经行复位的,必须配合相应的外部复位电路才能实现。
本设计的复位电路采用上电复位加按键手动复位
其电路如下图所示
图6上电复位电路图
当复位按键按下以后,复位端直接与电源VCC接通,10nF电容C3迅速放电,使RST引脚为高电平;当复位键弹起后,电源VCC通过10kΩ电阻R1对10nF电容C3重新充电,RST引脚出现复位正脉冲。
其持续时间取决于RC电路的时间常数。
3.1.4时钟电路
单片机工作是在统一的时钟脉冲控制下一拍一拍地进行的,这个脉冲是单片机控制器中的时序电路发出的。
单片机的时序就是CPU在执行指令时所需控制信号的时间顺序。
为了保证各部件的同步工作,单内部电路应在唯一的时钟信号下严格按时序进行工作。
MCS-51系列单片机内部有一个高增益反相放大器,用于构成振荡器,但要形成时钟脉冲,外部还需附加电路。
MCS-51的时钟产生方法有“内部时钟方式”与“外部时钟方式”两种。
在本设计中采用了内部时钟方式。
其电路图如下图所示:
图7时钟电路
如图所示,利用芯片内部的振荡器,然后在引脚XTALl和XTAL2两端跨接晶体振荡器Y1(简称晶振),就构成了稳定的自激振荡器,发出的脉冲直接送入内部时钟电路。
外接晶振Y1时,C1和C2的值通常选择为30pF左右;Cl与C2对频率有微调作用,晶振或陶瓷谐振器的频率范围可在1.2~12MHz之间选择。
为了减少寄生电容,更好地保证振荡器稳定可靠的工作,振荡器和电路应尽可能安装得与单片机引脚XTALl和XTAL2靠近。
3.1.5数码管显示电路
显示器是微机重要的输出设备。
显示器有显示监控结果、提供用户操作界面等功能。
在本次设计中采用了LED显示器,即数码管。
数码管的每一个数码段是一只发光二极管。
当发光二极管导通时,相应的一个点或者一个笔画发光,控制发光二极管发光组合,可以显示出所需字符。
我采用了共阴极结构。
在定义其显示字形的码段时,通过I/O口送出七段码
其段码表如下:
表1共阴数码管段选码
显示字形0123456789
共阴段选码3FH06H5BH4FH66H6DH7DH07H7FH6FH
本设计采用了数码管的动态显示方式,即轮流点亮各数码管,对数码管进行扫描。
在任何时刻只给一个数码管通电,通电一定时间后再给下一个数码管通电。
只要刷新频率足够高,动态显示方式同样可以实现稳定显示。
这样就可以节约I/O口。
数码管接线图如下:
图8数码管接线图
3.1.6输入信号的要求
定时/计数器的作用是用来精确地确定某一段时间间隔(作为定时器用)或累计外部输入的脉冲个数(作为计数器用)。
当用作定时器时,在其输入端输入周期固定的脉冲,根据定时/计数器中累计的脉冲个数,即可计算出所定时间的长度。
当MCS-5l内部的定时/计数器被选定为定时器工作模式时,计数输入信号是内部时钟脉冲,每个机器周期产生一个脉冲位,计数器增l,因此定时/计数器的输入脉冲的周期与机器周期一样,为时钟振荡频率的l/12。
当采用12MHz频率的晶振时,计数速率为1MHz,输入脉冲的周期间隔为1μs。
由于定时的精度决定于输入脉冲的周期,因此当需要高分辨率的定时时,应尽量选用频率较高的晶振。
当定时/计数器用作计数器时,计数脉冲来自外部输入引脚T0或T1。
当输入信号产生由1至0的跳变(即负跳变)时,计数器的值增l。
由于确认一次负跳变需要用2个机器周期,即24个振荡周期,因此外部输入的计数脉冲的最高频率为振荡器频率的1/24,例如,选用6MHz频率的晶振,允许输入的脉冲频率为250kHz,如果选用12MHz频率的晶振,则可输入500kHz的外部脉冲。
对于外部输入信号的占空比并没有什么限制,但为了确保某一给定的电平在变化之前能被采样一次,则这一电平至少要保持一个机器周期。
3.2基本设计原理
本设计使用基于ATMEL公司AT89S51单片机的频率计数器,是利用该单片机内部的定时/计数器来完成待测信号频率的测量。
它具有体积小,功能强,性能价格比较高等特点,因此被广泛应用于工业控制和智能化仪器,仪表等设备中。
AT89S52单片机内部具有2个16位的定时/计数器T0与T1,其工作方法可以通过编程来实现所需的定时/计数与产生计数溢出中断要求的功能。
定时/计数器T0与T1的核心都是16位的加1计数器,TH0与TL0构成在构成定时/计数器T0加1计数器的高8位和低8位;TH1与TL1构成在构成定时/计数器T1加1计数器的高8位和低8位。
加1计数器的初值可以通过程序设定,这样就可以获得不同的计数值或定时时间。
当加1计数器用作定时器时,每个机器周期加1(使用12MHz时钟时,每1us加1),这样以机器周期为基准可以用来测量时间间隔。
当加1计数器用作计数器时,在相应的外部引脚发生从1到0的跳变时计数器加1,这样在计数闸门的控制下可以用来测量待测信号的频率。
外部输入每个机器周期被采样一次,这样检测一次从1到0的跳变至少需要2个机器周期(24个振荡周期),所以最大计数速率为时钟频率的1/24。
AT89S51单片机的时钟频率可以在0Hz—33MHz范围内自动调节,当使用12MHz时钟时,最大计数速率为500KHz。
定时/计数器的工作由相应的运行控制位TR控制,当TR置1时,定时/计数器开始计数;当TR置0时,停止计数。
在本设计方案中,我通过程序设定T0工作在计数状态下,T1工作在计时状态下。
T0计数器对输入的信号经行计数,其最大计数值为fOSC/24,当fOSC=12MHz时,T0的最大计数频率为250kHz。
由于信号的频率就是每秒钟信号脉冲的个数,于是我让T1工作在定时状态下,定时时间为1秒。
每定时1秒钟到,就停止T0的计数,然后从T0的计数单元中读取计数的数值,即完成了信号频率的测量。
最后通过六位数码管显示出频率值。
将被测信号不加任何处理,直接输入单片机的T0口。
而将被测信号经行放大整形、倍频锁相等处理就不再进行了。
这样做会使该频率计在测量信号频率时产生精度误差,但能够满足设计要求。
3.3AT89S51单片机简介
AT89S51是一个低功耗,高性能CMOS8位单片机,片内含4kBytesISP(In-systemprogrammable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80S51引脚结构,芯片内集成了通用8位中央处理器和ISPFlash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。
AT89S51单片机内部结构如图9所示:
图9AT89S51单片机内部结构
AT89S51拥有40个引脚,4kBytesFlash片内程序存储器,128bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。
此外,AT89S51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。
空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。
同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。
管脚分布如图10所示:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 高精度 频率计 设计