1、环 境 工 程 职 业 学 院毕 业 论 文课题:简易的数字频率计的设计专 业 机 械 与 电 子 学 院 学 生 姓 名 过 彤 班 级 0551102 班 学 号 20113869 指 导 教 师 张 小 波 目 录摘要 3前 言 1第一章 绪论 21.1 课题背景 .21.2 课题研究的目的和意义 21.4 数字频率计设计的任务与要求 .2第二章 数字频率计总体方案设计 31.1 方案比较 .31.2 方案论证 .41.3 方案选择 .4第三章 数字频率计的硬件系统设计 53.1 数字频率计的硬件系统框架 53.2 数字频率计的主机电路设计 53.3 数字频率计的信号输入电路设计 .83
2、.4 数字频率计显示电路的设计 .93.5 数字频率计的计数电路的设计 .123.6 数字频率计电源模块的设计 .15第四章 数字频率计软件系统设计 164.1 软件设计规划 164.1.1 信号处理 164.1.2 中断控制 164.2.1 定时器/计数器 174.2.2 定时工作方式 0 184.3 程序流程图设计 .184.3.1 主程序流程 184.3.2 中断流程 .20第五章 数字频率计的仿真调试 22参考文献 23致 谢 24附录(程序) 25附录:数字频率计的系统原理图 28摘要本方案主要以单片机为核心,主要分为时基电路,逻辑控制电路,放大整形电路,闸门电路,计数电路,锁存电路
3、,译码显示电路七大部分,设计以单片机为核心,被测信号先进入信号放大电路进行放大,再被送到波形整形电路整形,把被测的正弦波或者三角波整形为方波。利用单片机的计数器和定时器的功能对被测信号进行计数。编写相应的程序可以使单片机自动调节测量的量程,并把测出的频率数据送到显示电路显示。本设计以 89C51 单片机为核心,应用单片机的算术运算和控制功能并采用LED 数码显示管将所测频率显示出来。系统简单可靠、操作简易,能基本满足一般情况下的需要。既保证了系统的测频精度,又使系统具有较好的实时性。本频率计设计简洁,便于携带,扩展能力强,适用范围广。关键词单片机,运算,频率计,LED 数码管简易数字计毕业设计
4、论文1前 言在电子测量领域中,频率测量的精确度是最高的,可达 1010E-13 数量级。因此,在生产过程中许多物理量,例如温度、压力、流量、液位、PH 值、振动、位移、速度、加速度,乃至各种气体的百分比成分等均用传感器转换成信号频率,然后用数字频率计来测量,以提高精确度。 国际上数字频率计的分类很多。按功能分类,测量某种单一功能的计数器。如频率计数器,只能专门用来测量高频和微波频率;时间计数器,是以测量时间为基础的计数器,其测时分辨力和准确度很高,可达 ns 数量级;特种计数器,它具有特种功能,如可逆计数器、予置计数器、差值计数器、倒数计数器等,用于工业和白控技术等方面。数字频率计按频段分类
5、(1)低速计数器:最高计数频率10MHz; (2)中速计数器:最高计数频率 10100MHz; (3)高速计数器:最高计数频率100MHz; (4)微波频率计数器:测频范围 180GHz 或更高。单片机自问世以来,性能不断提高和完善,其资源又能满足很多应用场合的需要,加之单片机具有集成度高、功能强、速度快、体积小、功耗低、使用方便、价格低廉等特点,因此,在工业控制、智能仪器仪表、数据采集和处理、通信系统、高级计算器、家用电器等领域的应用日益广泛,并且正在逐步取代现有的多片微机应用系统。单片机的潜力越来越被人们所重视。特别是当前用CMOS 工艺制成的各种单片机,由于功耗低,使用的温度范围大,抗干
6、扰能力强、能满足一些特殊要求的应用场合,更加扩大了单片机的应用范围,也进一步促使单片机性能的发展。简易数字计毕业设计论文2第一章 绪论1.1 课题背景在电子技术中,频率是最基本的参数之一,并且与许多电参量的测量方案、测量结果都有十分密切的关系,因此频率的测量就显得更为重要。频率计的基本原理是用一个频率稳定度高的频率源作为基准时钟,对比测量其他信号的频率。通常情况下计算每秒内待测信号的脉冲个数,此时我们称闸门时间为 1 秒。闸门时间也可以大于或小于一秒。闸门时间越长,得到的频率值就越准确,但闸门时间越长则每测一次频率的间隔就越长。闸门时间越短,测的频率值刷新就越快,但测得的频率精度就受影响。数字
7、频率计是用数字显示被测信号频率的仪器,被测信号可以是正弦波,方波或其它周期性变化的信号。如配以适当的传感器,可以对多种物理量进行测试,比如机械振动的频率,转速,声音的频率以及产品的计件等等。1.2 课题研究的目的和意义单片机数字频率计以其可靠性高、体积小、价格低、功能全等优点,广泛地应用于各种智能仪器中,这些智能仪器的操作在进行仪器校核以及测量过程的控制中,达到了自动化,传统仪器面板上的开关和旋钮被键盘所代替,测试人员在测量时只需按需要的键,省掉很多烦琐的人工调节,智能仪器通常能自动选择量程,自动校准。有的还能自动调整测试点,这样不仅方便了操作,也提高了测试精度。1.4 数字频率计设计的任务与
8、要求单片机控制的数字频率计1.测频范围:10Hz10KHz。为保证测量精度分三个频段10Hz100Hz,100Hz1KHz,1KHz10KHz,有超量程指示。2.输入波形:函数信号发生器输出方波,矩形波,幅度为 5V,能产生所需频率的脉冲信号。3.测量误差: 1。简易数字计毕业设计论文3第二章 数字频率计总体方案设计1.1 方案比较方案一:本方案主要以单片机为核心,利用单片机的计数定时功能来实现频率的计数并且利用单片机的动态扫描法把测出的数据送到数字显示电路显示。其原理框图如图 2.1 所示:信号放大电路信号整形单片机AT89c51电路数字显示 电路图 2.1 方案一原理框图方案二:本方案主要
9、以数字器件为核心,主要分为时基电路,逻辑控制电路,放大整形电路,闸门电路,计数电路,锁存电路,译码显示电路七大部分。其原理框图如图 2.2 所示:简易数字计毕业设计论文4逻辑控制电路时基电路 放大整形电路闸门电路计数器锁存器译码显示器图 2.2 方案二原理框图1.2 方案论证方案一:本方案主要以单片机为核心,被测信号先进入信号放大电路进行放大,再被送到波形整形电路整形,把被测的正弦波或者三角波整形为方波。利用单片机的计数器和定时器的功能对被测信号进行计数。编写相应的程序可以使单片机自动调节测量的量程,并把测出的频率数据送到显示电路显示。方案二:本方案使用大量的数字器件,被测信号经放大整形电路变
10、成计数器所要求的脉冲信号,其频率与被侧信号的频率相同。同时时基电路提供标准时间基准信号,其高电平持续时间 1s,当 1s 信号来到时,闸门开通,被测脉冲信号通过闸门,计数器开始计数,直到 1s 信号结束闸门关闭,停止计数。若在闸门时间 1s 内计数器计得的脉冲个数为 N,则被测信号频率 Fx = NHz。逻辑控制电路的作用有两个:一是产生锁存脉冲,是显示器上的数字稳定;二是产生清零脉冲,使计数器每次测量从零开始计数。1.3 方案选择比较以上两种方案可以知道,方案一的核心是单片机,使用的元器件少,原理电路简单,调试简单只要改变程序的设定值则可以实现不同频率范围的测简易数字计毕业设计论文5试能自动
11、选择测试的量程。与方案一相比较方案二则使用了大量的数字元器件,原理电路复杂,硬件调试麻烦。如要测量高频的信号还需要加上分频电路,价格相对高了点。基于上述比较,所以选择了方案一第三章 数字频率计的硬件系统设计3.1 数字频率计的硬件系统框架数字频率计是一个将被测频率显示出来的计数装置,它主要由单片机89C51 控制、7407、LED 显示器、电源等组成。该系统的功能是将信号输入P3.4 口,通过单片机程序控制,对 LED 显示器进行段控和位控,实现动态显示。数字频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。在进行有关电子技术的设计、安装、调试过程中,由于其使用十进制数显示,
12、测量迅速,精确度高,显示直观,会被经常使用到。图 3-1 为数字频率计方案框图。简易数字计毕业设计论文6信号处理输入 AT89C51 单片机7407 缓冲器LED 数码显示图 3-1 数字频率计方框图 3.2 数字频率计的主机电路设计ATC89C51可以完成 ISP 在线编程功能,ATC89C51 内部有 EEPROM,可以在程序中修改,断电不丢失。还增加了两级中断优先级,STC 推出的系列 51 单片机芯片是全面兼容其它 51 单片机的,而且 51 单片机是主流大军。189C51 芯片介绍许多由关硬件设计中都使用到单片机 89C51,其功能7比以往的单片机强大的多。89C51 引脚图如图 3
13、-2 所示。图 3-2 89C51 引脚图7407 缓冲器简易数字计毕业设计论文7芯片引脚功能:主电源引脚 Vcc 和 VssVcc(40 脚):接5V 电压;Vss(20 脚):接地。89C51 晶振接法如图 3-3。图 3-3 89C51 晶振接法图选用 6MHz 频率的晶体,允许输入的脉冲频率为 250kHz。电容的大小范围为 20pF40pF,本设计选用 30pF 电容。2单片机复位状态单片机的复位都是靠外部电路实现的,在时钟电路工作后,只要在单片机的 RST 引脚上出现 24 个时钟震荡脉冲(2 个机器周期)以上的高电平,单片机便实现初始化状态复位。为了保证应用系统可靠地复位,在设计
14、复位电路时,通常使 RST 引脚保持 10ms 以上的高电平。只要保持高电平,则 MCS-51 单片机就循环复位;当 RST 从高电平变为低电平以后,MCS-51 单片机从 0000H 地址开始执行程序。在复位有效期间,ALE、 引脚输出高电平。89C51 上电复位电路图。简易数字计毕业设计论文8图 3-4 89C51 上电复位电路图单片机复位状态表。表 3-5 单片机复位状态表专用寄存器复位状态专用寄存器复位状态PC 0000H TMOD 00HACC 00H TCON 00HB 00H TH0 00HPSW 00H TL0 00HSP 07H TH1 00HDPTR 0000H TL1 0
15、0H简易数字计毕业设计论文9P0P3 FFH SCON 00HIPXXX0 0000BSBUFXXXX XXXXBIE0XX0 0000BPCON0XXX XXXXB注:XXX 不定复位后,P0 口P3 口输出高电平,且使这些准双向口皆处于输入状态,并且将 07H 写入栈指针 SP(即设定堆栈底为 07H) ,同时,将程序计数器 PC 和其余的特殊功能寄存器清为 0(不定的位除外) 。但复位不影响单片机内部的 RAM状态3.3 数字频率计的信号输入电路设计7414 是六反相施密特触发器集成电路,其基本作用就是反相器,一般用于信号输入电路,用施密特触发器对输入信号进行波形整形。其功能作用如图 3
16、-13 所示。图 3-13 输入-输出波形图本设计为满足设计要求,被测信号是要进行波形的变换。由第一级的零偏置放大器把正弦波样的正负交替波形变换成单向脉冲,再经过 7414 将放大器产生的单向脉冲变换成与 TTL/CMOS 电平相兼容的方波。这样处理以后信号变成方波信号,以便后续的电路进行计数。简易数字计毕业设计论文103.4 数字频率计显示电路的设计在单片机系统中,常用的显示器有:发光二极管显示器,简称 LED;液晶显示器,简称 LCD;荧光管显示器。而发光二极管显示又分为固定段显示和可以拼装的大型字段显示,此外还有共阳极和共阴极之分等。LED 段显示器结构与原理LED 显示器是由发光二极管
17、显示字段组成的显示块,有 7 段和“米”字段之分。这种显示块有共阳极和共阴极两种。此外,显示块中还有一个圆点型发光二极管(在图中以 dP 表示)用于显示小数点。通过发光二极管亮、暗的不同组,可以显示多中数字、字母以及其他符号。LED 显示块中的发光二极管共有两种连接方法:(1)共阳极接法发光二极管的阳极连在一起构成公共阳极。使用时公共阳极接5V,这样,阴极端输入低电平的段的发光二极管被点亮,相应的段被显示;而输入高电平的段则不点亮。(2)共阴极接法简易数字计毕业设计论文11发光二极管的阴极连在一起构成公共阴极。使用时公共阴极接地,这样,阳极端输入高电平的段的发光二极管被点亮,相应的段被显示;而
18、输入低电平的段则不点亮。数码管引脚如图 3-6。图 3-6 数码管引脚图共阴和共阳结构的 LED 显示器各笔划段名和安排位置是相同的。当二极管导通时,相应的笔划段发亮,由发亮的笔划段组合而显示的各种字符。8 个笔划段 dP、g、f、e、d、c、b、a 对应于一个字节(8 位)的D7、D6、D5、D4、D3、D2、D1、D0,于是用 8 位二进制码就可以表示欲显示字符的字形代码。例如,对于共阴 LED 显示器,当公共阴极接地(为零电平) ,而阳极 dP、g、f、e、d、c、b、a 各段为 0111011 时,显示器显示“P“字符,即对于共阴极 LED 显示器, “P”字符的字形码是 73H。如果
19、是共阳 LED 显示器,公共阳极接高电平,显示“P”字符的字形代码应为 10001100(8CH) 。用 LED 显示器显示十进制转换成十六进制数的字形代码在表 3-7 中列出。表 3-7 LED 十六进制的数字代码表字形共阳极代码共阴极代码字形共阳极代码共阴极代码0 C0H 3FH 9 90H 6FH1 F9H 06H A 88H 77H2 A4H 5BH B 83H 7CH3 BOH 4FH C C6H 39H简易数字计毕业设计论文124 99H 66H D A1H 5EH5 92H 6DH E 86H 79H6 82H 7DH F 8EH 71H7 F8H 07H 灭 FFH 00H8
20、80H 7FH3.5 数字频率计的计数电路的设计74LS290 是异步十进制计数器。它由一个二进制计数器和一个异步五进制计数器组成。74LS290 引脚图如图 3-9 所示。图 3-9 74LS290 引脚图当复位输入 R0(1)=R0(2)=1,且置位输入 S9(1)S9(2)=0 时,74LS290 的输出被直接置零;只要置位输入 S9(1)S9(2)=1,则 74LS290 的输出将被直接置9,即 =1001;只有当 S9(1)和 S9(2)不全为 1,并且 R0(1)和 R0(2)不全为 1 时,输入计数脉冲 CP,计数器开始计数。计数脉冲由 CP0 输入,从 Q0 输出时,则构成二进
21、制计数器;计数脉冲由 CP1 输入,输出为 Q2Q1Q0 时,则构成五进制计数器;若将 Q0 和 CP1 相连,计数脉冲由 CP0 输入,输出为 Q3Q2Q1Q0 时,则构成十进制(8421 码)计数器;若将 Q3 和 CP0 相连,计数脉冲由 CP1 输入,输出为 Q3Q2Q1Q0 时,则构成十进制(5421 码)计数器。因此,74LS290 又称为“二五十进制型集成计数器” 。异步清零端 MR1,MR2 为高电平时,只要置 9 端 MS1,MS2 有一个为低电平,就可以完成清零功能。当 MS1,MS2 均为高电平时,不管其他输入端状态如何,就可以完成置 9的功能。当 MR1,MR2 中有一
22、个以及 MS1,MS2 中有一个同时为低电平时,在时钟端/CP0,/CP1 脉冲下降沿作用下进行计数操作。a) 十进制计数。应将/CP1 与 Q0 连接,计数脉冲由/CP0 输入。简易数字计毕业设计论文13b) 二、五混合进制计数。应将/CP0 与 Q1 连接,计数脉冲由/CP1 输入。c) 二分频、五分频计数。Q0 为二分频输出,Q1Q3 为五分频输出。 引出端符号功能如下。CP0 二分频时钟输入端(下降沿有效)CP1 五分频时钟输入端(下降沿有效)QAQD 输出端MR1,MR2 异步复位端MS1,MS2 异步置 9 端简易数字计毕业设计论文1474LS290 的级联扩展如表 3-10 所示
23、表 3-10 74LS290 级联扩展说明CP 输入端输出端 进制 输出状态 分频端CP0Q0 二 0、1Q0 为二分频端CP1Q3Q2Q1 五 000100Q3 为五分频端CP0 且Q0 与 CP1 相连Q3Q2Q1Q0 十 00001001Q3 为十分频端74LS290 十进制的电路连接如图 3-11 所示。图 3-11 74LS290 十进制计数器两片接成十进制的 74LS290 级联组成 210=20 进制异步加法计数器如图3-12 所示。简易数字计毕业设计论文15图 3-12 二十进制异步加法计数器本设计中因为要对信号进行 20 分频,所以要使用两块 74LS290 进行级联。一块
24、74LS290 用作 2 分频,一块 74LS290 用作 10 分频。信号由第一块 74LS290的 CP0 输入从 Q0 输出,这样信号就经过了 2 分频,再把信号输入第二块74LS290 的 CP0 并且第二块 74LS290 的 CP1 与 Q0 相连,这时从第二块 74LS290的 Q3 输出的信号就已经完成了 20 分频。3.6 数字频率计电源模块的设计使用变压器提供到 AC 桥堆的输入脚为 9V 交流电压,通过 AC 整流输出为9V 直流电,经过电解电容滤波、7805 稳压,提供给 89C51 单片机为 5V 电压。5V 电源电路如图 3-14 所示。图 3-14 5V 电源电路
25、图简易数字计毕业设计论文16第四章 数字频率计软件系统设计4.1 软件设计规划4.1.1 信号处理在频率计开始工作,或者完成一次频率测量,系统软件都进行测量初始化。测量初始化模块设置堆栈指针(SP) 、工作寄存器、中断控制和定时/计数器的工作方式。定时/计数器的工作首先被设置为计数器的计数寄存器清 0 后,置运行控制位 TR 为 1,启动对待测信号的计数。计数闸门由软件延时程序实现,从计数闸门的最小值开始,也就是从测量频率的高量程开始。计数闸门结束时 TR 清 0,停止计数。计数寄存器中的值通过 16 进制数道 10 进制数转换程序转换为 10 进制数。对 10 进制数的最高位进行判别,若该位
26、不为 0,满足测量数据有效位数的要求,测量值和量程信息一起送到显示模块;若该位为 0,将计数闸门的宽度扩大 10 倍,重新对待测信号的技术,直到满足测量数据有效位数的要求。待测信号经预处理电路分频后变成较宽的方波信号,并加至单片机的 P3.4引脚,为单片机测信号频率提供有效的输入信号。单片机通过检测 P3.4 引脚来判断是否启动测周期程序。当该引脚为高电平时则等待,知道该引脚出现低电平时才开始测周期。首先将零赋给 TH0、TL0 两个寄存器,将定时器 T0 的运行控制位 TR0 置位,同时也将 ET0 置位以允许定时器 T0 终端,然后再判断 P3.4引脚是否还为低电平,当不是低电平时则等待。
27、一旦出现低电平则使 TR0 复位以终止定时器,测周期程序结束。在测周期过程中,会发生定时器 T0 的中断,每发生一次中断则将 R0 寄存器加一,因此 R0 实际上是周期值的高字节。测出的周期值存储在 R0、TH0、TL0 三个寄存器中,然后将其转换成频率。由于所测周期的单位是 s,再相除转换时要将被除数扩大 10 6倍,这样才能保证得出正确的频率。得出的频率放到 R1、R2、R3 三个寄存器后调用转换 BCD 代码模块。调用显示消除多余零和显示数据存储模块,将要显示的频率值通过查表转换成相应数据 8 段码放到现实缓冲区以备显示。4.1.2 中断控制由于在程序设计中用到中断9方式,所以我们在此对
28、单片机中断系统简易数字计毕业设计论文17中的中断控制作一下介绍。中断是工业过程控制及智能化仪器用微型机或单片机应用最多的一种数据传送方式。在通常情况下,单片机执行主程序,只有当正常状态出现故障,或发出中断请求时,单片机才暂停执行主程序,转去执行或处理中断服务程序,执行完中断服务程序后,再返回到主程序继续运行。单片机的这一种工作过程称为中断方式。基于资源共享原理上的中断技术,在计算机中得到了广泛的应用。中断技术能实现 CPU 与外部设备的并行工作,提高 CPU 的利用率以及数据的输入/输出效率;中断技术也能对计算机运行过程中突然发生的故障及时发现并进行自动处理如:硬件故障、运算错误及程序故障等;
29、中断技术还能使我们通过键盘发出请求,随时对运行中的计算机进行干预,而不用先停机处理,然后再重新开机等。在单片机中,中断技术主要用于实时控制。所谓实时控制,就是要求计算机能及时地响应被控对象提出的分析、计算和控制等请求,使被控对象保持在最佳工作状态,以达到预定的控制效果。由于这些控制参量的请求都是随机发出的,而且要求单片机必须做出快速响应并及时处理,对此,只有靠中断技术才能实现。4.2.1 定时器/计数器(1)定时器控制寄存器(TCON)10TCON 寄存器既参与中断控制又参与定时控制。现对其定时功能加以介绍。其中有关定时的控制位共有 4 位:F0 和 TF1计数溢出标志位当计数器计数溢出(计满
30、)时,该位置“1” ;使用查询方式时,此位作状态位供查询,但应注意查询有效后应以软件方法及时将该位清“0” ;使用中断方式时,此位作中断标志位,在转向中断服务程序时由硬件自动清“0” 。R0 和 TR1定时器运行控制位TRO(TR1)=0 停止定时器/计数器工作TRO(TR1)=1 启动定时器/计数器工作(2)工作方式控制寄存器(TMOD)11TMOD 寄存器是一个专用寄存器,用于设定两个定时器/计数器的工作方式。但 TMOD 寄存器不能位寻址,只能用字节传送指令设置其内容。(3)中断允许控制寄存器(IE)12EA中断允许总控制位简易数字计毕业设计论文18ET0 和 ET1定时/计数中断定时器
31、/计数器提供给用户使用的有:8 位计数器 TH 和 TL,以及有关的控制位。这些内容只能以软件方法使用。能够产生中断申请的部件被称为中断源。8051 型单片机提供了五个中断源:两个外部中断源和三个内部中断源。每一个中断源都有一个中断申请标志位,但是串行口占有两个中断标志位。一共有六个中断标志位。(4)定时器/计数器对输入信号的要求定时器/计数器的两个作用是用来精确的确定某一段时间间隔13(作定时器用)或累计外部输入的脉冲个数(作计数器用) 。当用作定时器时,在其输入端输入周期固定的脉冲,根据定时器/计数器中累计(或事先设置)的脉冲个数,即可计算出所定时间的长度。当 89C51 内部的定时器/计
32、数器被选择为定时器工作方式时,计数输入信号是内部时钟脉冲,每个机器周期产生一个脉冲使计数器增 1。因此,定时器/计数器的输入脉冲周期与机器周期一样,为振荡频率的 1/12。当采用 12MHz 频率的晶体时,计数频率为 1MHz,输入脉冲的周期间隔为 1s14。由于定时的精度决定于脉冲的周期,因此,当需要高精度的定时器时,应尽量选择频率较高的晶体。4.2.2 定时工作方式 0方式 0 是 13 位计数结构的工作方式15,其计数器由 TH0 高 8 位和 TL0 的低五位构成。TL0 的高 3 位弃之不用。当 C/ =0 时,多中开关接通振荡脉冲的12 分频输出,13 位计数器以此进行计数,这就是
33、所谓定时器工作方式。当C/ =116时,多路开关接通计数引脚(T0) ,外部计数脉冲由引脚 T0 输入。当计数脉冲发生负跳变时,这就是所谓计数工作方式。不管是哪种工作方式,当 TL0 的低五位计数溢出时,向 TH0 进位,而全部13 位计数溢出时,则向计数溢出标志位 TF0 进位。4.3 程序流程 图设计4.3.1 主程序流程主程序流程图如图 4-1 所示。简易数字计毕业设计论文19频率放大读取当前计数值重新启动 T0、T1 中断,重新进行测量结果显示YNKey=1开始图 4-1 主程序流程图简易数字计毕业设计论文204.3.2 中断流程T1 中断流程图如图 4-2 所示。图 4-2 T1 中
34、断流程图简易数字计毕业设计论文21T0 中断流程图如图 4-2 所示。图 4-2 T0 中断流程图中断程序实现定时与计数的功能。T1 进行定时,定时时间为 1S。T0 进行计数,TO 中断溢出一次,T0count 加 1。当定时达到 1S 时,停止 T0,T1。最后计算相应的频率值。简易数字计毕业设计论文22第五章 数字频率计的仿真调试利用仿真软件 ISIS 的强大的仿真功能可以有效地检验所设计的原理图是否在理论上正确合理。选择适当的三极管和设置基极,发射极,集电极电阻可以得到适当的放大倍数对所测的信号进行有效的处理。要选择适当的三极管,以免避免发生截止失真和饱和失真。分别以正弦波,方波,三角
35、波作为输入信号检测电路的整形效果。利用仿真软件的示波器来观察整形出来的波形是否符合所要整形出来的波形。利用 Keil uvision2 软件编写单片机的工作程序并且检验程序是否成功编译。通过 Keil uvision2 逐步运行程序的功能可以检测出程序的错漏从而进行改正。程序编译成功后,利用 ISIS 软件把程序加载到原理图中进行仿真,通过显示器显示出来的频率大小与所设计的频率相比较可以看出所编写的程序是否满足要求,是否符合设计所要求的精度。测出各频率范围的误差,如果不符合设计所要求的精度可以通过改变单片机定时器的初始值或者优化程序的结构来减小误差增加精度!LED 数码管采用的是动态扫描的方法
36、进行显示,要设计好相应的扫描时间,因为扫描时间太短则 LED 显示出来的数字便会一直在闪烁不稳定,扫描时间太长则 LED 显示便会出现短时间的熄灭。调试电路的时候发现由于 P2 口的驱动能力不够大因此要驱动 LED 数码管工作就应该加上反相器或者三极管作为驱动电路。测试结果:电路导通,LED 灯显示所测量的信号频率,测量范围:10HZ-10KHZ。简易数字计毕业设计论文23参考文献1陈敬远.数字频率计的 VHDL 设计J.浙江传媒学院学报; 2002,01: 36-38.2何均 ,杨明.适合于单片机实现的极值搜索算法J.单片机与嵌入式系统应用,2004,24.3杜玉远.基于 top-down
37、方法的数字频率计的设计与实现J.电子世界, 2004,5: 30-32.4钱进.基于 AT89C2051 的高度精度数字频率计的设计J.机电产品开发与创新,2007,20(1):86-87.5冯雷星,杨伟,芦燕龙.基于单片机高性价比频率计的设计与实现B.微计算机信息,2007,20.6赫建国,刘立新,党剑华.基于单片机的频率计设计J.西安邮电学院学报,2003,03:34-37+75.7张毅刚.单片机原理及应用.高等教育出版社M,2003.12(1).10施剑鸣.单片机测频技术及测量精度的提高A.江苏省计量测试学会 2005年论文集 C,2005.11谢煌,黄为.基于 VHDL 语言设计频率计
38、J.北京现代电子技术,2003,14.12杜刚,高军,童宁宁.基于 AT89C2051 单片机的频率计设计J.微计算机应用,2004,25(4):498-501.13刘雪根.数字频率计的误差分析J.自动化与仪表,1996,3:23-24.14顾巨峰,周浩洋,朱建华.基于可编程逻辑器件(Lattice)的多功能数字频率计J.电子工程师,2002,1:28-32.15王丽霞,程小辉,龚幼民.基于 LM331 的频率计J.仪表技术与传感器; 2007,09.16吴慎山,王芳,吴东芳,吴雪冰,万霞.智能单片机频率计的原理与设计J.河南师范大学学报(自然科学版),2004,02:47-49.简易数字计毕
39、业设计论文24致 谢感谢学校和老师对我的培养,给我这个自己动手的机会和空间。经过一段时间,终于在指导老师的帮助下完成了毕业设计,对自己的能力有了很大的提升。在此我要感谢每一个帮助过我的人。首先,我要感谢的是我的指导老师王培良老师,在百忙之中抽出时间为我的设计指点,提供帮助,他的学习作风和优良的教学研究精神是我永远学习的榜样。其次要感谢我的父母,在我最艰难的日子里,他们给我精神上的支持。他们一直在鼓励我,让我充满信心地迎接每一个问题。再次我要感谢我的同学,在我最困难的时候伸出援助之手,用他们的智慧帮我解决各个难题。总而言之,感谢每一位关心过我的人,他们今天对我的付出,成为我将来工作的动力。简易数
40、字计毕业设计论文25附录(程序)#include /*数码管位代码表(P2 口)*/unsigned char code dispbit=0x01,0x02,0x04,0x08;/*数码管段代码表(P0 口,共阴且高位接 dp,低位接 a 笔段)*/ unsigned char code dispcode=0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F;/*6 位数据缓冲器*/ unsigned char dispbuf8; unsigned char temp8; unsigned char dispcount; unsigned char T0co
41、unt;unsigned char timecount;void initial();void delay();void dataDisplay();bit flag; sbit Fin=P34; sbit key=P37; unsigned long x,freq; /*初始化模块*/void initial(void)P0=0x3F;P2=0xff;TMOD=0x15; TH0=0;TL0=0;TH1=(65536-4000)/256;TL1=(65536-4000)%256;TR1=1;简易数字计毕业设计论文26TR0=1;ET0=1;ET1=1;EA=1;/*显示模块*/void da
42、taDisplay()unsigned char i; for(i=0;i4;i+)tempi=0;i=0;while(x/10)tempi=x%10;x=x/10;i+;tempi=x;for(i=0;i4;i+)dispbufi=tempi; for(dispcount=0; dispcount 4; dispcount +) P0=dispcodedispbufdispcount;P2=dispbitdispcount;Delay();/*/*延时函数*/void delay(unsigned char t)unsigned char k,j;for(k=0;kt;k+)简易数字计毕业设
43、计论文27for(j=0;j125;j+);/*/*定时中断服务程序 1*/void t1(void) interrupt 3 using 0TH1=(65536-4000)/256;TL1=(65536-4000)%256;timecount+; freq=T0count*65536+TH0*256+TL0; while(timecount=250) TR0=0;TR1=0;/*/*定时中断服务程序 2*/void t0(void) interrupt 1 using 0T0count+;/*/*主函数*/void main(void)while(1) if(key=1) timecount=0;T0count =0; initial();else x=freq;x=x*20;dataDisplay();