單片機(jī)C語言程序設(shè)計:定時器控制單只LED
/* 名稱:定時器控制單只 LED
說明:LED 在定時器的中斷例程控制下不斷閃爍。
*/
#includereg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit LED=P0^0;
uchar T_Count=0;
//主程序
void main()
{
TMOD=0x00;
//定時器 0 工作方式 0
TH0=(8192-5000)/32; //5ms 定時
TL0=(8192-5000)%32;
IE=0x82; //允許 T0 中斷
TR0=1;
while(1);
}
//T0 中斷函數(shù)
void LED_Flash() interrupt 1
{
TH0=(8192-5000)/32; //恢復(fù)初值
TL0=(8192-5000)%32;
if(++T_Count==100)//0.5s 開關(guān)一次 LED
{
LED=~LED;
T_Count=0;
}
}
評論