// LED Push Button
#define R_1 4
#define R_2 5
#define G_1 6
#define G_2 7
#define B_1 8
#define B_2 9
#define button 17
int status = 0;
void setup() {
pinMode(R_1, OUTPUT);
pinMode(R_2, OUTPUT);
pinMode(G_1, OUTPUT);
pinMode(G_2, OUTPUT);
pinMode(B_1, OUTPUT);
pinMode(B_2, OUTPUT);
pinMode(button, INPUT);
digitalWrite(R_1, LOW);
digitalWrite(R_2, LOW);
digitalWrite(G_1, LOW);
digitalWrite(G_2, LOW);
digitalWrite(B_1, LOW);
digitalWrite(B_2, LOW);
}
void loop() {
if (digitalRead (button) == HIGH) {
digitalWrite(R_1, LOW);
digitalWrite(R_2, LOW);
digitalWrite(G_1, LOW);
digitalWrite(G_2, LOW);
digitalWrite(B_1, LOW);
digitalWrite(B_2, LOW);
delay(1000);
status++;
}
if (status == 1) {
// Pattern 1
digitalWrite(R_1, HIGH);
digitalWrite(R_2, LOW);
digitalWrite(G_1, LOW);
digitalWrite(G_2, LOW);
digitalWrite(B_1, LOW);
digitalWrite(B_2, LOW);
delay(500);
digitalWrite(R_1, LOW);
digitalWrite(R_2, HIGH);
delay(500);
digitalWrite(R_2, LOW);
digitalWrite(G_1, HIGH);
delay(500);
digitalWrite(G_1, LOW);
digitalWrite(G_2, HIGH);
delay(500);
digitalWrite(G_2, LOW);
digitalWrite(B_1, HIGH);
delay(500);
digitalWrite(B_1, LOW);
digitalWrite(B_2, HIGH);
delay(500);
} else if (status == 2) {
// Pattern 2
digitalWrite(R_1, HIGH);
digitalWrite(R_2, HIGH);
digitalWrite(G_1, LOW);
digitalWrite(G_2, LOW);
digitalWrite(B_1, LOW);
digitalWrite(B_2, LOW);
delay(500);
digitalWrite(R_1, LOW);
digitalWrite(R_2, LOW);
digitalWrite(G_1, HIGH);
digitalWrite(G_2, HIGH);
delay(500);
digitalWrite(G_1, LOW);
digitalWrite(G_2, LOW);
digitalWrite(B_1, HIGH);
digitalWrite(B_2, HIGH);
delay(500);
} else if (status == 3) {
// Pattern 3
digitalWrite(R_1, HIGH);
digitalWrite(R_2, LOW);
digitalWrite(G_1, HIGH);
digitalWrite(G_2, LOW);
digitalWrite(B_1, HIGH);
digitalWrite(B_2, LOW);
delay(500);
digitalWrite(R_1, LOW);
digitalWrite(R_2, HIGH);
digitalWrite(G_1, LOW);
digitalWrite(G_2, HIGH);
digitalWrite(B_1, LOW);
digitalWrite(B_2, HIGH);
delay(500);
} else {
digitalWrite(R_1, LOW);
digitalWrite(R_2, LOW);
digitalWrite(G_1, LOW);
digitalWrite(G_2, LOW);
digitalWrite(B_1, LOW);
digitalWrite(B_2, LOW);
status = 0;
}
}