当前位置: 首页 > news >正文

昆明电商网站建设襄阳百度开户

昆明电商网站建设,襄阳百度开户,网站要怎么做关键词,湘潭做网站建设的公司文章目录 简介设计思路工作原理Proteus软件仿真软件程序实验现象测量误差和范围总结 简介 数字频率计是能实现对周期性变化信号频率测量的仪器。传统的频率计通常是用很多的逻辑电路和时序电路来实现的,这种电路一般运行较慢,而且测量频率的范围较小。这…

文章目录

  • 简介
  • 设计思路
  • 工作原理
  • Proteus软件仿真
  • 软件程序
  • 实验现象
  • 测量误差和范围
  • 总结

简介

数字频率计是能实现对周期性变化信号频率测量的仪器。传统的频率计通常是用很多的逻辑电路和时序电路来实现的,这种电路一般运行较慢,而且测量频率的范围较小。这篇文章介绍以单片机STC89C52为核心,通过对输入的脉冲进行计数,运用单片机的运算和控制功能并采用数码管将所测频率显示出来。软件方面采用C语言编程,运用定时计数器测量频率,再调显示函数,将测得的结果显示在数码管上。系统简单可靠、操作简易,能基本满足一般情况下的需要。既保证了系统的测频精度,又使系统具有较好的实时性。

设计思路

本次设计主要分成两大方面:硬件电路的设计和软件程序的设计。硬件电路方面,采用STC89C52单片机最小系统,便可实现要求。程序的设计方面,采用C语言编写程序。其整体框图如图1所示:
在这里插入图片描述

工作原理

此数字频率计是利用单片机的P3.4(T0)引脚作为被测矩形波信号输入端,且单片机晶振FOSC=12MHZ,当外部脉冲信号,即被测矩形波信号从P3.4进入单片机,同时启动定时器T0和计数器T1,T0是工作在计数状态下,对输入的频率信号进行计数,工作在计数状态下的T0的最大计数值为65535则:T0的最大计数频率为65535Hz,T1是工作在定时状态下,每定时1秒,就停止T1的计数,而从T1的计数单元中读取的计数值在进行数据处理后,送到数码显示管显示出来,因为T1工作在定时状态下的最大定时时间为65ms,达不到1秒的定时,所以采用50ms,共定时20次,即可完成1秒的定时功能。

Proteus软件仿真

如图所示,是在proteus软件数字频率计的仿真。
在这里插入图片描述
将要测量的脉冲输入单片机的P3.4引脚。
在这里插入图片描述

软件程序

 #include "reg52.h"
sbit L1 = P1^0;
sbit S1 = P3^2;
unsigned char code SMG_duanma[18]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x80,0xc6,0xc0,0x86,0x8e,0xbf,0x7f};
unsigned char count = 0;unsigned int frequency = 0;
unsigned char start=1;
unsigned char flag = 0;
void InitTimer()	  
{TMOD = 0x15;  //T1定时,T0计数,TH1 = (65535 - 50000) / 256;TL1 = (65535 - 50000) % 256;TH0 = 0x00;TL0 = 0x00;ET1 = 1;ET0 = 1;EA = 1;TR1 = 1;TR0 = 1;}unsigned int i = 0;
void ServiceTimer1() interrupt 3
{TH1 = (65535 - 50000) / 256;TL1 = (65535 - 50000) % 256;i++;  if(i==20){i = 0;TR0=0; //停止计数TR1=0; //停止定时frequency=(TH0*256+TL0); //求出频率值 就是1秒内脉冲次数TH0=0x00; //计数值清零TL0=0x00;TH1 = (65535 - 50000) / 256;TL1 = (65535 - 50000) % 256;start=1; //启动定时器开启变量}
}void Init_INT0()
{IT0 = 1;EX0 = 1;EA = 1;
}void ServiceINT0() interrupt 0
{	if(flag == 0){	frequency = 0;}if(flag!=0)frequency++;flag = 1;}void DisplaySMG_Bit(unsigned char value, unsigned char pos)
{P0 = 0xff;P2 = 0x01 << pos; P0 = value;
}void DelaySMG(unsigned int t)
{while(t--);
}void Display_Dynamic()
{DisplaySMG_Bit(SMG_duanma[frequency/100000],0);	       DelaySMG(500);DisplaySMG_Bit(SMG_duanma[frequency%100000/10000],1);		 DelaySMG(500);DisplaySMG_Bit(SMG_duanma[frequency%10000/1000],2);			 DelaySMG(500);DisplaySMG_Bit(SMG_duanma[frequency%1000/100],3);	DelaySMG(500);DisplaySMG_Bit(SMG_duanma[frequency%100/10],4);			 DelaySMG(500);DisplaySMG_Bit(SMG_duanma[frequency%100%10],5);	DelaySMG(500);}void Delay(unsigned char t)
{while(t--){Display_Dynamic();}
}void DelayK(unsigned char t)
{while(t--);
}void ScanKeys_Alone()
{if(S1 == 0){DelayK(100);if(S1 == 0){TR0=0; //停止计数TR1=0; //停止定时if(flag == 0){frequency = 0;}if(flag!=0)frequency++;flag = 1;while(!S1);}}
}
void main()
{	InitTimer();Init_INT0();while(1){ 	 ScanKeys_Alone();if(start==1){TR0=1; //启动定时器TR1=1; //启动计数器start=0; //关闭启动变量位 保证1秒时间}Display_Dynamic();Delay(200);if(flag == 1)				                      {start = 0;}}
}

实验现象

双击器件DCLOCK对外部输入矩形脉冲的频率进行设置:
50hz:
在这里插入图片描述
在这里插入图片描述
100hz:
在这里插入图片描述

在这里插入图片描述
500hz:
在这里插入图片描述
在这里插入图片描述
1000hz:
在这里插入图片描述
在这里插入图片描述

测量误差和范围

当测频时,启动定时计数器时,若从T0(P3.4)输入矩形波刚好为高电平,而当1s定时到时刚好为高电平时,此时测得的频率值最准确。若启动定时计数器时,输入的矩形波刚好处于低电平,而当定时1s到时矩形波刚好要发生负跳变时,此时测得的频率误差最大。定时计数器的工作方式选择与初值的赋予不一定精准,容易引起误差。定时计数器的工作方式选择不同,最后的结果也会有所差异。工作方式2相比于工作方式0和工作方式1误差更小。其次,采用中断或查询的方式也会影响实验结果。采用查询方式的误差比采用中断误差更小。

电子计数器测频法主要是将被测频率信号加到计数器的计数输入端,然后让计数器在标准时间 Ts1 内进行计数,所得的计数值 N1。与被测信号的频率 fx1 的关系如下:
在这里插入图片描述
主要误差源是由于计数器只能进行整数计数而引起的±1 误差:
在这里插入图片描述
工作在计数状态下的16位计数器T0的最大计数值为65535,理论上可以测的频率范围是0-65535hz,实际仿真测试最大为65.5KHz,测量显示值为65530hz,误差为0.04%
在这里插入图片描述
经过测试在一定误差允许和测量范围内,数字频率计可以正常工作。下图是基于上述方案的数字频率计原理图设计参考。可实现下面功能:
(1)将外部矩形脉冲输入T0引脚,即将外部输入脉冲用导线连接到P3.4引脚,可以做外部脉冲输入数字频率计。
(2)扩展功能:当按下按键,停止对外部矩形脉冲计数,改为单脉冲计数。当按下一次按键,计数值加1,并显示到数码管上。(PS:LED可作为其它功能扩展使用)。

在这里插入图片描述

总结

频率的测量可以采用数字逻辑电路来实现,也可以采用单片机进行控制。前者不仅实现的电路复杂,而且测量频率的范围较小,而利用单片机的定时器可以很方便的进行信号频率的测量,只需要在电脑上编写程序,然后在相应的显示电路进行显示就可以了,可以使用STC89C51单片机的定时器、计数器的定时和计数功能,外部扩展6位LED数码管,累计每秒进入单片机的外部脉冲个数,用LED数码管显示出来,实现基于单片机数字频率计的制作。

http://www.shuangfujiaoyu.com/news/26169.html

相关文章:

  • 南通优普网站建设外包免费写文章的软件
  • 企业网站建设费用 珠海网络广告策划方案
  • wordpress不能分页seo关键词推广多少钱
  • 公司刚成立网站怎么做常德网站建设制作
  • 哈尔滨建设网站公司哪家好推广计划方案模板
  • 怎么访问域名网站中国销售网
  • 中堂网站建设长沙seo招聘
  • a站怎么进百度指数如何分析
  • 美甲网站自适应源码百度自己的宣传广告
  • 前台网站建设佛山全网营销推广
  • 更合高明网站建设网络游戏营销策略
  • 手机端网站建设教程视频教程营销型网站定制
  • wordpress插件markdown简述seo的应用范围
  • 网站建设如何上传图片优化设计
  • 采购网站大全百度竞价渠道代理商
  • 可以做网站的域名后缀今天发生了什么重大新闻
  • 福州网站关键排名网络热词2021流行语
  • 建设工程信息发布网站企业网站关键词优化
  • 学vue可以做pc网站外贸网络推广怎么做
  • 实搜网站建设优化疫情防控
  • 天津网站公司哈尔滨seo和网络推广
  • wordpress 图片集插件seo案例分析100例
  • 上海做网站建设公司网络营销做得好的企业有哪些
  • 陕西省建设招投标网站全国疫情最新报告
  • 自己主机做网站服务器怎么在百度上发帖推广
  • 献县城市住房建设局网站电商平台推广公司
  • 广州设计网站培训学校百度链接地址
  • 灯饰网站建设哪家便宜贵阳网站建设公司
  • 你们交学费做网站本周的新闻大事10条
  • 宁波做网站的大公司排名想卖产品怎么推广宣传