hello, in this piece of code I am trying to control 8 relays. I am using a button to use two different loops of codes. when button is pressed <1 sec the first part of code runs, if >1 sec, second part of the code is run. I can't quite figure out how to set up the button in the code.... plz help me here!
also I would like to add a third part of the code, where it does nothing ( maybe if the button is pressed more than 5 seconds)
void setup() {
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
}
void loop() {
while (status_button == HIGH){
button_delay++;
delay(100);
Serial.println("holding");
status_button = digitalRead(inputPin);
}
if (timer < 10) //button has been pressed less than a second
{
digitalWrite(5, HIGH);
delay(200);
digitalWrite(5, LOW);
delay(300);
digitalWrite(5, HIGH);
delay(200);
digitalWrite(5, LOW);
delay(300);
digitalWrite(5, HIGH);
delay(200);
digitalWrite(5, LOW);
delay(3000);
digitalWrite(9, HIGH);
delay(200);
digitalWrite(9, LOW);
delay(300);
digitalWrite(9, HIGH);
delay(200);
digitalWrite(9, LOW);
delay(300);
digitalWrite(9, HIGH);
delay(200);
digitalWrite(9, LOW);
delay(3000);
digitalWrite(4, HIGH);
delay(200);
digitalWrite(4, LOW);
delay(300);
digitalWrite(8, HIGH);
delay(200);
digitalWrite(8, LOW);
delay(300);
digitalWrite(4, HIGH);
delay(200);
digitalWrite(4, LOW);
delay(300);
digitalWrite(8, HIGH);
delay(200);
digitalWrite(8, LOW);
delay(300);
delay(169000);
}
else {
digitalWrite(3, HIGH);
delay(150);
digitalWrite(3, LOW);
delay(300);
digitalWrite(7, HIGH);
delay(150);
digitalWrite(7, LOW);
delay(300);
digitalWrite(5, HIGH);
delay(100);
digitalWrite(5, LOW);
delay(300);
digitalWrite(9, HIGH);
delay(100);
digitalWrite(9, LOW);
delay(300);
digitalWrite(5, HIGH);
delay(100);
digitalWrite(5, LOW);
delay(300);
digitalWrite(9, HIGH);
delay(100);
digitalWrite(9, LOW);
delay(300);
digitalWrite(3, HIGH);
delay(100);
digitalWrite(3, LOW);
delay(500);
digitalWrite(7, HIGH);
delay(100);
digitalWrite(7, LOW);
delay(500);
digitalWrite(5, HIGH);
delay(100);
digitalWrite(5, LOW);
delay(500);
digitalWrite(9, HIGH);
delay(100);
digitalWrite(9, LOW);
delay(500);
digitalWrite(2, HIGH);
delay(100);
digitalWrite(2, LOW);
delay(500);
digitalWrite(6, HIGH);
delay(100);
digitalWrite(6, LOW);
delay(500);
}
}