int ENCODER_CLK = 2;
int ENCODER_DT=3;
int counter = 0;
#include <Servo.h>
Servo myservo;
void setup() {
Serial.begin(115200);
pinMode(ENCODER_CLK, INPUT);
pinMode(ENCODER_DT, INPUT);
myservo.attach(9);
myservo.write(counter);
}
int lastClk = HIGH;
void loop() {
int newClk = digitalRead(ENCODER_CLK);
if (newClk != lastClk) {
// There was a change on the CLK pin
lastClk = newClk;
int dtValue = digitalRead(ENCODER_DT);
if (newClk == LOW && dtValue == HIGH) {
counter++;
if (counter > 180) counter = 180;
myservo.write(counter);
Serial.println(counter);
//delay(50);
}
if (newClk == LOW && dtValue == LOW) {
counter--;
if (counter < 0) counter = 0;
myservo.write(counter);
Serial.println(counter);
//delay(50);
}
}
}