⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 frequencytest.c

📁 利用单片机测频率
💻 C
字号:


#include<reg51.h>
unsigned int count;
unsigned long int time,frequency;
bit flag;
counter()
{frequency=4*count/time;    //得到所的频率;
count=0;time=0;flag=1;
} 
timer0() interrupt 1 using 1     //计数中断
{count++;
} 
timer1() interrupt 3 using 3     //定时中断
{time++;
if(time==100){IE=0;counter();}      //关中断并转到处理函数;
}
main()
{ unsigned long int temp;
  P0=0;
  TMOD=0X2d;     //T1为定时方式,工作为2(即自重重载TH1),T0为计数方式,工作为1,计数位长16位;                     
  TH1=0x05;TL1=0x05;//定时时间为250us;
  TCON=0x50;
  IE=1;
  IP=0x02;    //把T0的中断级设为最高
  while(1)
  {if(flag==1)
     {temp=frequency;
      frequency=0;
      flag=0;
      P0=!P0;                 //得到频率后处理程序
      IE=1;                   //处理服务程序后开中断;
      }  
      }                                                                                                      
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -