《基于单片机数字频率计的设计课程设计论文正文.doc》由会员分享,可在线阅读,更多相关《基于单片机数字频率计的设计课程设计论文正文.doc(24页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、四川大学锦城学院本科课程设计 基于单片机数字频率计的设计四川大学锦城学院 本科生课程设计 题 目 基于单片机数字频率计的设计 系 别 机械工程系 专 业 机械电子工程 学生姓名 张 何 学 号 120930146 年级 12级 指导教师 黄 晖 2015 年 7 月 7 日基于单片机的数字频率计的设计 专 业:机械电子工程 学生姓名:张 何 指导教师:黄 晖 摘 要本方案主要以单片机为核心,主要分为时基电路,逻辑控制电路,放大整形电路,闸门电路,计数电路,锁存电路,译码显示电路七大部分,设计以单片机为核心,被测信号先进入信号放大电路进行放大,再被送到波形整形电路整形,把被测的正弦波或者三角波整
2、形为方波。利用单片机的计数器和定时器的功能对被测信号进行计数。编写相应的程序可以使单片机自动调节测量的量程,并把测出的频率数据送到显示电路显示。本设计以89C51单片机为核心,应用单片机的算术运算和控制功能并采用LED数码显示管将所测频率显示出来。系统简单可靠、操作简易,能基本满足一般情况下的需要。既保证了系统的测频精度,又使系统具有较好的实时性。本频率计设计简洁,便于携带,扩展能力强,适用范围广。关键词 单片机 运算 频率计 LED数码管Abstract The program mainly microcontroller as the core, are divided into time
3、-base circuit, the logic control circuit, amplifier shaping circuit, the gate circuit, the counting circuit, latch circuit, decoding circuit most of the seven shows, design a microcontroller as the core, the measured signal the first amplifier to amplify the incoming signal, and then was sent to the
4、 waveform shaping circuit surgery, the measured sine wave or triangle wave shaping as a square wave. Counter and timer microchip features of the signal count. Write the corresponding program can automatically adjust the measurement range of SCM, and the frequency of the measured data to the display
5、circuit displays. The design of the 89C51 microcontroller core, microcontroller applications and control functions and arithmetic operations with LED digital display tube to the measured frequency is displayed. System is simple, reliable, easy to operate and can basically meet the general needs. Bot
6、h to ensure the accuracy of the system frequency measurement, but also the system has good real-time. The frequency meter design is simple and easy to carry, expansion capability, wide application.Key words: microcontroller operation frequency meter LED digital tube朗读显示对应的拉丁字符的拼音字典 - 查看字典详细内容目 录导 论.
7、1 1.课题背景.1 2. 数字频率计设计的任务与要求.11 数字频率计总体方案设计.2 1.1 方案比较.2 1.2 方案选择.32 数字频率计的硬件系统设计.4 2.1 数字频率计的硬件系统框架.4 2.2 数字频率计的主机电路设计.4 2.3 数字频率计的信号输入电路设计.7 2.4 数字频率计显示电路的设计.8 2.5 数字频率计的计数电路的设计.10 2.6 数字频率计电源模块的设计.123 数字频率计软件系统设计.13 3.1 软件设计规划.13 3.1.1信号处理.13 3.1.2中断控制.13 3.1.3定时器/计数器.14 3.1.4定时工作方式0.15 3.2 程序流程图设
8、计.16 3.2.1主程序流程.16 3.2.2 中断流程.17参考文献.19致 谢.20导 论1.课题背景在电子技术中,频率是最基本的参数之一,并且与许多电参量的测量方案、测量结果都有十分密切的关系,因此频率的测量就显得更为重要。频率计的基本原理是用一个频率稳定度高的频率源作为基准时钟,对比测量其他信号的频率。通常情况下计算每秒内待测信号的脉冲个数,此时我们称闸门时间为1秒。闸门时间也可以大于或小于一秒。闸门时间越长,得到的频率值就越准确,但闸门时间越长则每测一次频率的间隔就越长。闸门时间越短,测的频率值刷新就越快,但测得的频率精度就受影响。数字频率计是用数字显示被测信号频率的仪器,被测信号
9、可以是正弦波,方波或其它周期性变化的信号。如配以适当的传感器,可以对多种物理量进行测试,比如机械振动的频率,转速,声音的频率以及产品的计件等等。2. 数字频率计设计的任务与要求单片机控制的数字频率计1.测频范围:10Hz10KHz。为保证测量精度分三个频段10Hz100Hz,100Hz1KHz,1KHz10KHz,有超量程指示。2.输入波形:函数信号发生器输出方波,矩形波,幅度为5V,能产生所需频率的脉冲信号。3.测量误差:1。1 数字频率计总体方案设计1.1 方案比较方案一:本方案主要以单片机为核心,利用单片机的计数定时功能来实现频率的计数并且利用单片机的动态扫描法把测出的数据送到数字显示电
10、路显示。其原理框图如图1-1所示:信号放大电路信号整形单片机AT89c51电路数字显示 电路图1-1 方案一原理框图方案二:本方案主要以数字器件为核心,主要分为时基电路,逻辑控制电路,放大整形电路,闸门电路,计数电路,锁存电路,译码显示电路七大部分。其原理框图如图1-2所示:逻辑控制电路时基电路放大整形电路闸门电路计数器锁存器译码显示器图1-2 方案二原理框图1.2 方案选择 比较以上两种方案可以知道,方案一的核心是单片机,使用的元器件少,原理电路简单,调试简单只要改变程序的设定值则可以实现不同频率范围的测试能自动选择测试的量程。与方案一相比较方案二则使用了大量的数字元器件,原理电路复杂,硬件
11、调试麻烦。如要测量高频的信号还需要加上分频电路,价格相对高了点。基于上述比较,所以选择了方案一。2 数字频率计的硬件系统设计2.1 数字频率计的硬件系统框架 数字频率计是一个将被测频率显示出来的计数装置,它主要由单片机89C51控制、7407、LED显示器、电源等组成。该系统的功能是将信号输入P3.4口,通过单片机程序控制,对LED显示器进行段控和位控,实现动态显示。数字频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。在进行有关电子技术的设计、安装、调试过程中,由于其使用十进制数显示,测量迅速,精确度高,显示直观,会被经常使用到。图2-1为数字频率计方案框图。7407缓冲器
12、信号处理输入AT89C51单片机7407缓冲器LED数码显示图2-1 数字频率计方框图2.2 数字频率计的主机电路设计 ATC89C51可以完成ISP在线编程功能,ATC89C51内部有EEPROM,可以在程序中修改,断电不丢失。还增加了两级中断优先级,STC推出的系列51单片机芯片是全面兼容其它51单片机的,而且51单片机是主流大军。189C51芯片介绍许多由关硬件设计中都使用到单片机89C51,其功能7比以往的单片机强大的多。89C51引脚图如图2-2所示。图2-2 89C51引脚图芯片引脚功能:主电源引脚Vcc和VssVcc(40脚):接5V电压;Vss(20脚):接地。89C51晶振接
13、法如图2-3。 图2-3 89C51晶振接法图选用6MHz频率的晶体,允许输入的脉冲频率为250kHz。电容的大小范围为20pF40pF,本设计选用30pF电容。2单片机复位状态单片机的复位都是靠外部电路实现的,在时钟电路工作后,只要在单片机的RST引脚上出现24个时钟震荡脉冲(2个机器周期)以上的高电平,单片机便实现初始化状态复位。为了保证应用系统可靠地复位,在设计复位电路时,通常使RST引脚保持10ms以上的高电平。只要保持高电平,则MCS-51单片机就循环复位;当RST从高电平变为低电平以后,MCS-51单片机从0000H地址开始执行程序。在复位有效期间,ALE、 引脚输出高电平。89C
14、51上电复位电路图。图2-4 89C51上电复位电路图单片机复位状态表。 表 2-5 单片机复位状态表专用寄存器复位状态专用寄存器复位状态PC0000HTMOD00HACC00HTCON00HB00HTH000HPSW00HTL000HSP07HTH100HDPTR0000HTL100HP0P3FFHSCON00HIPXXX0 0000BSBUFXXXX XXXXBIE0XX0 0000BPCON0XXX XXXXB 注:XXX不定复位后,P0口P3口输出高电平,且使这些准双向口皆处于输入状态,并且将07H写入栈指针SP(即设定堆栈底为07H),同时,将程序计数器PC和其余的特殊功能寄存器清为
15、0(不定的位除外)。但复位不影响单片机内部的RAM状态2.3 数字频率计的信号输入电路设计7414是六反相施密特触发器集成电路,其基本作用就是反相器,一般用于信号输入电路,用施密特触发器对输入信号进行波形整形。其功能作用如图2-3所示。 图2-3 输入-输出波形图本设计为满足设计要求,被测信号是要进行波形的变换。由第一级的零偏置放大器把正弦波样的正负交替波形变换成单向脉冲,再经过7414将放大器产生的单向脉冲变换成与TTL/CMOS电平相兼容的方波。这样处理以后信号变成方波信号,以便后续的电路进行计数。2.4 数字频率计显示电路的设计在单片机系统中,常用的显示器有:发光二极管显示器,简称LED
16、;液晶显示器,简称LCD;荧光管显示器。而发光二极管显示又分为固定段显示和可以拼装的大型字段显示,此外还有共阳极和共阴极之分等。LED段显示器结构与原理LED显示器是由发光二极管显示字段组成的显示块,有7段和“米”字段之分。这种显示块有共阳极和共阴极两种。此外,显示块中还有一个圆点型发光二极管(在图中以dP表示)用于显示小数点。通过发光二极管亮、暗的不同组,可以显示多中数字、字母以及其他符号。LED显示块中的发光二极管共有两种连接方法:(1)共阳极接法发光二极管的阳极连在一起构成公共阳极。使用时公共阳极接5V,这样,阴极端输入低电平的段的发光二极管被点亮,相应的段被显示;而输入高电平的段则不点
17、亮。(2)共阴极接法发光二极管的阴极连在一起构成公共阴极。使用时公共阴极接地,这样,阳极端输入高电平的段的发光二极管被点亮,相应的段被显示;而输入低电平的段则不点亮。数码管引脚如图2-4。图2-4 数码管引脚图共阴和共阳结构的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各段
18、为0111011时,显示器显示P字符,即对于共阴极LED显示器,“P”字符的字形码是73H。如果是共阳LED显示器,公共阳极接高电平,显示“P”字符的字形代码应为10001100(8CH)。用LED显示器显示十进制转换成十六进制数的字形代码在表2-4中列出。表2-4 LED十六进制的数字代码表字形共阳极代码共阴极代码字形共阳极代码共阴极代码0C0H3FH990H6FH1F9H06HA88H77H2A4H5BHB83H7CH3BOH4FHCC6H39H499H66HDA1H5EH592H6DHE86H79H682H7DHF8EH71H7F8H07H灭FFH00H880H7FH2.5 数字频率计的
19、计数电路的设计74LS290是异步十进制计数器。它由一个二进制计数器和一个异步五进制计数器组成。74LS290引脚图如图2-5所示。图2-5 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输出时,则构成二进制计数器;计数脉冲由CP1输入,输出为Q2Q1Q0时,则构成五进制计数器;若将Q0和
20、CP1相连,计数脉冲由CP0输入,输出为Q3Q2Q1Q0时,则构成十进制(8421码)计数器;若将Q3和CP0相连,计数脉冲由CP1输入,输出为Q3Q2Q1Q0时,则构成十进制(5421码)计数器。因此,74LS290又称为“二五十进制型集成计数器”。异步清零端 MR1,MR2 为高电平时,只要置9端 MS1,MS2有一个为低电平,就可以完成清零功能。当 MS1,MS2 均为高电平时,不管其他输入端状态如何,就可以完成置 9的功能。当 MR1,MR2 中有一个以及 MS1,MS2 中有一个同时为低电平时,在时钟端/CP0,/CP1脉冲下降沿作用下进行计数操作。a) 十进制计数。应将/CP1 与
21、 Q0 连接,计数脉冲由/CP0 输入。b) 二、五混合进制计数。应将/CP0 与 Q1 连接,计数脉冲由/CP1 输入。c) 二分频、五分频计数。Q0 为二分频输出,Q1Q3 为五分频输出。 引出端符号功能如下。 CP0 二分频时钟输入端(下降沿有效) CP1 五分频时钟输入端(下降沿有效)QAQD 输出端MR1,MR2 异步复位端MS1,MS2 异步置9端74LS290的级联扩展如表2-10所示表2-10 74LS290 级联扩展说明CP输入端输出端进制输出状态分频端CP0Q0二0、1Q0为二分频端CP1Q3Q2Q1五000100Q3为五分频端CP0且Q0与CP1相连Q3Q2Q1Q0十00
22、001001Q3为十分频端74LS290十进制的电路连接如图2-11所示。图2-11 74LS290十进制计数器两片接成十进制的74LS290级联组成210=20进制异步加法计数器如图2-12所示。图2-12 二十进制异步加法计数器本设计中因为要对信号进行20分频,所以要使用两块74LS290进行级联。一块74LS290用作2分频,一块74LS290用作10分频。信号由第一块74LS290的CP0输入从Q0输出,这样信号就经过了2分频,再把信号输入第二块74LS290的CP0并且第二块74LS290的CP1与Q0相连,这时从第二块74LS290的Q3输出的信号就已经完成了20分频。2.6 数字
23、频率计电源模块的设计使用变压器提供到AC桥堆的输入脚为9V交流电压,通过AC整流输出为9V直流电,经过电解电容滤波、7805稳压,提供给89C51单片机为5V电压。5V电源电路如图2-14所示。图2-14 5V电源电路图3 数字频率计软件系统设计3.1 软件设计规划3.1.1信号处理 在频率计开始工作,或者完成一次频率测量,系统软件都进行测量初始化。测量初始化模块设置堆栈指针(SP)、工作寄存器、中断控制和定时/计数器的工作方式。定时/计数器的工作首先被设置为计数器的计数寄存器清0后,置运行控制位TR为1,启动对待测信号的计数。计数闸门由软件延时程序实现,从计数闸门的最小值开始,也就是从测量频
24、率的高量程开始。计数闸门结束时TR清0,停止计数。计数寄存器中的值通过16进制数道10进制数转换程序转换为10进制数。对10进制数的最高位进行判别,若该位不为0,满足测量数据有效位数的要求,测量值和量程信息一起送到显示模块;若该位为0,将计数闸门的宽度扩大10倍,重新对待测信号的技术,直到满足测量数据有效位数的要求。待测信号经预处理电路分频后变成较宽的方波信号,并加至单片机的P3.4引脚,为单片机测信号频率提供有效的输入信号。单片机通过检测P3.4引脚来判断是否启动测周期程序。当该引脚为高电平时则等待,知道该引脚出现低电平时才开始测周期。首先将零赋给TH0、TL0两个寄存器,将定时器T0的运行
25、控制位TR0置位,同时也将ET0置位以允许定时器T0终端,然后再判断P3.4引脚是否还为低电平,当不是低电平时则等待。一旦出现低电平则使TR0复位以终止定时器,测周期程序结束。在测周期过程中,会发生定时器T0的中断,每发生一次中断则将R0寄存器加一,因此R0实际上是周期值的高字节。测出的周期值存储在R0、TH0、TL0三个寄存器中,然后将其转换成频率。由于所测周期的单位是s,再相除转换时要将被除数扩大10倍,这样才能保证得出正确的频率。得出的频率放到R1、R2、R3三个寄存器后调用转换BCD代码模块。调用显示消除多余零和显示数据存储模块,将要显示的频率值通过查表转换成相应数据8段码放到现实缓冲
26、区以备显示。3.1.2中断控制 由于在程序设计中用到中断9方式,所以我们在此对单片机中断系统中的中断控制作一下介绍。中断是工业过程控制及智能化仪器用微型机或单片机应用最多的一种数据传送方式。在通常情况下,单片机执行主程序,只有当正常状态出现故障,或发出中断请求时,单片机才暂停执行主程序,转去执行或处理中断服务程序,执行完中断服务程序后,再返回到主程序继续运行。单片机的这一种工作过程称为中断方式。基于资源共享原理上的中断技术,在计算机中得到了广泛的应用。中断技术能实现CPU与外部设备的并行工作,提高CPU的利用率以及数据的输入/输出效率;中断技术也能对计算机运行过程中突然发生的故障及时发现并进行
27、自动处理如:硬件故障、运算错误及程序故障等;中断技术还能使我们通过键盘发出请求,随时对运行中的计算机进行干预,而不用先停机处理,然后再重新开机等。在单片机中,中断技术主要用于实时控制。所谓实时控制,就是要求计算机能及时地响应被控对象提出的分析、计算和控制等请求,使被控对象保持在最佳工作状态,以达到预定的控制效果。由于这些控制参量的请求都是随机发出的,而且要求单片机必须做出快速响应并及时处理,对此,只有靠中断技术才能实现。3.1.3定时器/计数器(1)定时器控制寄存器(TCON)10TCON寄存器既参与中断控制又参与定时控制。现对其定时功能加以介绍。其中有关定时的控制位共有4位:F0和TF1计数
28、溢出标志位当计数器计数溢出(计满)时,该位置“1”;使用查询方式时,此位作状态位供查询,但应注意查询有效后应以软件方法及时将该位清“0”;使用中断方式时,此位作中断标志位,在转向中断服务程序时由硬件自动清“0”。R0和TR1定时器运行控制位TRO(TR1)=0停止定时器/计数器工作TRO(TR1)=1启动定时器/计数器工作(2)工作方式控制寄存器(TMOD)11TMOD寄存器是一个专用寄存器,用于设定两个定时器/计数器的工作方式。但TMOD寄存器不能位寻址,只能用字节传送指令设置其内容。(3)中断允许控制寄存器(IE)12EA中断允许总控制位ET0和ET1定时/计数中断定时器/计数器提供给用户
29、使用的有:8位计数器TH和TL,以及有关的控制位。这些内容只能以软件方法使用。能够产生中断申请的部件被称为中断源。8051型单片机提供了五个中断源:两个外部中断源和三个内部中断源。每一个中断源都有一个中断申请标志位,但是串行口占有两个中断标志位。一共有六个中断标志位。(4)定时器/计数器对输入信号的要求定时器/计数器的两个作用是用来精确的确定某一段时间间隔13(作定时器用)或累计外部输入的脉冲个数(作计数器用)。当用作定时器时,在其输入端输入周期固定的脉冲,根据定时器/计数器中累计(或事先设置)的脉冲个数,即可计算出所定时间的长度。当89C51内部的定时器/计数器被选择为定时器工作方式时,计数
30、输入信号是内部时钟脉冲,每个机器周期产生一个脉冲使计数器增1。因此,定时器/计数器的输入脉冲周期与机器周期一样,为振荡频率的1/12。当采用12MHz频率的晶体时,计数频率为1MHz,输入脉冲的周期间隔为1s14。由于定时的精度决定于脉冲的周期,因此,当需要高精度的定时器时,应尽量选择频率较高的晶体。3.1.4定时工作方式0方式0是13位计数结构的工作方式15,其计数器由TH0高8位和TL0的低五位构成。TL0的高3位弃之不用。当C/=0时,多中开关接通振荡脉冲的12分频输出,13位计数器以此进行计数,这就是所谓定时器工作方式。当C/=116时,多路开关接通计数引脚(T0),外部计数脉冲由引脚
31、T0输入。当计数脉冲发生负跳变时,这就是所谓计数工作方式。不管是哪种工作方式,当TL0的低五位计数溢出时,向TH0进位,而全部13位计数溢出时,则向计数溢出标志位TF0进位。3.2 程序流程图设计3.2.1主程序流程主程序流程图如图3-1所示。频率放大读取当前计数值重新启动T0、T1中断,重新进行测量结果显示YNKey=1开始图3-1 主程序流程图3.2.2 中断流程T1中断流程图如图3-2所示。图3-2 T1中断流程图T0中断流程图如图3-2所示。图3-2 T0中断流程图 中断程序实现定时与计数的功能。T1进行定时,定时时间为1S。T0进行计数,TO中断溢出一次,T0count加1。当定时达
32、到1S时,停止T0,T1。最后计算相应的频率值。参考文献1陈敬远.数字频率计的VHDL设计J.浙江传媒学院学报; 2002,01: 36-38;2何均 ,杨明.适合于单片机实现的极值搜索算法J.单片机与嵌入式系统应用,2004,24;3杜玉远.基于top-down方法的数字频率计的设计与实现J.电子世界, 2004,5: 30-32;4钱进.基于AT89C2051的高度精度数字频率计的设计J.机电产品开发与创新,2007,20(1):86-87;5冯雷星,杨伟,芦燕龙.基于单片机高性价比频率计的设计与实现B.微计算机信息,2007,20;6赫建国,刘立新,党剑华.基于单片机的频率计设计J.西安
33、邮电学院学报,2003,03:34-37+75;7张毅刚.单片机原理及应用.高等教育出版社M,2003.12(1);8 Control Circuit Design of AC Frequency Conversion Systems for Speed Governing A,Proceedings of 4th International Symposium on Test and Measurement(Volume 2) C,2001;9The measurement of oil consumption on engineA,Proceedings of 4th Internatio
34、nal Symposium on Test and Measurement(Volume 2) C,2001;10施剑鸣.单片机测频技术及测量精度的提高A.江苏省计量测试学会2005年论文集 C,2005;11谢煌,黄为.基于VHDL语言设计频率计J.北京现代电子技术,2003,14;12杜刚,高军,童宁宁.基于AT89C2051单片机的频率计设计J.微计算机应用,2004,25(4):498-501;13刘雪根.数字频率计的误差分析J.自动化与仪表,1996,3:23-24;14顾巨峰,周浩洋,朱建华.基于可编程逻辑器件(Lattice)的多功能数字频率计J.电子工程师,2002,1:28-
35、32;15王丽霞,程小辉,龚幼民.基于LM331的频率计J.仪表技术与传感器; 2007,09;16吴慎山,王芳,吴东芳,吴雪冰,万霞.智能单片机频率计的原理与设计J.河南师范大学学报(自然科学版),2004,02:47-49.致 谢感谢学校和老师对我的培养,给我这个自己动手的机会和空间。经过一段时间,终于在指导老师的帮助指导下完成了课程设计,对自己的能力有了很大的提升。在此我要感谢每一个帮助过我的人。首先,我要感谢的是我的指导老师黄晖老师,在百忙之中抽出时间为我的设计指点,提供帮助,他的学习作风和优良的教学研究精神是我永远学习的榜样。再次我要感谢我的同学,在我最困难的时候伸出援助之手,用他们的智慧帮我解决各个难题。总而言之,感谢每一位关心过我的人,他们今天对我的付出,成为我将来工作的动力。19