- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
浅析几种基于单片机数字频率测量仪设计
浅析几种基于单片机数字频率测量仪设计
摘要:本文介绍了以AT89C51单片机为核心,利用其中断源,分别采用计数法、测周法和同步法实现对不同频率的测量,以满足不同电子测量系统对测量精度的要求。文中综合地对三种方法进行了比较及误差分析,并结合了Proteus软件进行仿真验证。
关键词:单片机;计数法;测周法;同步法;频率测量;Proteus仿真
一、引言
频率测量是电子测量系统中的一个重要参数,测量精度的高低对于一个控制系统的设计有着密切关系。而单片机具有体积小、功能强等优势,在电子领域应用已十分广泛。为此,本文介绍了以AT89C51单片机为核心,充分利用其内部资源,采用计数、测周、同步三种测量方法,实现对一个连续脉冲的频率测量,并通过数码管显示被测脉冲频率,满足了不同电子测量系统对测量精度的要求,其中重点分析了同步测量法。
二、系统组成及工作原理
利用单片机实现对某一信号频率的测量,首先需要单片机对被测信号进行脉冲采集,即单片机能准确识别的信号为周期性矩形脉冲信号,前级波形整形电路本文不作介绍。本设计利用单片机的P3.2、P3.4口作为脉冲信号采集端口,通过单片机对采集到的脉冲信号进行运算处理,最终由I/O口驱动数码管,显示出被测信号频率。系统硬件原理图如图1所示。
图1 系统硬件原理图
三、测量方法选择
频率即周期性信号在单位时间(1s)内变化的次数。若在一定时间间隔T内测得某周期性信号的重复变化次数为N,则其频率可表示为f=N/T。
频率测量主要有三种方法:(1)计数法;(2)测周法;(3)同步法。
(一)计数法
图2 计数法测量频率时序图
计数法测量频率是利用单片机内部两个定时器/计数器T0和T1,使一个工作在定时模式,另一个工作在计数模式下完成测量功能的。计数法测量频率时序图如图2所示。
用定时器T1来产生一个1S的时钟基准,同时计数器T0对由P3.4口输入的周期性矩形脉冲信号的下降沿进行累积计数,再将累积计数值M送数码管显示。设计软件流程图如图3所示。
图3 计数法设计软件流程图
(二)测周法
测周期法又称计时法,是利用周期和频率之间互为倒数的关系,通过测量周期性矩形脉冲信号一个或多个周期的时间,取其一个周期的倒数即为该脉冲信号的频率。测周法测量频率时序图如图4所示。
图4 测周法测量频率时序图
将单片机的P3.2端口作为脉冲信号的输入端,利用中断方式,当外部中断0检测到第一个脉冲下降沿时,开启定时器T1,紧接着当检测到第二个脉冲下降沿时,关闭定时器T1,此时定时器内部累积的时间即为该脉冲的周期,取其倒数则可得到其频率。而实际设计中,考虑到为了提高测量精度和保证测量数据的实时刷新,可根据不同的频率范围选择适当的周期数M,然后取其平均值来减少测量误差。设计软件流程图如图5所示:
图5 测周法设计软件流程图
(三)同步法
同步法测量综合运用了计数法和测周法,充分利用单片机内部的中断源,使被测信号与单片机内部时钟信号同步,实现了同步测量。将单片机的P3.2和P3.4端口同时作为脉冲信号的输入端,单片机工作于中断模式,当外部中断0检测到被测脉冲(P3.2口)其中一个下降沿时,同时去开启计数器T0和定时器T1,使T0对被测脉冲(P3.4口)进行累积计数,T1进行内部累积计时,并且关闭当前外部中断响应模式,此时做到了测量开始的同步。直至设定的计数时间t1到,然后再重新打开外部中断,而此时并不会立即关闭计数器T0和定时器T1,而是要等到被测脉冲的下一个下降沿到来触发外部中断0响应后,再去同时关闭计数器T0和定时器T1,此时做到了测量结束的同步。最后分别取出计数器T0中的计数值N和定时器T1的内部计时时间T1代入公式f=N/T1进行数据运算,送数码管显示被测脉冲频率。定时器T1中的设定计数时间t1主要用来完成对测量数据刷新周期的控制,即每一次测量过程中对脉冲采集时间的设定,为了保证测量和显示的数据实时刷新,一般t1取0.5S到1S为佳。
四、误差分析
为验证以上三种方案的可行性,本文结合了Proteus软件进行仿真验证。
(一)计数法
计数法主要是利用单片机的计数器在标准时间1S内对输入脉冲进行累积计数,所得的值即为信号频率。其主要误差源都是由于定时开始时的第一个脉冲和定时时间到时的最后一个脉冲信号是否被记录,存在随机性,因而引起的±1误差。由于计数器只能进行整数计数,即该测量方法只能完成对频率值整数部分的测量,无法精确的小数部分。利用Proteus软件
您可能关注的文档
最近下载
- 安徽蓝盾 YDZX-01型烟气系统操作手册.pdf VIP
- 宠物除臭剂项目立项报告.pptx VIP
- 2024年履行合同催告函(6篇).pdf VIP
- CFD软件:Star-CCM+ 二次开发_(9).Star-CCM+后处理与可视化二次开发.docx VIP
- CFD软件:Star-CCM+ 二次开发_(8).Star-CCM+物理模型与求解器二次开发.docx VIP
- CFD软件:Star-CCM+ 二次开发_(7).Star-CCM+网格生成与优化二次开发.docx VIP
- CFD软件:Star-CCM+ 二次开发_(6).Star-CCM+二次开发API基础.docx VIP
- CFD软件:Star-CCM+ 二次开发_(5).Star-CCM+脚本编写与调试.docx VIP
- CFD软件:Star-CCM+ 二次开发_(4).Star-CCM+二次开发环境搭建.docx VIP
- CFD软件:Star-CCM+ 二次开发_(3).Star-CCM+数据结构与对象模型.docx VIP
文档评论(0)