#include <EncButton.h>
#include <Arduino.h>

Encoder enc(7, 6);

void setup() {
  Serial.begin(115200);
}

void loop() {
  enc.tick();
  static int val = 0;
  static uint32_t tmr = 0;
  static bool changed = false;

  if (changed && millis() - tmr > 500) {
    changed = false;
    apply(val);
  }
  if (enc.turn()) {
    changed = true;
    tmr = millis();
    val += enc.dir() * 5;
  }
}

void apply(int new_val) {
  Serial.println("New value applied;");
  Serial.print("val = ");
  Serial.println(new_val);
}