void main()
{
EA = 0; /* 关闭中断 */
Init_System(); /* 初始化系统 */
while(1)
{
RSTSTAT = Bin(00000000); /* 喂狗 */
if(gbFlagTimeFinish==1) /* 定时中断是否完成 */
{
LED_OUT|=LED_BIT;
LED_DIR|=LED_BIT;
}
}
}
void Init_System()
{
// CLKCON = Bin(00000000);
/************************* 初始化IO口 *************************/
/* 使用到的IO口 */
P0SS = Bin(00000000); /* P0口用作IO使用 */
P0CR = Bin(11111111); /* P0用作LED灯控制口,设置P1为输出口 */
P0 = Bin(00000000); /* P0输出低电平 */
TF0 = 0;
TR0 = 0;
TMOD = Bin(00000001); /* 设置定时器0为工作方式1 */
// TCON1 = Bin(00000100); /* 设置定时器0的时钟源为系统时钟的1/12 */
TL0 = LOBYTE(CLOCK_250US); /* 设置定时初值 */
TH0 = HIBYTE(CLOCK_250US);
TR0 = 1;
ET0 = 1;
EA = 1; /* 开全中断 */
}
void ISR_Timer0(void) interrupt 1
{
EA = 0;
TF0 = 0;
TL0 = LOBYTE(CLOCK_250US); /* 重载定时器计数值 */
TH0 = HIBYTE(CLOCK_250US);
gbFlagTimeFinish = 1;
EA = 1;
}
大家帮我看看,为什么中断不了 |