unsigned int rln=4; unsigned int sc=0; //---------------------------------- void on_dousa( unsigned int ot1 ){ if (rln==5){rln=4;}else{rln=5;} ot1=ot1*1000; digitalWrite(rln, LOW); delay(ot1); digitalWrite(rln, HIGH); } //----------------------------------- void hyo(){ for(unsigned int i=0; i<33; i++){ on_dousa(5); if(sc!=1){return;} delay(1*1000); if(sc!=1){return;} delay(1*1000); if(sc!=1){return;}} sc=0;} void tuke(){ for(unsigned int j=0; j<3 ; j++){ for(unsigned int i=0; i<27; i++){ on_dousa(3); if(sc!=2){return;} delay(4*1000); if(sc!=2){return;} delay(4*1000); if(sc!=2){return;}} for(unsigned int i=0; i<30; i++){ delay(5*1000); if(sc!=2){return;} delay(5*1000); if(sc!=2){return;}}} sc=0;} //----------------------------------- void sw1(){ detachInterrupt(0); if(sc==0){sc=1; digitalWrite(6, HIGH);} else if(sc==1){sc=2; digitalWrite(6, LOW); digitalWrite(7, HIGH);} else{sc=0; digitalWrite(7, LOW);} attachInterrupt(0,sw1,FALLING);} //----------------------------------- void setup() { pinMode(4, OUTPUT); digitalWrite(4, HIGH); pinMode(5, OUTPUT); digitalWrite(5, HIGH); pinMode(6, OUTPUT); digitalWrite(6, LOW); pinMode(7, OUTPUT); digitalWrite(7, LOW); attachInterrupt(0,sw1,FALLING); } // ---------------------------------- void loop() { if(sc==1){hyo();} if(sc==2){tuke();} }