#define r 2
#define g 4
#define b 5
#define btn 13
int counter;
int lbs = LOW;
unsigned long lbt = 0;
const unsigned long dly = 500;
void setup() {
pinMode(r, OUTPUT);
pinMode(g, OUTPUT);
pinMode(b, OUTPUT);
pinMode(btn, INPUT_PULLUP);
}
void loop() {
int btnState = digitalRead(btn);
if (btnState == LOW && lbs == HIGH && (millis() - lbt) > dly) {
lbt = millis();
counter = (counter + 1) % 9;
}
if (counter == 1) {
digitalWrite(r, LOW);
digitalWrite(g, LOW);
digitalWrite(b, LOW);
}
if (counter == 2) {
digitalWrite(r, LOW);
digitalWrite(g, LOW);
digitalWrite(b, HIGH);
}
if (counter == 3) {
digitalWrite(r, LOW);
digitalWrite(g, HIGH);
digitalWrite(b, LOW);
}
if (counter == 4) {
digitalWrite(r, LOW);
digitalWrite(g, HIGH);
digitalWrite(b, HIGH);
}
if (counter == 5) {
digitalWrite(r, HIGH);
digitalWrite(g, LOW);
digitalWrite(b, LOW);
}
if (counter == 6) {
digitalWrite(r, HIGH);
digitalWrite(g, LOW);
digitalWrite(b, HIGH);
}
if (counter == 7) {
digitalWrite(r, HIGH);
digitalWrite(g, HIGH);
digitalWrite(b, LOW);
}
if (counter == 8) {
digitalWrite(r, HIGH);
digitalWrite(g, HIGH);
digitalWrite(b, HIGH);
}
lbs = btnState;
}