int volatile pulse = 0;
int volatile angle = 0;
float omega;
int angle_old = 0;
float old_millis = 0;
float dt;
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
pinMode(2, INPUT_PULLUP);
attachInterrupt(digitalPinToInterrupt(2), encoder, FALLING);
}
void loop() {
// put your main code here, to run repeatedly:
Serial.println(angle);
// dt = millis()-old_millis;
// omega = 1000*(angle_old-angle)/dt;
// angle_old = angle;
// old_millis = millis();
// Serial.println(omega);
}
void encoder(){
if (digitalRead(3)==0){
pulse+=1;
}else{
pulse-=1;
}
angle = (pulse % 20)*18;
}