// 定時器0中斷處理程序//
void timer0() interrupt 1
{ TH0=(65536-50000)/256;
TL0=(65536-50000)%256; count++;
if(count==20)
{ count = 0; sec--;
if((flag0==1)||(flag0==2))
{ quan++;
switch(quan)
{ case 1 :mo_r=1;mo_l=0;break;
case 10:mo_r=0;mo_l=0;break;
case 15:mo_r=0;mo_l=1;break;
case 25:mo_r=0;mo_l=0;break; default:;
}
if(quan==30)
{ quan=0; }
}
if((sec == 0)&&(min != 0))
{ min--; sec = 59; }
if((sec<0)&&(min==0)&&(flag0==0)) //進水結束
{ switch(flag1)
{ case 1:flag0=1;xi();break;
case 2:flag0=2;pao();break;
case 3:flag0=2;pao();break;
case 4:flag0=2;pao();break;
default: err=1;led_wring = 0;
}
}
if((sec<0)&&(min==0)&&(flag0==2)) //泡衣結束
{ switch(flag3)
{ case 1:flag0=4;out();break;
case 2:flag0=4;out();break;
case 3:flag0=4;out();break;
default: err=1;led_wring = 0;
}
}
if((sec<0)&&(min==0)&&(flag0==4)) //出水結束
{ switch(flag2)
{ case 1:flag0=0;in();break;
case 2:flag0=0;in();break;
case 3:flag0=0;in();break;
case 4:flag0=3;xx();break;
default: err= 1;led_wring = 0;
}
}