Rotary Encoder Tutorial with Arduino Code
int pulses, A_SIG=0, B_SIG=1; void setup(){ attachInterrupt(0, A_RISE, RISING); attachInterrupt(1, B_RISE, RISING); Serial.begin(115200); }//setup void loop(){ } void A_RISE(){ detachInterrupt(0); A_SIG=1; if(B_SIG==0) pulses++;//moving forward if(B_SIG==1) pulses--;//moving reverse Serial.println(pulses); attachInterrupt(0, A_FALL, FALLING); } void A_FALL(){ detachInterrupt(0); A_SIG=0;
For more detail: Rotary Encoder Video Tutorial with Arduino Code