ESP32 Kapasitif Dokunmatik Sensör Pinleri

ESP32 kapasitif dokunmatik sensör pinleri genellikle, ESP32’yi derin uykudan uyandırmak için kullanılır ve bir çok projede büyük bir kolaylık sağlar. ESP32 dokunmatik pinleri, elektrik yükü taşıyan herhangi bir şeydeki değişiklikleri algılayabilir. Genellikle ESP32’yi derin uykudan uyandırmak için kullanılırlar.

ESP32 Kapasitif Dokunmatik Sensör Pinleri esp32 kapasitif dokunmatik sensör,kapasitif dokunmatik,kapasitif dokunmatik sensör

ESP32 dokunmatik pinlerinin değerini okumak için, okumak istediğiniz GPIO’yu argüman olarak kabul eden touchRead(GPIO) işlevini kullanın.

ESP32, 10 kapasitif dokunmatik GPIO’ya sahiptir. Bu GPIO’lar, insan derisi gibi elektrik yükü taşıyan herhangi bir şeydeki değişiklikleri algılayabilir. Böylece GPIO’lara parmakla dokunulduğunda ortaya çıkan varyasyonları tespit edebilirler.

Bu pinler, kapasitif pedlere kolayca entegre edilebilir ve mekanik düğmelerin yerini alabilir. Ek olarak, dokunmatik pinler, ESP32 derin uykudayken bir uyandırma kaynağı olarak da kullanılabilir.

10 farklı dokunma sensörünü bulmak için kartınızın pin çıkışına bir göz atın – dokunmaya duyarlı pinler pembe renkle vurgulanmıştır.

ESP32 Kapasitif Dokunmatik Sensör Pinleri esp32 kapasitif dokunmatik sensör,kapasitif dokunmatik,kapasitif dokunmatik sensör

ESP32 GPIO’lar hakkında daha fazla bilgi edinin: ESP32 Pin Referansları

Dokunmatik sensör 0’ın GPIO 4’e, dokunmatik sensör 2’den GPIO 2’ye vb. karşılık geldiğini görebilirsiniz.

Not: Dokunmatik sensör 1, GPIO 0’dır. Ancak, bu özel ESP32 geliştirme kartında (30 GPIO’lu sürüm) pin olarak mevcut değildir. GPIO 0, 36 pinli versiyonda mevcuttur.

Not: Bu öğreticiyi hazırlarken, Arduino IDE’de dokunmatik pin atamasıyla ilgili bir sorun olduğunu fark ettik. GPIO 33, atamada GPIO 32 ile değiştirilir. Bu, GPIO 32’ye başvurmak istiyorsanız, kodda T8 kullanmanız gerektiği anlamına gelir. GPIO33’e başvurmak istiyorsanız T9 kullanmalısınız. Bu sorunu yaşamıyorsanız, lütfen bu notu dikkate almayın.

touchRead()

Dokunmatik sensörü okumak basittir. Arduino IDE’de, okumak istediğiniz GPIO’yu argüman olarak kabul eden touchRead() işlevini kullanırsınız.

touchRead(GPIO);

Arduino Kodu

ESP32’yi Arduino IDE kullanarak programlayacağız, bu yüzden devam etmeden önce ESP32 kütüphanesinin kurulu olduğundan emin olun:

Arduino IDE’ye ESP32 Desteği Kurmak (Windows, Linux, MacOS)

Kütüphaneden bir örnek kullanarak bu fonksiyonun nasıl çalıştığını görelim. Arduino IDE’de Dosya > Örnekler > ESP32 > öğesine gidin ve TouchRead taslağını açın.

void setup() {
  Serial.begin(115200);
  delay(1000); 
  Serial.println("ESP32 Dokunma Testi");
}

void loop() {
  Serial.println(touchRead(4)); 
  delay(1000);
}

Bu örnek, dokunmatik pin 0’ı okur ve sonuçları Seri Monitörde görüntüler.

T0 pini (dokunmatik pin 0), pin çıkışında daha önce gördüğümüz gibi GPIO 4’e karşılık gelir.

Bu kodda, setup() içinde, sensör okumalarını görüntülemek için Seri Monitörü başlatarak başlarsınız.

Serial.begin(115200);

loop(), sensörü okuduğunuz yerdir.

Serial.println(touchRead(4));

touchRead() işlevini kullanın ve okumak istediğiniz pini argüman olarak iletin. Bu durumda örnek, GPIO 4’te dokunmatik sensör 0 olan T0’ı kullanır. Dokunmatik sensör numarasını (T0) veya GPIO numarasını (4) iletebilirsiniz.

Şimdi kodu ESP32 kartınıza yükleyin. Doğru kartın ve COM bağlantı noktasının seçili olduğundan emin olun.

GPIO 4’e bir kablo bağlayın. Dokunmayı algılaması için bu telin metal kısmına dokunacaksınız.

Arduino IDE penceresinde Araçlar’a gidin ve 115200 baud hızında Seri Monitörü açın. Her saniye yeni değerlerin görüntülendiğini göreceksiniz.

GPIO 4’e bağlı kabloya dokunun, değerlerin düştüğünü göreceksiniz.

ESP32 Kapasitif Dokunmatik Sensör Pinleri esp32 kapasitif dokunmatik sensör,kapasitif dokunmatik,kapasitif dokunmatik sensör

Değerleri daha iyi görmek için seri çiziciyi de kullanabilirsiniz. Seri monitörü kapatın, Araçlar > SerialPlotter’a gidin.

Dokunmaya Duyarlı LED Yakan Devre

Çıkışları kontrol etmek için bu özelliği kullanabilirsiniz. Bu örnekte, basit bir dokunmatik kontrollü LED devresi oluşturacağız. GPIO’ya parmağınızla dokunduğunuzda LED yanar.

Gerekli Malzemeler

  • ESP32 Geliştirme Kartı
  • 5mm LED
  • 330Ω direnç
  • Breadboard
  • Kablo

Bir parça alüminyum folyo alın, küçük bir kare kesin ve aşağıdaki şekilde gösterildiği gibi telin etrafına sarın.

ESP32 Kapasitif Dokunmatik Sensör Pinleri esp32 kapasitif dokunmatik sensör,kapasitif dokunmatik,kapasitif dokunmatik sensör

Önceki kod çalışırken, seri monitöre geri dönün.

Şimdi alüminyum folyoya dokunduğunuzda değerlerin tekrar değiştiğini göreceksiniz.

ESP32 Kapasitif Dokunmatik Sensör Pinleri esp32 kapasitif dokunmatik sensör,kapasitif dokunmatik,kapasitif dokunmatik sensör

Bizim durumumuzda pine dokunmadığımızda normal değer 70’in üzerinde, alüminyum folyoya dokunduğumuzda ise 10’un altına düşüyor.

Böylece bir eşik değeri belirleyebiliyoruz ve okuma o değerin altına düştüğünde bir LED yanıyor. Bu durumda iyi bir eşik değeri örneğin 20’dir.

Devre Şeması

Aşağıdaki şematik diyagramı izleyerek devrenize bir LED ekleyin. Bu durumda LED’i GPIO 16’ya bağlıyoruz.

ESP32 Kapasitif Dokunmatik Sensör Pinleri esp32 kapasitif dokunmatik sensör,kapasitif dokunmatik,kapasitif dokunmatik sensör

Arduino Kodu

Aşağıdaki kodu Arduino IDE’nize kopyalayın.

const int touchPin = 4; 
const int ledPin = 16;

const int esikdeger = 20;
int dokunmadegeri;

void setup(){
  Serial.begin(115200);
  delay(1000);

  pinMode (ledPin, OUTPUT);
}

void loop(){

  dokunmadegeri = touchRead(touchPin);
  Serial.print(dokunmadegeri);

  if(dokunmadegeri < esikdeger){
    
    digitalWrite(ledPin, HIGH);
    Serial.println(" - LED ac");
  }
  else{
  
    digitalWrite(ledPin, LOW);
    Serial.println(" - LED kapat");
  }
  delay(500);
}

Bu kod tanımladığımız pinden dokunma değerini okur ve değer eşiğin altına düştüğünde bir LED yakar. Bu, parmağınızı alüminyum pedin içine yerleştirdiğinizde LED’in yandığı anlamına gelir.

ESP32 Kapasitif Dokunmatik Sensör Pinleri esp32 kapasitif dokunmatik sensör,kapasitif dokunmatik,kapasitif dokunmatik sensör

Özetle

  • ESP32, 10 kapasitif dokunmatik GPIO’ya sahiptir.
  • Dokunmaya duyarlı bir GPIO’ya dokunduğunuzda sensör tarafından okunan değer düşer.
  • Dokunma algıladığında bir şeyin gerçekleşmesi için bir eşik değeri belirleyebilirsiniz.
  • ESP32 dokunmatik pinleri, ESP32’yi derin uykudan uyandırmak için kullanılabilir.

Yorum yapma özelliği, forum tarafından gelen istek sebebiyle kapatılmıştır. Lütfen tartışmalar ve sorularınız için topluluk forumumuza katılın.