基于单片机的数字频率计设计.docx
- 文档编号:7051543
- 上传时间:2023-01-16
- 格式:DOCX
- 页数:13
- 大小:261.90KB
基于单片机的数字频率计设计.docx
《基于单片机的数字频率计设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的数字频率计设计.docx(13页珍藏版)》请在冰豆网上搜索。
基于单片机的数字频率计设计
基于单片机的数字频率计设计
摘要
随着电子信息产业的不断发展,信号频率的测量在科技研究和实际应用中的作用日益重要。
传统的频率计通常是用很多的逻辑电路和时序电路来实现的,这种电路一般运行缓慢,而且测量频率的范围比较小。
考虑到上述问题,本论文设计一个基于单片机技术的数字频率计。
首先,我们把待测信号经过放大整形;然后把信号送入单片机的定时计数器里进行计数,获得频率值;最后把测得的频率数值送入显示电路里进行显示。
本文从频率计的原理出发,介绍了基于单片机的数字频率计的设计方案,选择了实现系统得各种电路元器件,并对硬件电路进行了仿真。
目录
第一章前言--------------------------------------------------------1
1.1频率计概述-----------------------------------------------------1
1.2频率计发展与应用----------------------------------------------
1.3频率计设计内容-----------------------------------------------
第二章系统总体方案设计-------------------------------------------
2.1频率测量原理---------------------------------------------------
2.2频率测量方法---------------------------------------------------
2.4设计模块-------------------------------------------------------
第三章硬件电路的具体设计-----------------------------------------
3.1信号处理电路---------------------------------------------------
3.1.1放大整形电路的必要性------------------------------------------
3.1.2放大整形电路的原理-------------------------------------------
3.2分频模块设计--------------------------------------------------
3.3单片机控制模块----------------------------------------------
3.3.1AT89C52简介----------------------------------------------
3.4ADC0832简介与应用------------------------------------------
3.4.1ADC0832简介----------------------------------------------
3.4.2ADC0832特点----------------------------------------------
3.4.3单片机对ADC0832的控制--------------------------------------
3.5显示模块-----------------------------------------------------
第四章系统的软件设计---------------------------------------------
第五章频率计的系统调试------------------------------------------
5.1放大整形电路调试-----------------------------------------------
5.1.1放大电路调试----------------------------------------------
5.1.2整形电路调试----------------------------------------------
5.2分频电路调试----------------------------------------------
5.3软件调试-----------------------------------------------------
5.3.1Pouteus软件调试--------------------------------------------
5.3.2------------------------------------------------------------
第一章前言
频率测量是电子学测量中最为基本的测量之一。
由于频率信号抗干扰性强,易于传输,因此可以获得较高的测量精度。
随着数字电子技术的发展,频率测量成为一项越来越普遍的工作,测频原理和测频方法的研究正受到越来越多的关注。
1.1频率计概述
数字频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。
它是一种用十进制数字显示被测信号频率的数字测量仪器。
它的基本功能是测量正弦信号、方波信号及其他各种单位时间内变化的物理量。
在进行模拟、数字电路的设计、安装、调试过程中,由于其使用十进制数显示,测量迅速,精确度高,显示直观,经常要用到频率计。
传统的频率计采用测频法测量频率,通常由组合电路和时序电路等大量的硬件电路组成,产品不但体积大,运行速度慢而且测量低频信号不准确。
本次采用单片机技术设计一种数字显示的频率计,测量准确度高,体积小等优点。
1.2频率及发展与应用
在我国,单片机已不是一个陌生的名词,它的出现是近代计算机技术的里程碑事件。
单片机作为最为典型的嵌入式系统,它的成功应用推动了嵌入式系统的发展。
单片机已成为电子系统的中最普遍的应用。
单片机作为微型计算机的一个重要分支,其应用范围很广,发展也很快,它已成为在现代电子技术、计算机应用、网络、通信、自动控制与计量测试、数据采集与信号处理等技术中日益普及的一项新兴技术,应用范围十分广泛。
其中以AT89C52为内核的单片机系列目前在世界上生产量最大,派生产品最多,基本可以满足大多数用户的需要。
1.3频率计设计内容
利用电源、单片机、分频电路及数码管显示等模块,设计一个简易的频率计能够粗略的测量出被测信号的频率。
参数要求如下:
1.测量范围1HZ—50kHZ;
3.可以测量方波、三角波及正弦波等多种波形;
2.用液晶显示屏显示测量值。
第二章系统总体方案设计
2.1频率测量原理
数字频率计的主要功能是测量周期信号的频率。
频率是单位时间(1S)内信号发生周期变化的次数。
也就是在给定的1S时间内对信号波形计数,并将计数结果显示出来,就能读取被测信号的频率。
数字频率计首先必须获得相对稳定与准确的时间,同时将被测信号转换成幅度与波形均能被数字电路识别的脉冲信号,然后通过计数器计算这一段时间间隔内的脉冲个数,将其换算后显示出来。
这就是数字频率计的基本原理。
2.2频率测量方法
频率测量是电子测量领域的最基本测量,通常有两种方法。
(1)计数法。
指在一定的时间间隔T内,对输入的周期信号脉冲计数为N,则信号的频率为F=N/T。
测量的相对误差为1/N*100%。
这种方法适合于高频测量,信号的频率越高,相对误差越小。
(2)测周法。
这种方法用计量在被测信号一个周期内频率为f的标准信号的脉冲数N来间接测量频率,F=f/N。
显然,被测信号的周期越长(频率越低),测得的标准信号的脉冲数N越大,相对误差越小。
2.3总设计思路
频率计是我们经常会用到的实验仪器之一,频率的测量实际上就是在单位时间内对信号进行计数,计数值就是信号频率。
本文介绍了一种基于单片机AT89C52制作的频率计的设计方法,所制作的频率计测量比较高的频率采用计数法,测量较低频率值时采用测周法。
该频率计实现1HZ~50KHZ的频率测量,可以测量正弦波、三角波及方波等各种波形的频率值。
2.4设计模块
根据上述系统分析,频率计系统设计共包括四大模块:
单片机控制模块、放大整形模块、分频模块及显示模块。
各模块作用如下:
1、单片机控制模块:
以AT89C52单片机为控制核心,来完成它待测信号的计数,译码,和显示以及对分频比的控制。
利用其内部的定时/计数器完成待测信号周期/频率的测量。
单片机AT89C52内部具有2个16位定时/计数器,定时/计数器的工作可以由编程来实现定时、计数和产生计数溢出时中断要求的功能。
2、放大整形模块:
放大电路是对待测信号的放大,降低对待测信号幅度的要求。
整形电路是对一些不是方波的待测信号转化成方波信号,便于测量。
3、分频模块:
考虑单片机外部计数,使用12MHz时钟时,最大计数速率为500kHz,因此需要外部分频。
分频电路用于扩展单片机频率测量范围,并实现单片机频率测量使用统一信号,可使单片机测频更易于实现,而且也降低了系统的测频误差。
4、显示模块:
采用液晶显示屏显示。
综合以上频率计系统设计有单片机控制模块、放大整形模块、分频模块及显示模块等组成。
第三章硬件电路的具体设计
3.1信号处理电路
3.1.1放大整形电路的必要性
因为在单片机计数中只能对脉冲波进行计数,而实际中需要测量频率的信号是多种多样的,有脉冲波、还有可能有正弦波、三角波等,所以需要一个电路。
把待测信号转化为可以进行计数的脉冲波。
所以需要设计一个整形电路,则在测量的时候,首先通过整形电路将正弦波或者三角波转化成脉冲波。
在整形之前由于不清楚被测信号的强弱情况,所以在通过整形之前需要进行放大衰减处理。
当输入信号电压幅度较大时,通过输入衰减电路将电压幅度降低。
当输入信号电压幅度较小时,则调节输入放大的增益,被测信号得以放大。
因为单片机的I/O口需要达到一定的电压才能够导通,因此必须要保证输入信号足够强。
其次,单片机对输入信号是通过采样的方式进行辨识的,如果信号没有经过整形,存在较多毛刺,或者高低不同的电平,那会使采样的误差较大,失真度较高。
3.1.2.放大整形电路的原理
放大整形电路包括信号放大和信号整形,运算放大器采用UA741构成,整形电路采用555,利用施密特触发器将边缘缓慢变化的周期信号如三角波,正弦波的模拟信号变换成同频率的矩形脉冲。
3.2分频模块设计
由于本次设计的测量频率范围为1-1MHZ,量程范围较大,单片机不能直接测量,需要先将频率范围分段,对于不同的频率段需要采用不同的分频。
本设计采用两个74HC393计数器,连接成一个分频电路。
74HC393由两个2分频,2个4分频,2个8分频,2个16分频组成,若选用2分频的话外围电路需要的器件较多,若选用16分频则误差相对较大。
为了减小误差及减小复杂度,本设计采用8分频,选用一个393最多用到2个8分频端。
用软件控制RESET,并且时钟下降沿有效。
当时钟信号为低电平时,计数器加1。
实现频率的测量。
图2-6为具体设计出的分频电路图,本次设计分频电路根据测量频率范围要求,用到了2个74HC393分频器U3:
A、U3:
B组成。
经过放大整形后的方波直接进入第一次分频用到的U3:
A分频器,2个393分频器均利用Q3输出8分频。
3.3单片机控制模块
3.3.1AT89C52简介
AT89C52是高性能CMOS-8位单片机,片内具有8Kbytes的可反复擦写的只读程序存储器(PEROM)和256bytes的随机存取数据存储器(RAM),器件采用高密度、非易失性存储技术生产,与标准MCS-51指令系统及8052产品引脚兼容,片内置通用8位中央处理器(CPU)和FLASH由存储单元,功能强大的AT89C52单片适用于许多较为复杂控制应用场合。
AT89C52提供以下标准功能:
8字节FLASH闪速存储器,256字节内部RAM,32个I/O口线,3个16位定时/计数器,一个6向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。
同时,AT89C52可降至OHZ的静态逻辑操作,并支持两种软件可选的节电上作模式。
空闲方式停止CPU的工作,但允许RAM,定时/计数器.串行通信口及中断系统继续工作。
掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。
3.3.2AT89C52功能引脚说明:
1.VCC:
电源电压
2.GND:
地
3.P0:
P0口是一组8位漏极开路型双向1/O口,也即地址/数据总线复用口。
作为输出口用时.每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口P0写“1”时,可作为高阻抗输入端用。
在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。
在FLASH由编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。
4.P1口:
PI是一个带内部上拉电阻的8位双向I/O口,Pl的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。
作输入口使用时,因为内部存在上拉电阻某个引脚被外部信号拉低时会输出一个电流IIL。
与AT89C51不同之处是,Pl.0和P1.1还可分别作为定时/计数器2的外部计数输入(Pl.0/T2)和输入(P1.1/T2EX)。
5.P2口:
P2口是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑电路。
对端口P2写“l",通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(llt)。
在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOvx@DPTR指令)时,P2送出高8位地址数据。
在访问8位地址的外部数据存储器、如执行MOVX@RI指令)时,P2口输出P2锁存器的内容。
FLASH编程或校验时,P2亦接收高位地址和一些控制信号。
6.P3口:
P3口是一组带有内部上拉电阻的8位双向I/O口。
P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。
此时,被外部拉低的P3口将用上拉电阻输出电流(IIL)。
P3口除了作为一般的I/0口线外,更重要的用途是它的第二功能,如下所示:
P3.0--RXD(串行输入口)
P3.1--TXD(串行输出口)
P3.2--INTO(外中断0)
P3.3--INTO(外中断l)
P3.4--TO(定时/计数器0)
P3.5--T1(定时/计数器l)
P3.6--WR(外部数据存储器写选通)
P3.7--RD(外部数据存储器读选通)
此外,P3口还接收一些用于FLASH闪速存储器编程和程序校验的控制信号。
7.RST:
复位输入。
当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。
8.ALE/PROG:
当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节.一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。
要注意的是:
每当访问外部数据存储器时将跳过一个ALE脉冲。
如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位.可禁止ALE操作。
该位置位后,只有一条MOVX和MOVC指令才能将ALE激活,此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。
9.PSEN:
程序储存允许PSEN输出是外部程序存储器的读选通信号,当AT89C52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。
在此期间,当访问外部数据存储器,将跳过两次PSEN信号。
EA/VPP:
外部访问允许。
欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地).需注怠的是:
如果加密位LBI被编程,复位时内部会锁存EA端状态。
如EA端为高电平(接Vcc端),CPU则执行内部程序存储器中的指令。
10.XTAL1:
振荡器反相放大器的及内部时钟发生器的输入端.
11.XTAL1:
振荡器反相放大器的输出端。
特殊功能寄存器:
在AT89C52片内存储器中,80H-FFH共128个单元为特殊功能寄存器(SFE),SFR的地址空间映象如表2所示。
并非所有的地址都被定义,从80H-FFH共128个字节只有一部分被定义,还有相当一部分没有定义。
对没有定义的单元读写将是无效的,读出的数位将不确定,而写入的数据也将丢失。
不应将数据"1"写入未定义的单元,由于这些单元在将来的产品中可能赋予新的功能,在这种情况下,复位后这些单元数值总是“0”。
3.4ADC0832简介与应用
3.4.1ADC0832简介
ADC0832为8位分辨率A/D转换芯片,其最高分辨可达256级,可以适应一般的模拟量转换要求。
其内部电源输入与参考电压的复用,使得芯片的模拟电压输入在0~5V之间。
芯片转换时间仅为32μS,据有双数据输出可作为数据校验,以减少数据误差,转换速度快且稳定性能强。
独立的芯片使能输入,使多器件挂接和处理器控制变的更加方便。
通过DI数据输入端,可以轻易的实现通道功能的选择。
3.4.1ADC0832特点
●8位分辨率;
●逐次逼近式A/D转换器
●双通道A/D转换;
●输入输出电平与TTL/CMOS相兼容;
●5V电源供电时输入电压在0~5V之间;
●工作频率为250KHZ,转换时间为32μS;
●一般功耗仅为15mW;
●8P、14P—DIP(双列直插)、PICC多种封装;
3.4.2芯片接口说明:
●CS---片选使能,低电平芯片使能。
●CH0---模拟输入通道0,或作为IN+/-使用。
●CH1---模拟输入通道1,或作为IN+/-使用。
●GND---芯片参考0电位(地)。
●DI---数据信号输入,选择通道控制。
●DO---数据信号输出,A/D数据转换输出端。
●CLK---时钟信号输入端。
●Vcc/REF电源输入及参考电压输入(复用)。
3.4.3单片机对ADC0832的控制原理
正常情况下ADC0832与单片机的接口应为4条数据线,分别是CS、CLK、DO、DI。
但由于DO端与DI端在通信时并未同时有效并与单片机的接口是双向的,所以电路设计时可以将DO和DI并联在一根数据线上使用。
当ADC0832未工作时其CS输入端应为高电平,此时芯片禁用,CLK和DO/DI的电平可任意。
当要进行A/D转换时,须先将CS使能端置于低电平并且保持低电平直到转换完全结束。
此时芯片开始转换工作,同时由处理器向芯片时钟输入端CLK输入时钟脉冲,DO/DI端则使用DI端输入通道功能选择的数据信号。
在第1个时钟脉冲的下沉之前DI端必须是高电平,表示起始信号。
在第2、3个脉冲下沉之前DI端应输入2位数据用于选择通道功能,其功能详见官方资料。
3.5显示模块:
本设计采用1602字符型LCD液晶显示屏来显示距离,具有体积小、功耗低、界面美观大方、使用方便等优点,它有16个引脚,如图所示:
LM016L外部引脚图
VSS:
为地电源。
VDD:
接5V正电源。
VEE:
为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。
RS:
寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。
R/W:
为读写信号线,高电平时进行读操作,低电平时进行写操作。
当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。
E:
端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。
D0~D7:
8位双向数据线。
第四章系统软件设计
第五章频率计的系统调试
5.1放大整形电路调试
5.1.1放大电路仿真调试
放大电路仿真图
放大电路仿真结果图
5.1.2整形电路仿真调试
整形电路仿真图
整形电路仿真结果图
5.2分频电路调试
分频电路仿真图
分频电路仿真结果图
5.3软件调试
5.3.1Protues软件调试
根据系统设计要求,不断调试程序,进行Keil和Proteus系统仿真,直到符合功能要求。
频率计整体仿真图
5.3.2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 数字频率计 设计