?? frequency.c
字號:
#include <AT89X52.H>
#include <LCD1602.h>
unsigned char T0count;
unsigned char timecount;
bit flag;
unsigned long x;
//unsigned char code menu[2][16]={"Frequency is:MHz","Frequency is: Hz"};
/*************************************************************************************************************
主函數(shù)
*************************************************************************************************************/
void main(void)
{
// unsigned char i,j,k,l;
P1=0;
TMOD=0x15;
TH0=0;
TL0=0;
TH1=(65536-49989)/256;
TL1=(65536-49989)%256;
TR1=1;
ET0=1;
ET1=1;
EA=1;
TR0=1;
p=LCD_PutStr("Frequency is: Hz\n",-1); //顯示一段文字
while(1)
{
if(flag==1)
{
flag=0;
x=(T0count*65536+TH0*256+TL0)*16384+P0; //計(jì)算頻率
P1_0=1;
P1_0=0;
timecount=0;
T0count=0;
TH0=0;
TL0=0;
TR0=1;
//LCD_init( );
p=LCD_PutStr("\n",16);
p=LCD_PutNum(x,0,p); //顯示數(shù)
}
}
}
/*************************************************************************************************************
定時(shí)器、計(jì)數(shù)器設(shè)置
*************************************************************************************************************/
void t0(void) interrupt 1 using 0 //計(jì)數(shù)滿后T0count加1
{
T0count++;
}
void t1(void) interrupt 3 using 0 //定時(shí)1S鐘
{
TH1=(65536-50045)/256;
TL1=(65536-50045)%256;
timecount++;
if(timecount==20)
{
TR0=0; //關(guān)閉記數(shù)器
timecount=0;
flag=1; //1S定時(shí)到標(biāo)志
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -