0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用单片机实现频率计的资料概述

Wildesbeast 来源:单片机教程网 作者:单片机教程网 2020-06-27 09:35 次阅读

1 引言

本设计综合考虑了频率测量精度和测量反应时间的要求。例如当要求频率测量结果为3位有效数字,这时如果待测信号的频率为1 Hz,则计数闸门宽度必须大于1 000 s。为了兼顾频率测量精度和测量反应时间的要求,把测量工作分为两种方法:

(1)当待测信号的频率>100 Hz时,定时/计数器构成为计数器,以机器周期为基准,由软件产生计数闸门,计数闸门宽度>1 s时,即可满足频率测量结果为3位有效数字;

(2)当待测信号的频率<100 Hz时,定时/计数器构成为定时器,由频率计的予处理电路把待测信号变成方波,方波宽度等于待测信号的周期。这时用方波作计数闸门,当待测信号的频率=100 Hz,使用12 MHz时钟时的最小计数值为10 000,完全满足测量精度的要求。

本频率计的设计以AT89C51单片机为核心,利用他内部的定时/计数器完成待测信号周期/频率的测量。单片机AT89C51内部具有2个16位定时/计数器,定时/计数器的工作可以由编程来实现定时、计数和产生计数溢出时中断要求的功能。在定时器工作方式下,在被测时间间隔内,每来一个机器周期,计数器自动加1(使用12 MHz时钟时,每1μs加1),这样以机器周期为基准可以用来测量时间间隔。在计数器工作方式下,加至外部引脚的待测信号发生从1到0的跳变时计数器加1,这样在计数闸门的控制下可以用来测量待测信号的频率。外部输入在每个机器周期被采样一次,这样检测一次从1到0的跳变至少需要2个机器周期(24个振荡周期),所以最大计数速率为时钟频率的1/24(使用12 MHz时钟时,最大计数速率为500 kHz)。定时/计数器的工作由运行控制位TR控制,当TR置1,定时/计数器开始计数;当TR清0,停止计数。

2频率计的量程自动切换

使用定时方法实现频率测量时,外部的待测信号通过频率计的预处理电路变成宽度等于待测信号周期的方波,该方波同样加至定时/计数器的输入脚。工作高电平是否加至定时/计数器的输入脚;当判定高电平加至定时/计数器的输入脚,运行控制位TR置1,启动定时/计数器对单片机的机器周期的计数,同时检测方波高电平是否结束;当判定高电平结束时TR清0,停止计数,然后从计数寄存器读出测量数据。这时读出的数据反映的是待测信号的周期,通过数据处理把周期值变换成频率值,由显示电路显示测量结果。

使用计数方法实现频率测量时,外部的待测信号为单片机定时/计数器的计数源,利用软件延时程序实现计数闸门。频率计的工作过程为:定时/计数器的计数寄存器清0,运行控制位TR置1,启动定时/计数器工作;运行软件延时程序,同时定时/计数器对外部的待测信号进行计数,延时结束时TR清0,停止计数。从计数寄存器读出测量数据,测量数据在完成数据处理后,由显示电路显示测量结果。

测量结果的显示格式采用科学计数法,即有效数字乘以10为底的幂。这里设计的频率计用5位数码管显示测量结果:前3位为测量结果的有效数字;第4位为指数的符号;第5位为指数的值。采用这种显示格式既保证了测量结果的显示精度,又保证了测量结果的显示范围(0.100 Hz~9.99 MHz)。

频率计测量量程自动转换的过程由频率计测量量程的高端开始。由于只显示3位有效数字,测量量程的高端计数闸门不需要太宽,例如在进入计数器的信号频率范围在10.0~99.9 kHz,计数闸门宽度为10 ms即可。频率计开始工作时使用计数方法实现频率测量,并使计数闸门宽度为最窄,完成测量后判断测量结果是否具有3位有效数字,如果成立,将结果送去显示,完成测量工作;否则将计数闸门宽度扩大10倍,继续进行测量判断,直到计数闸门宽度达到1 s,这时对应的进入单片机的待测信号频率范围为100~999 Hz。如果测量结果仍不具有3位有效数字,频率计则使用定时方法实现频率测量。

定时方法测量的是待测信号的周期,这种方法只设一种量程,测量结果通过浮点数运算模块将信号周期转换成对应的频率值,再将结果送去显示。无论采用何种方式,只要完成一次测量,频率计自动开始下一个测量循环,因此该频率计具有连续测量的功能,同时实现量程的自动转换。

3信号预处理电路

信号预处理电路如图1所示,他由4级电路构成。第1级为零偏置放大器,当输入信号为零或者为负电压时,三极管截止,输出高电平;当输入信号为正电压时,三极管导通,输出电压随着输入电压的上升而下降。零偏置放大器可把正负交替波形变换成单向脉冲,这使得频率计既可以测量脉冲信号的频率,也可以测量正弦波信号的频率。放大器的放大能力实现了对小信号的测量,本电路可以测量幅度≥0.5 V的正弦波或脉冲波待测信号。三极管应采用开关三极管以保证放大器具有良好的高频响应。第2级采用带施密特触发器的反相器7414,他用于把放大器生成的单向脉冲变换成与TTL/CMOS电平相兼容的方波。第3级采用十进制同步计数器74160,第2级输出的方波加到74160的CLK,当从74160的TC输出可实现10分频(多个74160的级连可以进一步扩展测频范围)。第4级同样采用十进制同步计数器74160,第3级输出的方波加到他的CLK,当从他的Q0输出既可实现2分频,且其输出为对称方波,方波宽度等于待测信号的周期,从而为测量信号周期提供基础。

4系统软件设计

频率计开始工作或者完成一次频率测量,系统软件都进行测量初始化。测量初始化模块设置堆栈指针(SP)、工作寄存器、中断控制和定时/计数器的工作方式。定时/计数器的工作首先被设置为计数器方式,即用来测量信号频率。首先定时/计数器的计数寄存器清0,运行控制位TR置1,启动对待测信号的计数。计数闸门由软件延时程序实现,从计数闸门的最小值(即测量频率的高量程)开始测量,计数闸门结束时TR清0,停止计数。计数寄存器中的数值经过数制转换程序从十六进制数转换为十进制数。判断该数的最高位,若该位不为0,满足测量数据有效位数的要求,测量值和量程信息一起送到显示模块;若该位为0,将计数闸门的宽度扩大10倍,重新对待测信号的计数,直到满足测量数据有效位数的要求。

当上述测量判断过程直到计数闸门宽度达到1 s(对应的频率测量范围为100~999 Hz)时测量结果仍不具有3位有效数字,频率计则使用定时方法测量待测信号的周期。定时/计数器的工作被设置为定时器方式,定时/计数器的计数寄存器清0,在判断待测信号的上跳沿到来后,运行控制位TR置为1,以单片机工作周期为单位进行计数,直至信号的下跳沿到来,运行控制位TR清0,停止计数。16位定时/计数器的最高计数值为65 535,当待测信号的频率较低时,定时/计数器将发生溢出。产生溢出时,程序进入定时器中断服务程序,对溢出次数进行计数。待测信号的周期由3个字节组成:定时/计数器溢出次数、定时/计数器的高8位和低8位。信号的频率f与信号的周期T之间的关系为:f=1/T

完成信号的周期测量后,需要做一次倒数运算才能获得信号的频率。为提高运算精度,采用浮点数算术运算。浮点数由3个字节组成:第1字节最高位为数符,其余7位为阶码;第2字节为尾数的高字节;第3字节为尾数的低字节。待测信号周期的3个字节定点数通过截取高16位、设置数符和计算阶码转换为上述格式的浮点数。然后浮点数算术运算对其进行处理,获得用浮点数格式表达的信号频率值。再通过浮点数到BCD码转换模块把用浮点数格式表达的信号频率值变换成本频率计的显示格式,送到显示模块显示待测信号的频率值。完成显示后,频率计都开始下一次信号的频率测量。系统软件流程图如图2所示。

系统软件设计采用模块化设计方法。整个系统由初始化模块、显示模块和信号频率频率测量模块等各种功能模块组成。上电后,进入系统初始化模块,系统软件开始运行。在执行过程中,根据运行流程分别调用各个功能模块完成频率测量、量程自动切换、周期测量和测量结果显示。

5实测结果和误差分析

为了衡量这次设计的频率计的工作情况和测量精度,我们对系统进行了试验。以南京电讯仪器厂制造的E312B型通用计数器为基准,用这次设计的频率计对信号源进行了测量,测量数据如表1所示。

如图1信号预处理电路所示,待测信号在进入单片机之前经过了10×2次分频。频率计以进入单片机时的信号频率=100 Hz为基准(即待测信号频率为2 kHz),大于此频率采用频率测量,小于此频率采用周期测量。由表1频率测量对比表可以看出,频率测量的测量精度大于周期测量的测量精度。

采用计数法实现频率测量,误差来源主要有计数误差和闸门误差2部分。误差表达式为:

其中:N为计数值,t为闸门时间。

闸门时间相对误差dt/t主要取决于单片机晶振的频率稳定度,选择合适的石英晶体和振荡电路,误差一般可<10-6。当仅显示3位有效数字时,该项误差可以忽略。对于dN/N部分,无论闸门时间长短,计数法测频总存在1个单位的量化误差。在表1中,待测信号频率>2 kHz时的误差就来源于计数误差。增加显示的有效数字位数可降低该项误差的影响。

当待测信号频率<2 kHz时,直接测量的是信号的周期。周期测量的误差表达式为:

其中:dN/N为量化误差,dτ0/τ0为单片机晶振的频率稳定度。

进行周期测量时进入单片机的信号频率<100 Hz,使用12 MHz时钟时的最小计数值为10 000。当仅显示3位有效数字时,该项误差现在也可以忽略。待测信号的周期测量值通过浮点数运算变换成频率值,这时的误差来源于浮点数运算和数制转换所带来的误差。

6结语

介绍了一种基于单片机89C51制作的频率计的设计方法,所制作的频率计需要外围器件较少,适宜用于嵌入式系统。该频率计应用周期测量和相应的数学处理实现低频段的频率测量,因此很容易扩展实现信号的周期测量和占空比测量。该频率计被应用于笔者设计的“高频实验装置”之中,用来对LC振荡器和RC振荡器输出信号的频率稳定度进行测量,取得良好的应用效果。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6030

    文章

    44500

    浏览量

    632235
  • 频率计
    +关注

    关注

    8

    文章

    174

    浏览量

    44311
  • 计数器
    +关注

    关注

    32

    文章

    2253

    浏览量

    94298
收藏 人收藏

    评论

    相关推荐

    频率计测试波形如何设置?

    频率计是一种用于测量信号频率的电子测量仪器。它可以测量各种周期性波形的频率,包括正弦波、方波等。
    的头像 发表于 05-30 16:35 639次阅读

    频率计的使用方法

    频率计,作为电子测量领域的重要工具,主要用于测量信号的频率。在现代电子工程、通信、航空航天等领域,频率计的应用日益广泛。然而,对于许多初学者或新用户来说,如何正确使用频率计可能是一个挑
    的头像 发表于 05-15 16:52 991次阅读

    频率计的工作原理和分类详解

    在电子工程、通信和科研领域,频率计是一种不可或缺的电子测量仪器。它以其高精度、高速度和高分辨率的频率测量能力,为科研和工程实践提供了极大的便利。本文将深入解析频率计的工作原理,并详细介绍其分类,以期为读者提供全面而深入的了解。
    的头像 发表于 05-15 16:52 2108次阅读

    频率计的基本概念和组成部分

    在现代电子科技领域,信号的频率测量是不可或缺的一部分。频率计,作为专门用于测量信号频率的电子设备,其精准度和可靠性对于电子设备的调试、维护和研发都至关重要。本文将详细介绍频率计的基本概
    的头像 发表于 05-15 16:52 948次阅读

    频率计的基本原理及分类 频率计的功能特点及应用场景

    在现代电子技术领域中,频率是一个极其重要的物理量。无论是无线通信、雷达探测,还是音频处理、电子测量,频率的准确测量和控制都至关重要。因此,频率计作为专门用于测量信号频率的仪器,其性能和
    的头像 发表于 05-10 15:27 3061次阅读

    频率计的使用方法和注意事项

    首先,选择与被测信号频率范围相匹配的频率计,并确保其工作正常。
    的头像 发表于 05-08 18:21 1820次阅读

    频率计有哪些作用

    频率计又称为频率计数器,是一种专门对被测信号频率进行测量的电子测量仪器。其主要由四个部分构成:时基(T)电路、输入电路、计数显示电路以及控制电路。又称为频率计数器,是一种专门对被测信号
    的头像 发表于 05-08 18:16 1273次阅读

    频率计的原理

    公司主营出售/回收:示波器、频谱分析仪、网络分析仪、信号发生器、万用表/示波器校准仪、手机综合测试仪、噪声系数分析仪、数据采集器、NI-GPIB卡、阻抗/LCR测试仪,音频分析仪、蓝牙/WANL测试仪、电源、电池测试仪、探头/配件、天馈线测试仪、光谱分析仪 频率计、功率
    的头像 发表于 04-03 17:00 684次阅读

    基于FPGA设计频率计方案介绍分享

    off。 2频率计介绍 频率计又称为[频率计数器],是一种专门对被测信号频率进行测量的电子测量仪器。频率计主要由四个部分构成:时基(T)电
    发表于 03-31 16:22

    基于51单片机的智能频率计毕设,C代码,仿真,原理图,论文

    ; (3)测量误差:低于0.1%; (4)频率测量结果采用LCD1602液晶显示; 系统概述 本设计给出了一种以AT89C52单片机为控制核心的数字频率计设计方案。方案由6个部分组成,
    发表于 03-18 12:57

    基于单片机的数字频率计实现论文分享

     频率计测频原理方框图如图1所示。被测输入信号通过脉冲形成电路进行放大与整形(可由放大器与门电路组成),然后送到单片机入口,单片机计数脉冲的输入个数。计数结果经LED数码管显示,从而得到被测信号
    发表于 02-15 16:17 520次阅读
    基于<b class='flag-5'>单片机</b>的数字<b class='flag-5'>频率计</b>的<b class='flag-5'>实现</b>论文分享

    是德频率计53220A-开机自检报错维修

    近日某院校送修一台是德频率计53220A,客户反馈仪器开机自检报错,对仪器进行初步检测,确定与客户描述故障一致。本期将为大家分享本维修案例。 下面就是是德-53220A维修情况   是德频率计
    的头像 发表于 01-10 16:20 456次阅读
    是德<b class='flag-5'>频率计</b>53220A-开机自检报错维修

    基于51单片机的热敏电阻数字温度设计

    电子发烧友网站提供《基于51单片机的热敏电阻数字温度设计.rar》资料免费下载
    发表于 01-03 11:17 33次下载

    微波数字频率计的基本工作原理是什么?

    微波数字频率计的基本工作原理是什么? 微波数字频率计是一种用于测量微波信号频率的仪器。它通过将输入信号与参考信号混合,然后通过数字处理技术来测量频率。下面将详细介绍微波数字
    的头像 发表于 12-21 15:37 750次阅读

    单片机实现更简单的LCD设计

    电子发烧友网站提供《单片机实现更简单的LCD设计.pdf》资料免费下载
    发表于 11-17 09:29 0次下载
    <b class='flag-5'>单片机</b><b class='flag-5'>实现</b>更简单的LCD设计