蓝桥杯单片机必备知识-----(8)NE555测频
NE555测频原理
很多人不知道NE555测频怎么搞,其实很简单。
已经使用跳线帽将P34和NE555的输出端接在一起了,关乎NE555,有些许数电基础的都明白,NE555就是改变RB3,改变负载电阻,使其输出方波的频率发生改变,其中并不涉及任何对NE555的编程,当然你也没法对其编程。
官方的CT107D的NE555输出频率范围是50-20K赫兹(以上)。
那么我们怎么测频呢。
P34对应的是单片机的定时器0的脉冲输入口,那么我们可以把定时器0设置为计数模式,每接收到NE555的一个脉冲,定时器0计数值就加1,然后500ms读取一次定时器0的计数值,再乘以2大约就是1s内的脉冲,不就是NE555输出的方波的频率吗。
然后按键、LED、数码管等等其余需要使用定时器的就使用定时器1来完成。
主要代码:
//记500ms,乘以2就是频率
if(f_flag) //500ms
{
f_flag = 0;
TR0 = 0; //关闭定时器0
FRE = TH0 * 256 + TL0; //二进制转十进制
FRE *= 2; //乘2就为频率
TH0 = TL0 = 0; //将计数器的高低位置0
TR0 = 1; //打开定时器0
}
测试结果:
但是自己的显示结果肯定是不够的的,需要结合示波器来判断自己测量是否准确;我的测试结果之前在学校实验室校对过。
完整代码粘贴:
#include <stc15f2k60s2.h>
#define uchar unsigned char
#define uint unsigned int
uchar tab[] = {
0xc0