|
代碼:
#include <reg51.h>
void Timer0_Init(void) //1毫秒@11.0592MHz
{
TMOD &= 0xF0; //設置定時器模式
TMOD |= 0x01; //設置定時器模式
TL0 = 0x66; //設置定時初始值
TH0 = 0xFC; //設置定時初始值
TF0 = 0; //清除TF0標志
EA = 1; //總中斷允許
ET0 = 1; //允許定時器0中斷
TR0 = 1; //啟動定時器T0
}
void main()
{
Timer0_Init();
P1 = 0xFF;
while(1)
{
}
}
void Timer0_Routine() interrupt 1
{
static unsigned int T0Count = 0;
static unsigned char temp = 0x00;
TL0 = 0x66; //設置定時初始值
TH0 = 0xFC; //設置定時初始值
T0Count++;
if(T0Count>=1000)
{
T0Count=0;
P1 = temp + 1;
temp = P1;
P1 = ~P1;
}
}
|
|