Cái này thì trong quá trình test không thấy sai.. chỉ có điều tốc độ vẫn chậm heheMã:boolean A, B, lastA, lastB; attachInterrupt(1, doEncoder, CHANGE); //2x Quadrature Encoder void doEncoder() { A = digitalRead(enocderPinA); B = digitalRead(encoderPinB); if ((A != lastA) & (B != lastB)) { if (A ^ B) enc --; else enc ++; } lastA = A; lastB = B; }