int led1 = 3;
int led2 = 4;
int switchPin = 5;
int nextPin = 6;
int repeatPin = 7;
int lastEffect = 0; // Add a new variable to keep track of the last effect
void setup() {
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(switchPin, INPUT_PULLUP);
pinMode(nextPin, INPUT_PULLUP);
pinMode(repeatPin, INPUT_PULLUP);
}
void loop() {
if (digitalRead(switchPin) == LOW) {
effect1 ();
lastEffect = 1; // Set the last effect variable to 1
}
else if (digitalRead(nextPin) == LOW) {
if (lastEffect == 1) {
effect2 ();
lastEffect = 2; // Set the last effect variable to 2
}
else {
effect1 ();
lastEffect = 1; // Set the last effect variable to 1
}
}
else if (digitalRead(repeatPin) == LOW) {
if (lastEffect == 1) {
effect1 ();
}
else {
effect2 ();
}
}
}
void effect1() {
digitalWrite(led1, HIGH);
digitalWrite(led2, LOW);
delay(500);
digitalWrite(led1, LOW);
digitalWrite(led2, HIGH);
delay(500);
digitalWrite(led2, LOW);
}
void effect2() {
digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
delay(100);
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
delay(100);
digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
delay(100);
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
}