毕业论文数字频率计系统设计07477

上传人:沈*** 文档编号:78219027 上传时间:2022-04-21 格式:DOC 页数:46 大小:708.53KB
返回 下载 相关 举报
毕业论文数字频率计系统设计07477_第1页
第1页 / 共46页
毕业论文数字频率计系统设计07477_第2页
第2页 / 共46页
毕业论文数字频率计系统设计07477_第3页
第3页 / 共46页
点击查看更多>>
资源描述
保密类别 编号 xx学院毕 业 论 文数字频率计系统设计系 别 电子信息科学系专 业 电子信息工程年 级 级电信一班学 号 姓 名 指导教师 年 月 日摘 要在电子测量领域中,频率测量的精确度是最高的,可达数量级。因此,在生产过程中许多物理量,例如温度、压力、流量、液位、PH值、振动、位移、速度、加速度,乃至各种气体的百分比成分等均用传感器转换成信号频率,然后用数字频率计来测量,以提高精确度。 国际上数字频率计的分类很多。按功能分类,测量某种单一功能的计数器。如频率计数器,只能专门用来测量高频和微波频率;时间计数器,是以测量时间为基础的计数器,其测时分辨力和准确度很高,可达ns数量级;特种计数器,它具有特种功能,如可逆计数器、预置计数器、差值计数器、倒数计数器等,用于工业和自动控技术等方面。数字频率计按频段分类有低速计数器:最高计数频率10MHz;中速计数器:最高计数频率10100MHz;高速计数器:最高计数频率100MHz;微波频率计数器:测频范围180GHz或更高。 本方案主要以信号输入和放大电路、单片机模块、分频模块及显示电路模块组成。AT89C52单片机是频率计的控制核心,来完成它待测信号的计数,译码,显示以及对分频比的控制。利用它内部的定时/计数器完成待测信号频率的测量。在整个设计过程中,所制作的频率计采用外部分频,实现1Hz1MHz的频率测量,而且可以实现量程自动切换流程。以AT89C52单片机为核心,通过单片机内部定时/计数器的门控时间,方便对频率计的测量。其待测频率值使用四位共阴极数码管显示,并可以自动切换量程,单位分别由3个发光二极管指示。本次采用单片机技术设计一种数字显示的频率计,具有测量准确度高,响应速度快,体积小等优点。关键词:频率计 单片机 计数器 量程自动切换 ABSTRACTIn the field of electronic measuring, frequency measurement is the most accurate, The accuracy is up to orders of magnitude. Therefore, many physical measure in the production line, such as the temperature, pressure and discharge, liquid and PH value, vibration and move, speed, acceleration, even as various gaseous percentage composition etc. all use Sensor to convert into signal frequency, then measure with the digital frequency meter raise the accuracy.There is a lot of kinds of digital frequency meter international.Distinguish theclassification of function, measuring a certain single function counter.As the digital frequency meter, could be used to measure high frequency and microwave frequency only;Time counter,which is based on measuring time,the time measuring resolution and accurate degree while measuring are very accurate, can reach the ns amount class;The special counter, it has a special kind function, such as reversible counter, preset counter, difference counter,countdown counter etc., which are used for industry and automatic control technology,etc.There is a low speed counter distinguishing the digital frequency meter in band:the highest count frequency100 Mhzs;The microwave frequency counter:Measure frequency range 1-80 Ghzs or higher.This project is mainly formed by signal importation and enlarge an electric circuit and microcontroller module, frequency division module, the display circuit module. AT89C52 MCU is the controlling core of the frequency meter, it completes the count of the signal under testing, decoding, display and controllig of the frequency division ratio. Using its internal timer and counter to complete measuring the signal under testing.In the design process,the produced frequency meter uses external dividing frequency, to achieve 1Hz 1MHz frequency measurements, and could achieve the process that switch the flow automatically. Regard AT89C52 microcontroller as the core, with the MCU internal timing / counter gated time, it can be easy for measuring frequency meter. The frequency to be measured displays with four common cathode, and it can automatically switch range,the unit consists of 3 light-emitting diode indicates. The design uses of microcontroller technology to design a digital frequency meter, it has high accuracy, fast response speed, the advantages of small size.KEY WORD: Frequency Meter Single Chip Counter Range Automatically SwitchIII目 录第一章 前言11.1频率计概述11.2频率计发展与应用11.3频率计设计内容与要求3第二章 系统总体方案设计42.1测频的原理42.2频率测量的误差分析52.3 设计任务的分析及方案的论证62.4等精度测量技术的理论分析72.5总体思路82.6具体模块8第三章 硬件电路具体设计103.1 AT89C52主控制器模块103.1.1 单片机开发板原理图103.2放大整形模块123.3分频设计模块133.3.1 分频电路分析133.3.2 74LS161芯片介绍143.3.3 74LS151芯片介绍163.3.4 分频电路173.4 显示模块183.4.1 数码管介绍18第四章 系统的软件设计194.1 软件模块设计194.2 中断服务子程序204.3 显示子程序214.4 量程档自动转换子程序224.5 应用软件简介224.5.1 KEIL简介234.5.2 PROTUES简介24第五章 频率计的系统调试255.1 硬件调试255.1.1整形模块调试255.1.2 分频模块调试265.2 功能调试275.3系统调试275.3.1 系统软硬件调试275.4 误差分析28总结29参考文献 30致 谢31附件:频率计源程序32第一章 前言频率测量是电子学测量中最为基本的测量之一。由于频率信号抗干扰性强,易于传输,因此可以获得较高的测量精度。随着数字电子技术的发展,频率测量成为一项越来越普遍的工作,测频原理和测频方法的研究正受到越来越多的关注。1.1频率计概述数字频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。它是一种用十进制数字显示被测信号频率的数字测量仪器。它的基本功能是测量正弦信号、方波信号及其他各种单位时间内变化的物理量。在进行模拟、数字电路的设计、安装、调试过程中,由于其使用十进制数显示,测量迅速,精确度高,显示直观,经常要用到频率计。传统的频率计采用测频法测量频率,通常由组合电路和时序电路等大量的硬件电路组成,产品不但体积大,运行速度慢而且测量低频信号不准确。在数字电路中,数字频率计属于时序电路,它主要由具有记忆功能的触发器构成,计算机及各种数字仪表中,都得到了广泛的应用。在电子技术中,频率是最基本的参数之一,并且与许多电参量的测量方案、测量结果都有十分密切的关系,因此频率的测量就显得尤为重要。测量频率的方法有多种,其中电子计数器测量频率具有使用方便、测量迅速,以及便于实现测量过程自动等优点,是频率测量的重要手段之一。本次采用单片机技术设计一种数字显示的频率计,测量准确度高,响应速度快,体积小等优点。1.2频率计发展与应用 随着科学技术的发展,用户对电子计数器也提出了新的要求。对于抵挡产品要求使用操作方便,量程(足够)宽,可靠性能搞,低价格。而对于中高档产品,则要求有高分辨率,高精度,搞稳定度,高测量速率;除通常通用计数器所具有的功能外,还要有数据处理功能,时域分析功能等等,或者包含电压测量等其他功能。这些要求有的已经实现或者部分实现,但要真正完美的实现这些目标,对于生产厂家来说,还有许多工作要做,而不是表面看来似乎发展到头了。 由于微电子技术和计算机技术的发展,频率计都在不断地进步着,灵敏度不断提高,频率范围不断扩大,功能不断地增加。在测试通讯、微波器件或产品时,通常都是较复杂的信号,如含有复杂频率成分、调制的或含有未知频率分量的、频率固定的或变化的、纯净的或叠加有干扰的等等。为了能正确地测量不同类型的信号,必须了解待测信号特性和各种频率测量仪器的性能。微波计数器一般使用类型频谱分析仪的分频或混频电路,另外还包含多个时间基准、合成器、中频放大器等。虽然所有的微波计数器都是用来完成技术任务的,但制造厂家都有各自的一套复杂的计数器的设计、使得不同型号的计数器性能和价格会有所差别,比如说一些计数器可以测量脉冲参数,并提供类似于频率分析仪的频幕显示,对这些功能具有不同功能不同规格的众多仪器。我们应该视测试需要正确的选择,以达到最经济和最佳的应用效果。 数字电路制造工业的进步,使得系统设计人员能在更小的空间实现更多的功能,从而提高系统可靠性和速度。现如今,数字频率计已经不仅仅是测量信号频率的装置了,用它还可以测量方波脉冲的脉宽。在人们的生活中频率计也发挥着越来越重要的作用,比如用数字频率计来监控生产过程,这样可以及时发现系统运行中的异常情况,以便给人们争取时间处理。 除此之外,它还可以应用于工业控制等其它领域。在传统的电子测量仪器中,示波器在进行频率测量是频率较低,误差较大。频率仪可以准确的测量频率并显示被测信号的频谱,但测量速度较慢,无法实时的跟踪捕捉到被测信号的频率变化。正是由于频率计能够快速准确的捕捉到被测信号频率的变化,因此频率计拥有非常广泛的引用范围。在传统生产制造企业中,频率计被广泛应用在产线的生产测试中。频率计能够快速的捕捉到晶体振荡器输出的频率变化,用于通过使用频率计能够迅速的发现有故障的晶振产品,确保产品质量。在计量实验室中,频率计被用来对各种电子测量设备的本地振荡器进行校准。在无线通讯测试中,频率计既可以被用来对无线通讯基站的主时钟进行校准,还可以用来对电台的跳帧信号进行分析。 对于频率计的设计目前也有专用芯片可以实现,如利用MAXIM公司的ICM7240来设计频率计。但由于这种芯片的计数频率比较低,远不能达到在一些场合需要测量很搞的频率要求,而测量精度也受到芯片本身的限制。提出的用AT8C52单片机设计频率计的方法可以解决这些问题,实现精度较高、等精度和宽范围频率计的设计。1.3频率计设计内容与要求一、任务目的在于设计出一个高频宽(1Hz1MHz),低误差(误差精度为)的时间参数测量系统二、要求(1)频率测量a)测量范围信号:方波、正弦波幅度:0.55 V频率:1Hz1MHzb)测试误差0.1%(2)周期测量 a)测量范围信号:方波、正弦波幅度:0.55 V频率:1Hz1MHzb)测试误差0.1%(3)周期脉冲信号占空比测量a)测量范围频率:1Hz15kHz幅度:0.55V占空比变化范围:10%90%b)测试误差1(4)小信号放大和整形电路其中,频率测量、周期测量应实现电路实模型及相应软件的设计和调试,对于周期脉冲信号占空比测量应完成仿真电路设计。第二章 系统总体方案设计2.1测频的原理 实现时间参数的数字化测量的仪器是电子计数器。对于电子计数器而言,测量频率的实质就是通过计数器记录待测信号的周期变化的次数,然后通过频率的定义计算出待测信号的频率。已知频率的测量表达式为: 从其测量原理和频率的数学表达式中不难看出,计数器测频必须具备以下三个条件:(1)测量是一个比较的过程,被测信号要和基准信号作比较,必须有一个标准的单位时间。(2)为实现在单位时间内对于被控信号的振动次数的记录,必须有一个控制电路。(3)被测信号采样后的量化由电子计数器完成,以获得量化值N。对应于电子计数器测量频率的原理图如2.1所示:图2.1 电子测频的原理框图可知电子计数法测频主要由3个部分组成:(1)时间基准T产生电路。 时间基准产生电路的作用是用来产生计数器所使用的标准频率。(2)计数脉冲形成电路 计数脉冲形成电路的作用是将被测的周期信号转换成可计数的窄脉冲。(3)计数显示电路 计数显示电路的作用是对主门输出的脉冲进行计数,其结果显示在数码管上。2.2频率测量的误差分析对于电子计数器而言,直接测频的误差主要由两项组成,即1量化误差和标准频率误差。一般地,总误差可采用分项误差绝对值合成,即: 式中,等号右边括号内第一项为1量化误差,第二项为标准频率误差。(1)量化误差用电子计数器测量频率,实际上就是一个量化的过程,量化的最小单位是数码的一个字或者一个脉冲。在测频时候,由于主门开启时刻与计数脉冲之间的时间关系是不相关的,它们在时间轴上的相对位置是随机的,门控信号很难精确的是被测信号的整数倍所以量化会带来误差,可知对于计数误差最大为1个数,所以计数器计数的最大的相对误差为: 式中,是被测频率;T是闸门时间。该表达式表明被测频率越高,闸门时间越宽,相对误差就越小。(2)标准频率误差 标准频率误差又称为闸门时间误差,它是由晶振信号本身通过分频输出的信号频率不稳定性导致的闸门时间的不稳定,而造成测频误差。由误差合成原理可知: 式中,晶振频率为 。该表达式表明闸门相对误差在数值上等于晶振频率的相对误差。所以,在设计中要求晶振达到的精度要比系统所要达到的精度高一个数量级。2.3 设计任务的分析及方案的论证本设计是一个基于单片机平台的时间参数(频率)测量系统。由于本次系统设计的测频范围很宽(1Hz1MHz)、精度高(测量误差),因此精确的控制闸门的开启和关闭,追求计数器较高的频率和较大的计数容量,保持系统在整个测量频段内的测量精度不变及实现频标信号的高稳定度和高精确度成为了评价系统设计优劣的关键。(1)直接测频法(闸门时间计数法)直接测频法就是在确定的闸门时间内,通过计数器记录待测信号的周期变化次数,并根据频率的定义来计算待测信号的频率。由于测量的起始时刻和结束时刻相对于信号而言是随机的,将会有一个脉冲周期的量化误差,也就是对于不同的闸门时间会产生同样的计数值N。如图2.2中闸门1和闸门2时间长度不一样,但是计数值相同。图2.2 直接测频法示意图当测量时间为T时,测量的准确度=T/,其中为待测信号,可知对于测量频高时,测量准确度越高。但是低频达不到所要达到的要求。(2)间接测周法间接测周法就是在一个信号周期内记录下基准脉冲的个数。原理恰好与直接测频法相对应,当测量的信号周期越长,即其频率越低,测量的精度就越高,但对于高频信号就不能适用。(3)分段法分段法就是采用直接测频和间接测周相结合的方法,在高频段采用直接测频,在低频段采用间接测周,但是中间频率难以确定,要实现全频段的等精度测量,且达到设计的要求,系统的设计复杂度很高。(4)相关计数测频法相关计数测频法采用多周期同步测量原理,测量输入信号的整数个周期值而求得频率的一种测量方法。由于被测信号与门控信号之间采用同步锁定的方式,使得主门的开启时刻计数脉冲之间的时间关系是相关的,这样便可以实现在测频范围内频率的等精度测量。其实,等精度测量并非严格意义上的等精度,闸门信号在测量中的开启和关闭受控于被测信号的上升沿或下降沿。其测量的精度就有赖于频标信号的稳定度和精度。若系统要求测量精度为,那么基准源的开机稳定度和温度稳定度应该较高,其综合性能应优于。综上所述,对于测频方案的选择,直接测频法和间接测周法的原理很简单,电路实现容易,但是它们都不能满足全频段范围内的信号的测量,分段法在理论上可以保证等精度测量,其中界频率的确定也比较容易,但是随着系统测量精度的提高,测试盲区可能会出现。而相关计数测频法虽同时对于未知待测信号和基准信号两路信号进行计数,且对于闸门控制和频标信号的稳定度有很高的要求,却可以满足在整个测量频段的等精度测量。2.4等精度测量技术的理论分析相关计数法测频原理如下图2.3所示,同步闸门是由预置开门脉冲经同步后得到的,因而闸门时间可以准确地等于的整周期倍数,所以没有量化误差,但由于同步闸门与并不同步,因而存在1的量化误差,可得到下式: 式中,为的频率准确度。由于所用的晶体振荡器有较高的稳定度,误差很小,可以忽略,因而最大的相对误差取决于,所以当=1MHz,则在=1s的同步闸门时间内,可达量级,能够满足设计指标。图2.3 相关计数法测频原理框图2.5总体思路频率计是我们经常会用到的实验仪器之一,频率的测量实际上就是在单位时间内对信号进行计数,计数值就是信号频率。本文介绍了一种基于单片机AT89C52 制作的频率计的设计方法,所制作的频率计测量比较高的频率采用外部十分频,测量较低频率值时采用单片机直接计数,不进行外部分频。该频率计实现1HZ1MHZ的频率测量,八位共阴极动态显示测量结果,可以测量正弦波、三角波及方波的频率值、周期值以及脉冲宽度。2.6具体模块根据上述系统分析,频率计系统设计具体模块有:单片机控制模块、放大整形模块、分频模块、独立按键模块及显示模块。各模块作用如下:1、 单片机控制模块:以AT89C52单片机为控制核心,来完成它待测信号的计数,译码,和显示以及对分频比的控制。利用其内部的定时计数器完成待测信号周期频率的测量。单片机AT89C52内部具有2个16位定时计数器,定时计数器的工作可以由编程来实现定时、计数和产生计数溢出时中断要求的功能。2、放大整形模块:放大电路是对待测信号的放大,降低对待测信号幅度的要求。整形电路是对一些不是方波的待测信号转化成方波信号,便于测量。3、分频模块:考虑单片机外部计数,使用12 MHz时钟时,最大计数速率为500 kHz,因此需要外部分频。分频电路用于扩展单片机频率测量范围,并实现单片机频率测量使用统一信号,可使单片机测频更易于实现,而且也降低了系统的测频误差。可用74LS161和74LS00进行外部十分频。4、显示模块:显示电路采用八位共阴极数码管动态显示。综合以上频率计系统设计有单片机控制模块、放大整形模块、分频模块及显示模块等组成,频率计的总体设计框图如图2.4所示。 图2.4 频率计总体设计框图第三章 硬件电路具体设计根据系统设计的要求,频率计实际需要设计的硬件系统主要包括以下几个部分:AT89C52单片机开发板、放大整形模块、分频模块,下面将分别给予介绍。3.1 AT89C52主控制器模块3.1.1 单片机开发板原理图单片机开发板原理如3.1图AT89C52引脚图,3.2图独立按键电路图,3.3八位数码管显示电路图所示。图3.2 独立按键电路图图3.1 AT89C52引脚图 图3.3 8位数码管显示电路图3.1.2 引脚功能及单片机端口分配 引脚功能及单片机端口分配如下表3.1:引脚功能表,表3.2 :P3口的第二种功能说明表,表3.3:单片机端口分配表所示。表3.1 引脚功能表模 块端口功能显示模块P1口数码管频率值显示分频模块 P3口切换频率、周期、脉宽P3口:P3口是一个具有内部上拉电阻的8位双向I/O口,P1出缓冲器能驱动4个TTL逻辑电平。对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流。P3口亦作为AT89C52特殊功能(第二功能)使用,P3口功能如表3.2所示。在flash编程和校验时,P3口也接收一些控制信号。表3.2 P3口的第二种功能说明表引脚号第二功能P3.0RXD(串行输入)P3.1TXD (串行输出)P3.2(外部中断0)P3.3(外部中断1)P3.4T0(定时器0外部输入)P3.5T1(定时器1外部输入)P3.6(外部数据存储器写选通)P3.7(外部数据存储器写选通)根据系统设计及各模块的分析得出,单片机的引脚分配如表3.3所示。表3.3 单片机端口分配表模 块端口功能显示模块P1.1清零分频模块P3.5分频3.2放大整形模块由于输入的信号可以是正弦波、三角波以及方波。而后面的闸门或计数电路要求被测信号为矩形波,所以需要设计一个整形电路则在测量的时候,首先通过整形电路将正弦波或者三角波转化成矩形波。在整形之前由于不清楚被测信号的强弱的情况。所以在通过整形之前通过放大衰减处理。当输入信号电压幅度较大时,通过输入衰减电路将电压幅度降低。当输入信号电压幅度较小时,前级输入衰减为零时若不能驱动后面的整形电路,则调节输入放大的增益,时被测信号得以放大。根据上述分析,放大电路放大整形电路采用高频晶体管3DG100与74LS00等组成。其中3DG100为NPN型高频小功率三极管,组成放大器将输入频率为fx的周期信号如正弦波、三角波及方波等波形进行放大。与非门74LS00构成施密特触发器,它对放大器的输出波形信号进行整形,使之成为矩 形脉冲。具体放大整形电路如图3.4所示。 图3.4 放大整形电路3.3分频设计模块分频电路用于扩展单片机频率测量范围,并实现单片机频率和周期测量使用统一信号,可使单片机测频更易于实现,而且也降低了系统的测频误差。可用74LS161进行分频。3.3.1 分频电路分析本频率计的设计以AT89C52单片机为核心,利用内部的定时计数器完成待测信号周期频率的测量。单片机AT89C52内部具有2个16位定时计数器,定时计数器的工作可以由编程来实现定时、计数和产生计数溢出时中断要求的功能。在定时器工作方式下,在被测时间间隔内,每来一个机器周期,计数器自动加1(使用12 MHz时钟时,每1s加1),这样以机器周期为基准可以用来测量时间间隔。在计数器工作方式下,加至外部引脚的待测信号发生从1到0的跳变时计数器加1,这样在计数闸门的控制下可以用来测量待测信号的频率。外部输入在每个机器周期被采样一次,这样检测一次从1到0的跳变至少需要2个机器周期(24个振荡周期),所以最大计数速率为时钟频率的124(使用12 MHz时钟时,最大计数速率为500 kHz),因此采用74LS161进行外部十分频使测频范围达到1MHz。为了测量提高精度,当被测信号频率值较低时,直接使用单片机计数器计数测得频率值;当被测信号频率值较高时采用外部十分频后再计数测得频率值。这两种情况使用74LS151进行通道选择,由单片机先简单测得被测信号是高频信号还是低频信号,然后根据信号频率值的高低进行通道的相应导通,继而测得相应频率值。3.3.2 74LS161芯片介绍74LS161是常用的四位二进制可预置的同步加法计数器,可以灵活的运用在各种数字电路,以及单片机系统种实现分频器等很多重要的功能。74LS161引脚如图3.5所示。图3.5 74LS161引脚图时钟CP和四个数据输入端P0P3,清零/MR,使能CEP,CET,置数PE,数据输出端Q0Q3,以及进位输出TC (TC=Q0Q1Q2Q3CET)。表3.4为74LS161的功能表。表3.4 74LS161的功能表清零RD预置LD使能EP ET时钟CP预置数据输入A B C D输出Q0 Q1 Q2 Q3L L L L LHL 上升沿A B C DA B C DHHL 保 持HH L 保 持HHH H上升沿 计 数其中RD是异步清零端,LD是预置数控制端,A、B、C、D是预置数据输入端,EP和ET是计数使能端,RCO(=ET.QA.QB.QC.QD)是进位输出端,它的设置为多片集成计数器的级联提供了方便。计数过程中,首先加入一清零信号RD0,使各触发器的状态为0,即计数器清零。RD变为1后,加入一置数信号LD0,即信号需要维持到下一个时钟脉冲的正跳变到来后。在这个置数信号和时钟脉冲上升的共同作用下,各触发器的输出状态与预置的输入数据相同,这就是预置操作。接着EP=ET=1,在此期间74LS161一直处于计数状态。一直到EP=0,ET1,计数器计数状态结束。从74LS161功能表功能表中可以知道,当清零端CR=“0”,计数器输出Q3、Q2、Q1、Q0立即为全“0”,这个时候为异步复位功能。当CR=“1”且LD=“0”时,在CP信号上升沿作用后,74LS161输出端Q3、Q2、Q1、Q0的状态分别与并行数据输入端D3,D2,D1,D0的状态一样,为同步置数功能。而只有当CR=LD=EP=ET=“1”、CP脉冲上升沿作用后,计数器加1。74LS161还有一个进位输出端CO,其逻辑关系是CO= Q0Q1Q2Q3CET。合理应用计数器的清零功能和置数功能,一片74LS161可以组成16进制以下的任意进制分频器。3.3.3 74LS151芯片介绍数据选择端(ABC)按二进制译码,以从8个数据(D0-D7)中选取1个所需的数据。只有在选通端STROBE为低电平时才可选择数据。74LS151有互补输出端(Y、W),Y输出原码,W输出反码。74LS151引脚如图3.6所示。图3.6 74LS151管脚图74LS151的功能如下表3.5所示。其中A、B、C为选择输入端,D0-D7为数据输入端,STROBE为选通输入端(低电平有效),W为反码数据输出端,Y为数据输出端。表3.5 74LS151功能表3.3.4 分频电路根据以上分析,采用74LS161和74LS151设计分频电路如图3.7所示。74LS0074LS15174LS161图3.7 分频电路原理图3.4 显示模块频率值显示电路采用八位共阴极数码管动态显示频率计被测数值。频率、周期、脉宽由独立按键控制转换。3.4.1 数码管介绍常见的数码管由七个条状和一个点状发光二极管管芯制成,叫七段数码管,根据其结构的不同,可分为共阳极数码管和共阴极数码管两种。根据管脚资料,可以判断使用的是何种接口类型.两种数码管内部原理如图3.8。图3.8 两种数码管内部原理图第四章 系统的软件设计系统软件设计主要采用模块化设计,叙述了各个模块的程序流程图,并介绍了软件Keil和Proteus的使用方法和调试仿真。4.1 软件模块设计系统软件设计采用模块化设计方法。整个系统由初始化模块,信号频率测量模块和显示模块等模块组成。系统软件流程如图4.1所示。频率计开始工作或者完成一次频率测量,系统软件都进行测量初始化。测量初始化模块设置堆栈指针(SP)、工作寄存器、中断控制和定时计数器的工作方式。定时计数器的工作首先被设置为计数器方式,即用来测量信号频率。图4.1 系统软件流程总图首先定时计数器的计数寄存器清0,运行控制位TR置1,启动对待测信号的计数。计数闸门由软件延时程序实现,从计数闸门的最小值(即测量频率的高量程)开始测量,计数闸门结束时TR清0,停止计数。计数寄存器中的数值经过数制转换程序从十六进制数转换为十进制数。判断该数的最高位,若该位不为0,满足测量数据有效位数的要求,测量值和量程信息一起送到显示模块;若该位为0,将计数闸门的宽度扩大10倍,重新对待测信号的计数,直到满足测量数据有效位数的要求。定时计数器的工作被设置为定时器方式,定时计数器的计数寄存器清0,在判断待测信号的上跳沿到来后,运行控制位TR置为1,以单片机工作周期为单位进行计数,直至信号的下跳沿到来,运行控制位TR清0,停止计数。16位定时计数器的最高计数值为65535,当待测信号的频率较低时,定时计数器可以对被测信号直接计数,当被测信号的频率较高时,先由硬件十分频后再有定时计数器对被测信号计数,加大测量的精度和范围。4.2 中断服务子程序T0中断服务子程序流程如图4.2所示。测频时,定时器T0 工作在定时方式,每次定时50mS ,则T0 中断20 次正好为1秒,即T0用来产生标准秒信号,定时器T0 用作计数器,对待测信号计数,每秒钟的开始启动T0 ,每秒钟的结束关闭T0 ,则定时器T0 之值乘以分频系数就为待测信号的频率。图4.2 T0中断服务子程序定时计数器T1工作在计数方式, 对信号进行计数,计数器1中断流程图如图4.3所示。图4.3 计数器1中断服务子程序4.3 显示子程序显示子程序将存放在显示缓冲区的频率或周期值送往数码管上显示出来,由于所有4 位数码管的8 根段选线并联在一起由单片机的P2口 控制,因此,在每一瞬间4位数码管会显示相同的字符,要想每位显示不同的字符就必须采用扫描方法轮流点亮各位数码管,即在每一瞬间只点亮某一位显示字符,在此瞬间,段选控制口P2输出相应字符。由P0.0-P0.3逐位轮流点亮各个数码管, 每位保持1mS ,在10mS20mS 之内再点亮一次,重复不止,利用人的视角暂留,好像4 位数码管同时点亮。数码管显示子程序流程如图4.4所示。图4.4 显示子程序流程图4.4 量程档自动转换子程序使用定时方法实现频率测量时,外部的待测信号通过频率计的预处理电路变成宽度等于待测信号周期的方波,该方波同样加至定时计数器的输入脚(P3.5)。工作高电平是否加至定时计数器的输入脚;当判定高电平加至定时计数器的输入脚,运行控制位TR置1,启动定时计数器对单片机的机器周期的计数,同时检测方波高电平是否结束;当判定高电平结束时TR清0,停止计数,然后从计数寄存器读出测量数据。由显示电路显示测量结果,根据测量结果判断,进行频率计比较后,进行档位的自动切换,具体档位自动切换流程图如图4.5所示。图4.5 量程档自动转换子程序4.5 应用软件简介此设计需要在Keil软件平台上完成程序的调试,在Proteus软件平台上完成仿真显示。因此介绍如何使用Keil和Proteus进行软件的仿真。4.5.1 Keil简介Keil软件是目前最流行开发系列单片机的软件,Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部份组合在一起。而Proteus与其它单片机仿真软件不同的是,它不仅能仿真单片机CPU的工作情况,也能仿真单片机外围电路或没有单片机参与的其它电路的工作情况。因此在仿真和程序调试时,关心的不再是某些语句执行时单片机寄存器和存储器内容的改变,而是从工程的角度直接看程序运行和电路工作的过程和结果。对于这样的仿真实验,从某种意义上讲,是弥补了实验和工程应用间脱节的矛盾和现象。(1)建立工程文件点击“Project-New project”菜单,出现一个对话框,要求给将要建立的工程起一个名字,你可以在编缉框中输入一个名字,点击“保存”按钮,出现第二个对话框,按要求选择目标器件片。建立新文件并增加到组。分别设置“target1”中的“Target,output,debug”各项,使程序汇编后产生HEX文件。(2)汇编,调试系统程序Keil 单片机模拟调试软件内集成了一个文本编辑器,用该文本编辑器可以编辑源程序。在集成开发环境中选择菜单“File New.”、单击对应的工具按钮或者快捷键Ctrl +N 将打开一个新的文本编辑窗口,完成汇编语言源文件的输入,并且完成源程序向当前工程的添加。然后在集成开发环境中选择菜单“FileSave As.”可以完成文件的第一次存储。注意,汇编语言源文件的扩展名应该是“ASM”,它应该与工程文件存储在同一文件夹之内。在完成文件的第一次存储以后,当对汇编语言源文件又进行了修改,再次存储文件则应该选择菜单“FileSave”、单击对应的工具按钮或者快捷键Ctrl +S 实现文件的保存。接着的工作需要把汇编语言源文件加入工程之中。选择工程管理器窗口的子目“Source Group 1”,再单击鼠标右键打开快捷菜单。在快捷菜单中选择“Add File to Group Source Group 1”,加入文件对话框被打开。在这个对话框的“查找范围(I)”下拉列表框中选择存储汇编语言源文件的文件夹,在“文件类型(T)” 下拉列表框选择“Asm Source file(*.a*;*.src)”,这时存储的汇编语言源文件将显示出来。双击要加入的文件名或者选择要加入的文件名再单击“Add”按钮即可完成把汇编语言源文件加入工程。文件加入以后,加入文件对话框并不消失,更多的文件也可以利用它加入工程。如果不需要加入其它文件,单击“Close”按钮可以关闭加入文件对话框。这时工程管理窗口的文件选项卡中子目录“Source Group 1”下出现一个汇编语言源文件。 需要注意,当把汇编语言源文件加入工程但还没有关闭加入文件对话框,这时有可能被误认为文件没有成功地加入工程而再次进行加入操作,系统将显示所需的文件已经加入的提示。在这种情况下,单击提示框中的“确定”按钮,再单击“Close”按钮可以关闭加入文件对话框。(3)编译源程序,出现错误时,返回上一级对错误更改后重新编译,直到没有错误为止。4.5.2 protues简介 protues是Labcenter公司出品的电路分析、实物仿真系统,而KEIL是目前世界上最好的51单片机汇编和C语言的集成开发环境。他支持汇编和C的混合编程,同时具备强大的软件仿真和硬件仿真功能。Protues能够很方便的和KEIL、Matlab IDE等编译模拟软件结合。Proteus提供了大量的元件库有RAM,ROM,键盘,马达,LED,LCD,AD/DA,部分SPI器件,部分IIC器件,它可以仿真单片机和周边设备,可以仿真51系列、AVR,PIC等常用的MCU,与keil和MPLAB不同的是它还提供了周边设备的仿真,只要给出电路图就可以仿真。这里我将keil和 Protues两个软件的快速集成起来使用。(1)首先将keil和 Protues两个软件安装好。(2)然后在C:Program FilesLabcenter EletronicsProtues 6 ProfessionalMODELS(我的Protues是安装C盘里面的)目录下的VDM51.DLL 动态连接库文件复制到C:KEILC51BIN 目录下面(我的keil 也安装在C盘)这个文件将在keil的debug设置时用到。(3)打开protues软件,新建一文件将硬件原理图绘入图中。(4)将KEIL生成的HEX文件下载入单片机中,点击“开始”进行仿真。(5)在keil中进行debug,同时在proteus中查看直观的结果(如LCD显示)。这样就可以像使用仿真器一样调试程序。利用Proteus与Keil整合进行实验,具有比较明显的优势,当然其存在的缺点也是有的。利用仿真实验可以做全部的软件实验和极大多数的硬件系统,虚拟仿真实验室,因极少硬件投入、所以经济优势明显,不仅可以弥补实验仪器和元器件缺乏带来的不足,而且排除了原材料消耗和仪器损坏等因素。第五章 频率计的系统调试频率计的系统调试包括系统软、硬件联合调试。硬件调试包括整形模块、分频模块等模块,软件调试就是通过修改程序,使频率计功能完善,提高频率计的测量精度。使用软件仿真,调试仿真结果,同时使用数字万用表和示波器测试输出电压值和输出波形,调试出正确的硬件电路。5.1 硬件调试5.1.1整形模块调试整形电路采用与非门74LS00构成施密特触发器,它对正弦波、三角波等各种波形信号进行整形,使之成为矩形脉冲。整形电路在Multisim10中进行电路的仿真与调试,在Multisim10绘制的整形电路如图5.1所示。选择虚拟函数发生器输入不同的信号,同时使用数字示波器测的输出波形,经测试施密特触发器可以把1Hz-1MHz的正弦波等波形整形为方波信号,仿真结果如图5.2所示。图5.1 整形电路仿真图5.2 整形电路输出波形仿真搭建整形电路模块,测试电路基本正确,使用数字示波器测得输入输出波形如图5.3所示。图5.3 整形电路实际输出波形5.1.2 分频模块调试为了达到1Hz-1MHz的频率范围,使用外部分频,搭建分频电路,测试电路基本正确,选择函数发生器输入1MHz以下不同频率的的方波信号,同时使用数字示波器测的输出波形,经观察分频电路可以把1MHz以下不同频率的方波波形进行十分频,示波器测得输入输出波形如图5.4所示。图5.4 分频电路实际输出波形5.2 功能调试当测量频率值小于1KHz以下时,数码管显示频率值,并最右边发光二极管亮,作为Hz档单位指示。当测量频率值大于且等于1KHz并小于1MHz时,数码管显示频率值,并从右边数第二个发光二极管亮,作为KHz档单位指示。当测量频率值大于1MHz时,数码管显示频率值,并从右边数第四个发光二级管亮,作为MHz档单位指示。经上述测试,基本功能都以实现,可以测出波形频率值,并可以自动切换量程单位,符合要求。5.3系统调试5.3.1 系统软硬件调试 测试只能测试方波信号,外加硬件整形电路,可以测试正弦波、三角波等各种波形的频率值,把各模块组合在一起,做成完整的频率计。经过不断的软硬件联合调试,修改程序和硬件,最终符合设计功能要求。为了衡量这次设计的频率计的工作情况和测量精度,我们对系统进行了调试。用这次设计的频率计对信号进行了测量,使用函数发生器输出各种波形,由实物频率计测得频率,记录数据。实际测得频率范围没有仿真结果那么高,只能稍微超过1MHz。实际记录数据如下表表5.1:HZ档的数据记录表,表5.2:KHZ档的数据记录表,表5.3:MHZ档的数据记录表所示。表5.1:HZ档的数据记录表待测值(Hz)10.328.9268.7324.8490.6678.3978.8测量值(Hz)1029269325491678979表5.2:KHZ档的数据记录表待测值(KHz)15.2633.2860.12161.75308.8470.7912.1测量值(KHz)15.333.360.2162.0309.0470.9912.4表5.3:MHZ档的数据记录表待测信(MHz)1.1231.318测量值(MHz)1.123测不出5.4 误差分析从记录的数据可以看出,系统软件仿真误差很小,在1Hz-1MHz范围内测量出来的频率基本上就是输入信号的频率,在超出这个范围后,才出现很小的误差。但是在硬件调试中,可能是由于标准元器件本身误差,如随着时间的延长,造成测量结果没有软件仿真精确。同时手工焊接单片机最小系统、分频整形电路等也会带来一定的干扰,造成信号的失真,从而导致测量精度下降,测量范围有所缩小,但是可以看出,误差在允许范围内,所设计的电路基本符合要求。总结毕业设计已经结束,通过这次设计,我受益匪浅。毕业设计是一次综合性的实践,它将各种知识结合到一起综合运用到实践上来扩展、弥补、串联所学的知识。通过本次毕业设计我得到了很多收获。首先,了解了单片机的基本知识和在控制领域的作用和地位。其次掌握了C语言的编写程序,学会了使用PROTUTES和KEIL的仿真来实现,同时掌握了如何收集、查阅、应用文献资料,如何根据实际需要有选择的阅读书籍和正确确定系统所要使用的元器件的类型。再次,在精神方面锻炼了思想、磨练了意志。面对存在的困难首先分析问题根据目的要求确定可实现的部分,不明白方面找同学和老师讨论研究,再完善、再修改、再发现问题、再解决培养了自己的耐心、恒心及遇事不乱的精神。总之,我明白了理论和实践之间存在的距离只有靠不断的思考不断的动手才能将所学的知识真正运用到实践上来。在毕业设计中我的很多方面的能力都得到了提高,尤其在单片机软件编程方面让我感触颇深。我个人认为软件设计是个即灵活又细腻的工作,它要求耐心和细心去不断完善,同时还需要有良好的逻辑思维能力。通过这次毕业设计,我分析问题和解决问题的能力有所提高,也巩固了所学的知识,加深了对理论知识的理解,更重要的是锻炼自己的独立性,为我今后的工作和学习打下坚实的基础。参考文献 1. 蒋焕文、孙续.电子测量(第二版)M.中国计量出版社,1998.2. 刘国林、殷贯西.电子测量M.机械工业出版社,2003.3. 孙焕根.电子测量与智能仪器M.浙江大学出版社,1992.4. 古天祥、王厚军等.电子测量原理M.机械工业出版社,2004.5. 郭允、苏秉炜. 脉冲参数与时域测量技术M.中国计量出版社,1989.6. 美D.霍布沙尔.电子仪器的电路设计M.科学出版社,1986.7. 黄秉英.时间频率的精确测量(第一版)M.中国计量出版社,1986.8. 美Kevin Skahill.可编程逻辑系统的VHDL设计技术M.东南大学出版社,1998.9. 高书莉、罗朝霞.可编程逻辑设计技术及应用M.人民邮电出版社, 2001. 10. 程云长、王莉莉.可编程逻辑器件与VHDL语言M.科学出版社,2005.11. 陆玉新、傅崇伦.电子测量M.国防工业出版社,1985.12. 刘克刚.复杂电子系统设计与实践M.电子工业出版社,2010.致 谢感谢学校和老师对我的培养,给我这个自己动手的机会和空间。经过一段时间,终于在指导老师的帮助下完成了毕业设计,对自己的能力有了很大的提升。在此我要感谢每一个帮助过我的人。首先,我要感谢的是我的指导老师刘克刚老师,在百忙之中抽出时间为我的设计指点,提供帮助,他的学习作风和优良的教学研究精神是我永远学习的榜样。其次要感谢我的父母,在我最艰难的日子里,他们给我精神上的支持。他们一直在鼓励我,让我充满信心地迎接每一个问题。再次我要感谢我的同学,在我最困难的时候伸出援助之手,用他们的智慧帮我解决各个难题。总而言之,感谢每一位关心过我的人,他们今天对我的付出,成为我将来工作的动力。附件:频率计源程序#include #defineSegmentP2#define sl P0unsigned char cnt; /定时1s计数unsigned char d4; /对应数码管的各位unsigned char level; /档位uns
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!