const int ledPins[] = {2, 4, 5, 18};
const int upButtonPin = 12;
const int downButtonPin = 13;
int counter = 0;
int maxCounter = 15;
void setup() {
for (int i = 0; i < 4; i++) {
pinMode(ledPins[i], OUTPUT);
}
pinMode(upButtonPin, INPUT_PULLUP);
pinMode(downButtonPin, INPUT_PULLUP);
Serial.begin(115200);
}
void loop() {
if (digitalRead(upButtonPin) == LOW) {
counter = (counter + 1) % (maxCounter + 1);
delay(200);
}
if (digitalRead(downButtonPin) == LOW) {
counter = (counter - 1 + maxCounter + 1) % (maxCounter + 1);
delay(200);
}
for (int i = 0; i < 4; i++) {
digitalWrite(ledPins[i], (counter >> i) & 0x01);
}
}