基于单片机的电子频率计的设计毕业设计.docx
- 文档编号:28877273
- 上传时间:2023-07-20
- 格式:DOCX
- 页数:48
- 大小:789.66KB
基于单片机的电子频率计的设计毕业设计.docx
《基于单片机的电子频率计的设计毕业设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的电子频率计的设计毕业设计.docx(48页珍藏版)》请在冰豆网上搜索。
基于单片机的电子频率计的设计毕业设计
毕业设计(论文)
题 目:
基于单片机的电子频率计的设计
论文摘要
本文介绍了一种基于单片机的电子频率计的设计方法。
此电子频率计以AT89C51单片机为控制核心,可将外部的频率脉冲信号通过单片机计数端输入,由定时器/计数器T0负责定时,定时器/计数器T1负责对被测信号计数,一旦T0定时时间到,立刻终止T1的计数,此时T1的计数值便是单位时间内的脉冲个数,我们将T0的定时时间设为1s,当T0定时满1s后,立即停止T1计数,此时T1的计数值即为被测信号的频率。
该频率计的测量范围为1Hz~65534Hz,被测脉冲信号的频率可以随时进行调整,通过LCD液晶显示模块对被测信号的频率进行实时显示。
该系统包括被测频率脉冲信号、单片机晶振电路、以AT89C51单片机为核心的频率测量模块、LCD液晶显示模块。
关键词:
频率计;AT89C51;脉冲信号;LCD显示模块
Abstract
ThisarticletellsthestoryofakindofbasedonSCMelectronicfrequencymeterdesignmethod.TheelectronicfrequencyplantoAT89C51ascontrolcore,Butwillthefrequencyoftheexternalpulsesignalthroughthesingle-chipmicrocomputercounttheinput,Thetimer/counterT0prearcingresponsiblefortiming,Thetimer/counterT1isresponsibletothemeasuredsignalcount,Oncetheprearcingtimetotime,ImmediatelyterminatetheT1count,AtthistimethecountvalueT1unitoftimeisthenumberofthepulse,Wewillregularlytosetatimeoftheprearcing1s,Whenprearcingtimefull1s,StopimmediatelyT1count,AtthistimethecountvaluewhichisT1testedthefrequencyofthesignal.Thefrequencyofmeasurementoftheindicatorarangeof1Hz~65534Hz,testedpulsethefrequencyofthesignalcanbeadjustedatanytime,throughtheLCDdisplaymodulestobemeasuredthefrequencyofthesignalforreal-timedisplay.Thesystemincludestestedfrequencypulsesignalandsingle-chipmicrocomputercrystalscircuit,AT89C51frequencymeasurementmodules,LCDmodule.
KeyWords:
Thefrequencymeter;AT89C51;pulsesignal;LCDdisplaymodule
第1章引言
频率测量是电子学测量中最为基本的测量之一。
由于频率信号抗干扰性强,易于传输,因此可以获得较高的测量精度。
随着数字电子技术的发展,频率测量成为一项越来越普遍的工作,测频原理和测量方法的研究正受到越来越多的关注。
1.1频率计的概述
图1-1多用频率计
频率计又称为频率计数器,是一种专门对被测信号频率进行测量的电子测量仪器。
频率计主要由四个部分构成:
时基(T)电路、输入电路、计数显示电路以及控制电路。
频率计也是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。
它是一种用十进制数字显示被测信号频率的数字测量仪器。
它的基本功能是测量正弦信号、方波信号及其他各种单位时间内变化的物理量。
在进行模拟、数字电路的设计、安装、调试过程中,由于其使用十进制数显示,测量迅速,精确度高,显示直观,经常要用到频率计。
单片机对频率量有两种测量方法:
测量频率法和测量周期法。
测量频率法是在单位定时时间内,对被测信号脉冲进行计数;测量周期法是在被测信号周期时间内,对某一基准脉冲进行计数。
本次设计采用测量频率法对被测脉冲信号进行频率测量,并且通过LCD液晶显示模块进行实时显示。
1.2频率计的基本原理
频率计最基本的工作原理为:
当被测信号在特定时间段T内的周期个数为N时,则被测信号的频率f=N/T(如图1-2所示)。
在一个测量周期过程中,被测周期信号在输入电路中经过放大、整形、微分操作之后形成特定周期的窄脉冲,送到主门的一个输入端。
主门的另外一个输入端为时基电路产生电路产生的闸门脉冲。
在闸门脉冲开启主门的期间,特定周期的窄脉冲才能通过主门,从而进入计数器进行计数,计数器的显示电路则用来显示被测信号的频率值,内部控制电路则用来完成各种测量功能之间的切换并实现测量设置。
图1-2频率测量基本原理
1.3频率计的应用范围
在传统的电子测量仪器中,示波器在进行频率测量时测量精度较低,误差较大。
频谱仪可以准确的测量频率并显示被测信号的频谱,但测量速度较慢,无法实时快速的跟踪捕捉到被测信号频率的变化。
正是由于频率计能够快速准确的捕捉到被测信号频率的变化,因此,频率计拥有非常广泛的应用范围。
在传统的生产制造企业中,频率计被广泛的应用在产线的生产测试中。
频率计能够快速的捕捉到晶体振荡器输出频率的变化,用户通过使用频率计能够迅速的发现有故障的晶振产品,确保产品质量。
在计量实验室中,频率计被用来对各种电子测量设备的本地振荡器进行校准。
在无线通讯测试中,频率计既可以被用来对无线通讯基站的主时钟进行校准,还可以被用来对无线电台的跳频信号和频率调制信号进行分析。
1.4本频率计设计任务的主要内容
利用频率脉冲信号、单片机、单片机晶振电路、LCD液晶显示等模块设计一个简易的频率计能够粗略的测量出被测信号的频率。
参数要求如下:
1.测量范围1Hz~65534Hz;
2.被测脉冲信号的频率可随时调节
3.用LCD液晶显示模块实时显示测量值
4.用单片机实现自动测量功能
第2章系统的总体方案设计
2.1测频的原理
所谓“频率”就是周期性信号在单位时间(1s)内变化的次数,测频的原理归结成一句话,就是“在单位时间内对被测信号进行计数”。
我们将被测的频率脉冲信号直接送到单片机的计数输入端,由定时器/计数器T0负责定时,定时器/计数器T1负责对被测信号计数,一旦T0定时时间到,立刻终止T1的计数,此时T1的计数值便是单位时间内的脉冲个数。
若在一定时间间隔T内测得这个周期性信号的重复变化次数N,则其频率可表示为f=N/T。
我们将T0的定时时间设为1s,当T0定时满1s后,立即停止T1计数,此时T1的计数值即为被测信号的频率。
定时
待测信号
丢失 图2-1频率测量原理图 在计数时会出现图2-1所示的丢失脉冲的情况。 第一个丢失的脉冲是由于开始检测时脉冲宽度已小于机器周期T;第二个丢失的脉冲的负跳变在定时之外。 定时时间内出现脉冲丢失,将引起测量精度降低。 脉冲频率越低,这种误差越大。 显然对于较低频率的脉冲测量不适合采用测量频率法。 而我们本次设计就是采用这种测量频率法对被测脉冲信号进行频率测量,为解决图一中脉冲的丢失这个问题,我们在程序设计中实现了计数开始与脉冲上升沿的同步控制。 2.2总体思路 频率计是一种专门对被测信号频率进行测量的电子测量仪器,是我们经常会用到的实验仪器之一,频率的测量实际上就是在单位时间内对脉冲信号进行计数,计数值就是信号频率。 本文介绍了一种基于单片机的电子频率计的设计方法,此电子频率以AT89C51单片机为控制核心,可将外部的频率脉冲信号通过单片机计数端输入,由定时器/计数器T0负责定时,定时器/计数器T1负责对被测信号计数,一旦T0定时时间到,立刻终止T1的计数,此时T1的计数值便是单位时间内的脉冲个数,我们将T0的定时时间设为1s,当T0定时满1s后,立即停止T1计数,此时T1的计数值即为被测信号的频率。 该频率计的测量范围为1Hz~65534Hz,被测脉冲信号的频率可以随时进行调整,通过LCD液晶显示模块对被测信号的频率进行实时显示。 2.3具体模块 根据上述系统分析,该系统包括被测频率脉冲信号、单片机晶振电路、以AT89C51单片机为核心的频率测量模块、LCD液晶显示模块。 各模块作用如下: 1.脉冲信号: 就是被测信号,可以随时调整其频率,以便于单片机测量。 2.单片机晶振电路: 由于单片机的内部时钟方式是用芯片内部振荡电路,精度不高,温飘也较大,外部时钟,分RC振荡和石英晶振,RC精度不高,成本低,石英晶振,精度高,稳定性好,故我们采用单片机的晶振电路提供时钟信号。 3.AT89C51频率测量模块: 主要负责对脉冲信号的计数,并且驱动LCD显示模块实时显示测量值。 4.LCD液晶显示模块: 对单片机测量的频率进行实时显示。 综上所述频率计的系统设计由被测频率脉冲信号、单片机晶振电路、以AT89C51单片机为核心的频率测量模块、LCD液晶显示模块等组成,频率计的总体设计框图如图2-2所示。 AT89C51 单片机 单片机晶振电路 LCD液晶显示模块 被测频率脉冲信号 图2-2频率计总体设计框图 第3章硬件电路设计 3.1AT89C51主控制器模块 电子频率计以AT89C51单片机为控制核心,可将外部的频率脉冲信号通过单片机计数端输入,由定时器/计数器T0负责定时,定时器/计数器T1(P3.5)负责对被测信号计数,一旦T0定时时间到,立刻终止T1的计数,此时T1的计数值便是单位时间内的脉冲个数,我们将T0的定时时间设为1s,当T0定时满1s后,立即停止T1计数,此时T1的计数值即为被测信号的频率。 图3-1AT89C51主控模块 AT89C51单片机简介 图3-2几种单片机的展示图 AT89C51是一种带4K字节FLASH存储器(FPEROM—FlashProgrammableandErasableReadOnlyMemory)的低电压、高性能CMOS8位微处理器,俗称单片机。 AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。 单片机的可擦除只读存储器可以反复擦除1000次。 该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。 由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。 AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。 图3-3AT89C51单片机 1.主要特性 与MCS-51兼容;4K字节可编程FLASH存储器;寿命: 1000写/擦循环;数据保留时间: 10年;全静态工作: 0Hz-24MHz;三级程序存储器锁定;128×8位内部RAM;32可编程I/O线;两个16位定时器/计数器;5个中断源;可编程串行通道;低功耗的闲置和掉电模式;片内振荡器和时钟电路。 特性概述: AT89C51提供以下标准功能: 4k字节Flash闪速存储器,128字节内部RAM,32个I/O口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。 同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。 空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。 掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。 2.管脚说明 VCC: 供电电压。 GND: 接地。 P0口: P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。 当P0口的管脚第一次写1时,被定义为高阻输入。 P0能够用于外部程序数据存储器,它可以被定义为数据/地址的低八位。 在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须接上拉电阻。 P1口: P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。 P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。 在FLASH编程和校验时,P1口作为低八位地址接收。 P2口: P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。 并因此作为输入时,P2口的管脚被外部拉低,将输出电流。 这是由于内部上拉的缘故。 P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。 在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。 P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口: P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。 当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。 作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。 P3口也可作为AT89C51的一些特殊功能口,如表3-1所示: 表3-1AT89C51的一些特殊功能口 P3.0RXD 串行输入线 P3.1TXD 串行输出线 P3.2 外部中断0输入线 P3.3 外部中断1输入线 P3.4T0 定时器0外部输入线 P3.5T1 定时器1外部输入线 P3.6 片外RAM写选通信号 P3.7 片外RAM读选通信号 RST: 复位输入。 当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。 ALE/ : 当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。 在FLASH编程期间,此引脚用于输入编程脉冲。 在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。 因此它可用作对外部输出的脉冲或用于定时目的。 然而要注意的是: 每当用作外部数据存储器时,将跳过一个ALE脉冲。 如想禁止ALE的输出可在SFR8EH地址上置0。 此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。 另外,该引脚被略微拉高。 如果微处理器在外部执行状态ALE禁止,置位无效。 : 外部程序存储器的选通信号。 在由外部程序存储器取指期间,每个机器周期两次 有效。 但在访问外部数据存储器时,这两次有效的 信号将不出现。 /VPP: 当 保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。 注意加密方式1时, 将内部锁定为RESET;当 端保持高电平时,此间内部程序存储器。 在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 XTAL1: 反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2: 来自反向振荡器的输出。 振荡器特性: XTAL1和XTAL2分别为反向放大器的输入和输出。 该反向放大器可以配置为片内振荡器。 石晶振荡和陶瓷振荡均可采用。 如采用外部时钟源驱动器件,XTAL2应不接。 有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。 3.2晶振电路 由于单片机的内部时钟方式是用芯片内部振荡电路,精度不高,温飘也较大,外部时钟,分RC振荡和石英晶振,RC精度不高,成本低,石英晶振,精度高,稳定性好,故我们采用单片机的晶振电路提供时钟信号。 图3-4晶振电路 3.3频率脉冲信号 频率脉冲信号就是被测信号,可以随时调整其频率,以便于单片机测量,直接在protues左侧工具条内的一个GeneratorMode工具中选择DCLOCK放置频率脉冲信号(如图3-5)。 图3-5频率脉冲信号 3.4LCD液晶显示模块 LCD液晶显示器是一种被动式的显示器,与LED不同,液晶本身并不发光,而是利用液晶在电压作用下,能改变光线通过方向的特性而达到显示白底黑字或黑底白字的目的。 液晶显示器具有微功耗、体积小、重量轻、超薄型等诸多其他显示器件所无法比拟的优点,在袖珍式仪表和低功耗系统中,得到越来越广泛的应用,目前市场上液晶显示器种类繁多,按排列形状可分为字段型、点阵字符型、点阵图形型,在单片机应用系统中,常使用点阵字符型LCD显示器。 字符型液晶显示模块是专门用于显示字母、数字、符号等的点阵型液晶显示模块,分4位和8位数据传输方式;提供“5 7点阵+光标”和“5 10点阵+光标”的显示模式;提供显示数据缓冲区DDRAM、字符发生器CGROM和字符发生器CGRAM,可以使用CGRAM来存储自己定义的最多8个5 8点阵的图形字符的字模数据;提供丰富的指令设置: 清显示、光标回到原点、显示开/关、光标开/光、显示字符闪烁、光标移位等;提供内部上电自动复位电路,当外加电源电压超过+4.5V时,自动对模块进行初始化操作,将模块设置为默认的显示工作状态。 字符型液晶显示模块组件内部主要由LCD显示屏(LCDPanel)、控制器(Controller)、驱动器(Driver)、少量阻容原件、结构件等装配在PCB上构成,如图3-6所示 DB7COM16 DB0 ESEG40 R/WSEG40 RS VEE VCC VSS 图3-6字符型液晶显示模块 字符型液晶显示模块目前在国际上已经规范化,无论显示屏规格如何变化,电特性和接口形式都是统一的,因此只要设计出一种型号的接口电路,在指令设置上稍加改动即可使用各种规格的字符型液晶显示模块。 我们本设计采用的是字符型液晶显示模块LM016L。 LM016L模块简介 图3-7液晶显示模块LM016L 1.引脚说明 VSS (1): 电源地。 VDD (2): 电源电压,接5V正电压。 VEE(3): 液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。 RS(4): 寄存器选择,高电平时选择数据寄存器,低电平时选择指令寄存器。 RW(5): 读写信号线,高电平时进行读操作,低电平时进行写操作。 当RS和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平时可读忙信号,当RS为高电平RW为低电平时可写入数据。 E(6): 显示板控制使能端,当E断由高电平跳变成低电平时,液晶模块执行命令。 D0~D7(7~14): 8位双向三态I/O口线。 2.指令说明 字符型LCD显示板控制器有11条指令。 他的读写操作,以及屏幕和光标的操作都是通过指令编程来实现的。 LCD控制器的11条指令如表3-1所列。 表3-1LCD控制器指令表 指令 RS RW D7 D6 D5 D4 D3 D2 D1 D0 清显示 0 0 0 0 0 0 0 0 0 0 光标返回 0 0 0 0 0 0 0 0 1 * 置输入模式 0 0 0 0 0 0 0 1 I/D S 显示开/关控制 0 0 0 0 0 1 D C B 光标或字符移位 0 0 0 0 0 1 S/C R/L * * 置功能 0 0 0 0 1 DL N F * * 置字符发生存储器地址 0 0 1 字符发生存储器地址(AGG) 置数据存储器地址 0 0 1 显示数据存储器地址(ADD) 读忙标志或地址 0 1 BF 计数器地址(AC) 写数到CGRAM或DDRAM 1 0 要写的数 从CGRAM或DDRAM读数 1 1 读出的数据 下面是指令表中D0~D7位所使用字符的说明。 I/D=1/0: 增量或减量; S=1: 全显示屏移动/光标移动; S/C=1/0: 显示屏移动/光标移动; R/L=1/0: 右移/左移; DL=1/0: 8位/4位; N=1/0: 2行/1行; F=1/0: 5 10点阵/5 7点阵; BF=1/0: 内部操作正在进行/允许指令操作; *: 无关项; 下面逐条解释各指令的功能。 指令1: 清显示,光标复位到地址00H位置。 指令2: 光标复位,光标返回到地址00H。 指令3: 读/写方式下的光标和显示模式设置命令。 I/D: 表示地址计数器的变化方向,即光标移动的方向。 I/D=1: AC自动加1,光标右移一字符位。 I/D=0: AC自动减1,光标左移一字符位。 S: 显示屏上向左向右全部平移的方向。 S=0: 无效;S=1: 有效。 S=1,I/D=1: 显示画面左移; S=1,I/D=0: 显示画面右移。 指令4: 显示开关控制,控制显示、光标和光标闪烁的开关。 D: 当D=0时显示关闭,DDRAM中数据保持不变。 C: 当C=1时显示光标。 B: 当B=1时光标闪烁。 指令5: 光标或显示移位。 DDRAM中内容保持不变。 S/C=1时,移动显示;S/C=0时,移动光标。 R/L=1时,为右移;R/L=0时,为左移。 指令6: 功能设置命令。 DL=1时,内部总线为4位宽度DB7~DB4;DL=0时,内部总线为8位宽度。 N=0时,单行显示;N=1时,双行显示。 F=0时,为显示字形5 7点阵;F=1时,为显示字形5 10点阵。 指令7: CGRAM地址设置。 指令8: DDRAM地址设置。 指令9: 读状态标志和AC中地址。 指令10: 写数据。 指令11: 读数据。 第4章系统的软件设计 采用模块化的程序设计方法,将整个程序分为两个模块: 频率测量模块和液晶显示模块。 4.1频率测量模块 将定时器T0设置在定时方式2,定时时间为250us,满4000次中断正好是1s,定时器T1工作于计数方式1,计数初值为0。 在启动定时器T0开始定时后,随即对送到T1(P3.5)引脚的被测脉冲进行计数,当T0定时满1s后,立即停止T1计数,关闭定时器T0,T1的计数值即为被测信号的频率,程序流程图如图4-1。 开始 设置T0定时方式2,T1计数方式1 设置T0定时时间为250us,T0中断4000次 设置T
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 电子 频率计 设计 毕业设计