#define LED1_PIN 4
#define LED2_PIN 3
#define LED3_PIN 2
#define LED4_PIN 1
#define TASTER_UP_PIN 5
#define TASTER_DOWN_PIN 6
int LED_value = 0;
unsigned long current_time = 0;
unsigned long previous_time = 0;
bool button_up_state;
bool button_down_state;
void setup() {
pinMode(LED1_PIN, OUTPUT);
pinMode(LED2_PIN, OUTPUT);
pinMode(LED3_PIN, OUTPUT);
pinMode(LED4_PIN, OUTPUT);
pinMode(TASTER_UP_PIN, INPUT);
pinMode(TASTER_DOWN_PIN, INPUT);
Serial.begin(9600);
}
void update_LEDs(int value) {
digitalWrite(LED1_PIN, bitRead(value, 0) ? HIGH : LOW);
digitalWrite(LED2_PIN, bitRead(value, 1) ? HIGH : LOW);
digitalWrite(LED3_PIN, bitRead(value, 2) ? HIGH : LOW);
digitalWrite(LED4_PIN, bitRead(value, 3) ? HIGH : LOW);
}
void loop() {
current_time = millis();
button_up_state = digitalRead(TASTER_UP_PIN);
button_down_state = digitalRead(TASTER_DOWN_PIN);
if (current_time - previous_time >= 100) {
if (button_up_state == HIGH) {
LED_value++;
}
if (button_down_state == HIGH) {
LED_value--;
}
previous_time = current_time;
}
LED_value = max(LED_value, 0);
LED_value = min(LED_value, 15);
update_LEDs(LED_value);
Serial.println(LED_value);
}