Keyestudio Rotary Encoder (Dönüş Kodlayıcı) Modül
151,88 TL
Kategori
Marka
Stok Kodu
KS0013
16,21 TL den başlayan taksitlerle!
Contents (Hızlı Menü)
Tanıtım
Dönüş (Rotary) kodlayıcı, kendi dönüşü sırasında pozitif ve negatif yöndeki dönme miktarını sinyal çıkışıyla sayabilir. Bu dönüş sayımı potansiyometre gibi değil, sınırsızdır. 0'dan saymak için başlangıç durumu tekrar belirlenebilir.
Özellikler
- Güç Beslemesi: 5V
- Arayüz: Dijital
- Ebat: 30*20mm
- Ağırlık: 7g
![]()
Connection Diagram / Bağlantı Şeması
![]()
Sample Code / Örnek Kod
const int interruptA = 0;
const int interruptB = 1;
int CLK = 2; // PIN2
int DAT = 3; // PIN3
int BUTTON = 4; // PIN4
int LED1 = 5; // PIN5
int LED2 = 6; // PIN6
int COUNT = 0;
void setup()
{
attachInterrupt(interruptA, RoteStateChanged, FALLING);
// attachInterrupt(interruptB, buttonState, FALLING);
pinMode(CLK, INPUT);
digitalWrite(2, HIGH); // Pull High Restance
pinMode(DAT, INPUT);
digitalWrite(3, HIGH); // Pull High Restance
pinMode(BUTTON, INPUT);
digitalWrite(4, HIGH); // Pull High Restance
pinMode(LED1, OUTPUT);
pinMode(LED2, OUTPUT);
Serial.begin(9600);
}
void loop()
{
if (!(digitalRead(BUTTON)))
{
COUNT = 0;
Serial.println("STOP COUNT = 0");
digitalWrite(LED1, LOW);
digitalWrite(LED2, LOW);
delay (2000);
}
Serial.println(COUNT);
}
//-------------------------------------------
void RoteStateChanged() //When CLK FALLING READ DAT
{
if (digitalRead(DAT)) // When DAT = HIGH IS FORWARD
{
COUNT++;
digitalWrite(LED1, HIGH);
digitalWrite(LED2, LOW);
delay(20);
}
else // When DAT = LOW IS BackRote
{
COUNT--;
digitalWrite(LED2, HIGH);
digitalWrite(LED1, LOW);
delay(20);
}
}
Resources / Kaynaklar
Video
https://drive.google.com/open?id=1WV0fSJS60CTnD6jSeNJrqSjRRvmfRJEM
Bu ürüne ilk yorumu siz yapın!
