在本文中,我们将使用Arduino构建一个数字频率计,其读数将显示在一个16x2 LCD显示屏上,测量范围从35 Hz到1MHz。
介绍
作为电子爱好者,我们都会遇到需要在项目中测量频率的情况。
这时我们就会意识到示波器是测量频率的一个非常有用的工具。但是,我们都知道示波器是一种昂贵的工具,并不是所有的业余爱好者都能负担得起,而且示波器对初学者来说可能是一种多余的工具。
为了克服频率测量的问题,业余爱好者不需要昂贵的示波器,只需要一个频率计,它可以测量频率并具有合理的精度。
在本文中,我们将制作一个频率计,易于构建和初学者友好,甚至在Arduino中的Noob可以轻松完成。
在深入构造细节之前,让我们先探讨一下什么是频率以及如何测量频率。
什么是频率?(对于noobs)
我们熟悉术语频率,但它真的意味着什么?
嗯,频率定义为每秒振荡或周期数。这个定义是什么意思?
这意味着“某些东西”的次数在一秒钟内上下上下。例如,我们居住的AC电源的频率:“电压”的幅度('电压'被“电压”取代)上升(+)和下降( - ),在一秒钟内,在大多数国家是50倍。
一个周期或一个振荡由上和下组成。一个周期/振荡是振幅从0到正的峰值,然后回到0,再到负的峰值,然后回到0。
“时间段”也是在处理频率的同时使用的术语。时间段是完成“一个循环”所需的时间。它也是频率的倒数值。例如,50 Hz有20毫秒的时间段。
1/50 = 0.02秒或20毫秒
现在你应该对频率和它的相关术语有了一些概念。
如何测量频率?
我们知道一个周期是高低信号的组合。为了测量高低信号的持续时间,我们使用了arduino中的“pulseIn”。脉冲盛(pin, HIGH)测量高信号的持续时间,脉冲盛(pin, LOW)测量低信号的持续时间。两者的脉冲持续时间相加,得到一个周期的时间周期。
然后计算确定的时间周期为一秒。这是通过以下公式实现的:
频率= 1000000/时间段,以微秒为单位
从Arduino的时间段以微秒为单位。Arduino不会为整个第二秒对输入频率进行样本,但通过分析一个周期的时间段,它可以准确地预测频率。
现在您知道Arduino如何测量并计算频率。
电路:
该电路由Arduino组成,该Arduino是项目的大脑,16x2 LCD显示器,IC 7404逆变器和一个电位计用于调整对比度液晶显示器。
所提出的设置可以测量35Hz到1 MHz。
Arduino显示连接:
上图是不言自明的,Arduino和Display之间的接线连接是标准的,我们可以在其他Arduino和基于LCD的项目上找到类似的连接。
上图由逆变器IC 7404组成。IC 7404的作用是消除来自输入的噪声,这样噪声就不会传播到arduino上,从而产生错误的读数,并且IC 7404可以容忍短的尖峰电压,而尖峰电压不会通过arduino引脚。IC 7404仅输出矩形波,arduino可以轻松测量类似波。
注意:峰值输入的最大峰值不应超过5V。
程序:
// -----由r.girish开发的计划----- //
# include < LiquidCrystal.h >
液晶LCD(12,11,5,4,3,2);
int X;
int Y;
浮动时间;
浮动频率;
const int input = A0;
const int test = 9;
无效的设置()
{
PINMODE(输入,输入);
pinMode(测试、输出);
液晶显示器。开始(16日2);
Amplwwrite(测试,127);
}
void循环()
{
lcd.clear ();
lcd.setCursor(0,0);
液晶显示器。打印(频率计);
x =脉冲(输入,高);
Y =脉冲(输入,低);
时间= X + Y;
频率= 1000000 /时间;
如果(频率< = 0)
{
lcd.clear ();
lcd.setCursor(0,0);
液晶显示器。打印(频率计);
lcd.setCursor (0,1);
lcd.print(“0.00 Hz”);
}
别的
{
lcd.setCursor (0,1);
lcd.print(频率);
lcd.print(“Hz”);
}
延迟(1000);
}
// -----由r.girish开发的计划----- //
频率计的测试:
一旦您成功地构建了项目,就有必要检查一切是否正常。我们必须用已知频率来确认读数。为了实现这一点,我们使用arduino的内置PWM功能,频率为490Hz。
在程序引脚#9中启用了50%占空比的490Hz,用户可以抓取频率计的输入线并插入Arduino的PIN#9,如图所示,我们可以在LCD显示屏上看到490 Hz(具有一些宽容),如果提到的程序是成功的,您的频率计已准备好为您提供实验。
作者的原型:
用户还可以使用外部频率发生器测试此Arduino频率计电路原型,该电路原型在上面图像中示出。
我们可以使用这款姜素Cheq主板32MHz水晶频率吗?
GR先生将很快回答你的问题....
嗨rajesh,
如果你把水晶端子直接连接到频率计数器的输入端,则NO。
而且这个频率计数器只能读取1兆赫兹以下,这是我的假设。
问候
*不仅仅是假设,而且,电路的最大限制。