#include<reg51.h>
//宏定義
#define uchar unsigned char
#define LED P2
//全局變量
uchar Time;
void main(void)
{
uchar data1=0xfe;
TMOD = 0x01; //選擇工作方式1
TH0 = 0x3C; //設置初始值,定時50MS
TL0 = 0xB0;
EA = 1; //打開總中斷
ET0 = 1; //打開定時器0中斷
TR0 = 1; //啟動定時器0
while(1)
{
LED = data1;
if(Time==10) //0.5s進入if內進行移位
{
Time = 0;
data1 = data1<<1|0x01;
if(data1==0xff)data1=0xfe;
}
}
}
void Timer0() interrupt 1
{
TH0 = 0x3C; //設置初始值
TL0 = 0xB0;
Time++;
}
|