KY040 Rotary Encoder Kullanımı

KY040 Rotary Encoder Kullanımı

KY040
Ky040 Rotary Encoder Pin Bağlantıları
  • Gerekli malzemeler
    • Herhangi bir Arduino geliştirme kartı
    • Ky040 rotary encoder modülü
    • Jumper kablo
int CLK = 8;
/*int SW = 10;*/ // ihtiyaç duyulması halinde üzerinde bulunan Switch buton olarak kullanılabilir
int DT = 9;
int RotPosition = 0;
int rotation;
int value;
boolean LeftRight;
void setup() {
  Serial.begin (9600);
  pinMode (CLK, INPUT);
  pinMode (DT, INPUT);
  //  pinMode(SW,INPUT);
  rotation = digitalRead(CLK);
}
void loop() {
  value = digitalRead(CLK);
  if (value != rotation) { // hangi yöne döndüğünü bulmak için DT pinini kullanıyoruz.
    if (digitalRead(DT) != value) {  // Saat Yönünde
      RotPosition ++;
      LeftRight = true;
    } else { //Saat yönünün tersine
      LeftRight = false;
      RotPosition--;
    }
    if (LeftRight) {
      Serial.println ("arti");
    } else {
      Serial.println("eksi");
    }
    Serial.print("Sayac : ");
    Serial.println(RotPosition);
  }
  rotation = value;
}
Seri Monitör Çıktısı

Yorumlar kapalı.

nurullahozkan@outlook.com.tr