ElektronikYazar:

Rotary Encoder ve TM1637 Sayacı

Rotary encoder yönünü kesmelerle okuyup artan veya azalan sayacı dört haneli TM1637 ekranda gösteren Arduino çalışması.

ArduinoC++TM1637Interrupts
Rotary Encoder ve TM1637 Sayacı

Proje Hakkında

Rotary encoder dönüşünü yön bilgisiyle okuyup sayısal değeri TM1637 dört haneli LED ekrana aktaran küçük bir gömülü sistem deneyi.

Nasıl Çalışıyor?

Encoder’ın A ve B kanalları Arduino’nun interrupt pinlerine bağlanıyor. Her yükselen kenarda forward() veya backward() kesmesi çalışıyor; diğer kanalın seviyesi dönüş yönünü belirliyor ve sayaç artırılıyor ya da azaltılıyor. Ana döngü yalnızca değer değiştiğinde showNumberDec() çağırarak ekranı yeniliyor.

Kullanılan Teknolojiler

  • Arduino C++: kesme rutinleri ve sayaç durumu.
  • TM1637Display: dört haneli LED ekran sürücüsü.
  • Donanım kesmeleri: encoder darbelerinin ana döngüden bağımsız yakalanması.

Donanım

Arduino Uno/Mega/Nano, dört kablolu rotary encoder ve TM1637 ekran.

Teknik Notlar

Kod temel quadrature yön okumasını gösteriyor; mekanik sıçrama için ek debounce filtresi bulunmuyor.

Kaynak Kod

Projeyi GitHub’da inceleyin.