<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 51單片機簡(jiǎn)易頻率計源代碼

51單片機簡(jiǎn)易頻率計源代碼

作者: 時(shí)間:2016-11-30 來(lái)源:網(wǎng)絡(luò ) 收藏
//定時(shí)器0 設置定時(shí)時(shí)間1秒 定時(shí)器1 設置計數1秒內的脈沖數量
#include
#define uchar unsigned char
#define uint unsigned int
uint ff; //接受頻率值
uchar start=1; //定時(shí)器,計數模式啟動(dòng)變量
code uchar seg[]={0x28,0x7e,0xa2,0x62,0x74,0x61,0x21,0x7a,0x20,0x60};
code uchar tab[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};
void delay(uint k) //延時(shí)函數
{
while(k--);
}
void show(uint k) //數值顯示函數
{
static uchar i,j;
uint ss[5];
i=0;
do
{
ss[i]=k%10;
i++;
}while(k/=10);
for(j=0;j {
P0=seg[ss[j]];
P2=tab[j];
delay(100);
P0=0xff;
P2=0xff;
}
}

void time0_init()
{
TMOD|=0x01; //定時(shí)器0 定時(shí)模式 計數范圍65536
TH0=0x3c; //定時(shí)初值50ms
TL0=0xb0;
TR0=0; //暫停定時(shí)器0
}
void time1_init()
{
TMOD|=0x50; //定時(shí)器1 計數模式,計數范圍65536
TH1=0; //計數初值0
TL1=0;
TR1=0;//暫停計數器
}
void str_init() //定時(shí)器中斷
{
EA=1;
ET0=1;
}
void time0_event() interrupt 1
{
static uchar i;
i++;
TH0=0x3c; //定時(shí)初值50ms
TL0=0xb0;
if(i==20)
{
i=0;
TR1=0; //停止計數
TR0=0; //停止定時(shí)
ff=(TH1*256+TL1); //求出頻率值 就是1秒內脈沖次數
TH1=0; //計數值清零
TL1=0;
TH0=0x3c; //定時(shí)初值50ms
TL0=0xb0;
start=1; //啟動(dòng)定時(shí)器開(kāi)啟變量
}
}
void main()
{
time0_init();
time1_init();
str_init();
while(1)
{
if(start==1)
{
TR0=1; //啟動(dòng)定時(shí)器
TR1=1; //啟動(dòng)計數器
start=0; //關(guān)閉啟動(dòng)變量位 保證1秒時(shí)間
}
show(ff);
}
}


關(guān)鍵詞: 51單片機頻率

評論


技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>