#include <Encoder.h>
Encoder myEncoder(3, 2); // CLK і DT піни
int clickCounter = 0; // Змінна для лічильника кліків
void setup() {
Serial.begin(9600);
}
void loop() {
// Зчитуємо зміни позиції енкодера
long encoderValue = myEncoder.read();
// Перевіряємо, чи змінилась позиція енкодера
if (encoderValue != 0) {
// Збільшуємо або зменшуємо лічильник в залежності від напрямку руху енкодера
clickCounter += encoderValue;
// Якщо досягнуто кратного числа кліків (4, 8, 12 тощо), виводимо лічильник
if (clickCounter % 4 == 0) {
Serial.println(clickCounter / 4);
}
// Обнуляємо позицію енкодера, щоб готувати його до наступного вимірювання
myEncoder.write(0);
}
}