新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 51單片機(jī)程序——定時(shí)器控制LED閃爍

51單片機(jī)程序——定時(shí)器控制LED閃爍

作者: 時(shí)間:2016-11-23 來(lái)源:網(wǎng)絡(luò) 收藏
#include
#define uint unsigned int
uint i=0;
void delay(uint z) //延遲函數(shù)
{
uint x,y;
for(x=z;x>0;x--)
for(y=20;y>0;y--);
}
void main (void)
{
TMOD=0x10; //TMOD賦值,以確定T0和T1的工作方式
TH1=(65536-50000)/256; //計(jì)算初值,并將其寫(xiě)入TH0、TL0或TH1、TL1
TL1=(65536-50000)%6;
EA=1; //打開(kāi)總中斷
ET1=1; //打開(kāi)定時(shí)器1中斷
TR1=1; //啟動(dòng)定時(shí)器1
while(1)
{
if(i==20) //定時(shí)器計(jì)數(shù)時(shí)間20*50MS=1S
{
i=0; //清除標(biāo)志位
P0=0xaa;
delay(500);
P0=0xff;
delay(500);
}
}
}
void exter1() interrupt 3 //定時(shí)器1中斷函數(shù)
{
TH1=(65536-50000)/256; //中斷函數(shù)中也需要賦定時(shí)器初值
TL1=(65536-50000)%6;
i++; //定時(shí)器每50MS就使i加一
}


評(píng)論


技術(shù)專區(qū)

關(guān)閉