İçindekiler:

TFT - Dokunmatik Panel: 3 Adım
TFT - Dokunmatik Panel: 3 Adım

Video: TFT - Dokunmatik Panel: 3 Adım

Video: TFT - Dokunmatik Panel: 3 Adım
Video: LVGL Demo on ESP32-S3 4.3" TFT & ESP32 2.8" TFT 2024, Kasım
Anonim
TFT - Dokunmatik Panel
TFT - Dokunmatik Panel
TFT - Dokunmatik Panel
TFT - Dokunmatik Panel

TFT Ekranlarla bazen öğrenmenin çok kolay bir yolu.

Vikipedi:Direnç teknolojisini kullanan dokunmatik ekranlı cihazlar, iki boyutlu bir membran potansiyometresi x ve y koordinatlarını sağlar. Üst katman, komşu bir iç katmana yakın aralıklı ince camdır. Üst katmanın alt tarafı şeffaf bir iletken kaplamaya sahiptir; altındaki tabakanın yüzeyi şeffaf dirençli bir kaplamaya sahiptir. Bir parmak veya ekran kalemi, alttaki katmana temas etmek için camı deforme ediyor. Direnç katmanının kenarları iletken kontaklara sahiptir. Temas noktasının bulunması, diğer iki kenarı geçici olarak bağlantısız bırakarak karşıt kenarlara voltaj uygulanarak yapılır. Üst katmanın voltajı bir koordinat sağlar. Bu iki kenarın bağlantısını kesmek ve daha önce bağlantısı olmayan diğer ikisine voltaj uygulamak, diğer koordinatı sağlar. Kenar çiftleri arasında hızla geçiş yapmak, sık sık konum güncellemeleri sağlar. Bir analogdan dijitale dönüştürücü, çıkış verileri sağlar.

İlk önce bir dokunuş olup olmadığını tespit etmemiz gerekiyor. Böylece bir katmanın/membranın her iki kablosunu da bağlarız, örn. X'ten toprağa (çıkış olarak ayarlanmış ardiuno pinlerinden DÜŞÜK) ve Y katmanından pull-up direncine bir tel (karşılık gelen arduino pinini INPUT_PULLUP olarak ayarlar). Y katmanının ikinci telini okurken, temas yoksa (çekme nedeniyle) YÜKSEK, temas varsa (topraklanmış X katmanıyla temas nedeniyle) DÜŞÜK alırız.

O zaman bir dokunuşun pozisyonunu okumamız gerekiyor. Bu yüzden X tellerinden birini YÜKSEK olarak ayarladık (hangisi dokunmatik ekranın hangi tarafında min/maks değerini okumak istediğimize bağlıdır; koddaki A/B varyantına bakın) ve Y üzerinde analog değeri okuruz. 0-1023 aralığında olun, ancak test ettiğim dokunmatik ekran 110-910 döndürüyor (Bu nedenle kalibre edilmesi gerekiyor - ILI9341_7.ino'yu çalıştırın). Daha sonra Y katmanına LOW-HIGH uygularız ve X üzerinde analog değeri okuruz.

Test ettiğim dokunmatik ekran bazen yanlış bir şekilde dokunulan noktanın dışında bir dokunuş algılıyor. Bunu önlemek için bazı gecikmeler ekledim ve X ve Y analog değeri tekrar tekrar okunuyor ve dokunma ancak değerler farklı değilse (çok fazla) onaylanıyor.

Adım 1: Malzeme Listesi (Donanım)

Malzeme Listesi (Donanım)
Malzeme Listesi (Donanım)
Malzeme Listesi (Donanım)
Malzeme Listesi (Donanım)
Malzeme Listesi (Donanım)
Malzeme Listesi (Donanım)
Malzeme Listesi (Donanım)
Malzeme Listesi (Donanım)
  1. Arduino Uno - R3
  2. Arduino için TFT Ekran Kalkanı (ILI - 9341) (SPI Yok).
  3. bir pil 5v
  4. Bir UsB Kablosu

Adım 2: Çizim - Arduino 1.8.10 IDE'yi Kullanma. (Kütüphaneler Adafruit Dahil)

Sketch - Arduino 1.8.10 IDE'yi Kullanma. (Kütüphaneler Adafruit Dahil)
Sketch - Arduino 1.8.10 IDE'yi Kullanma. (Kütüphaneler Adafruit Dahil)

"Çip"i bu çizimle programlamak sadece Geleceğin Meydan Okuyanlarına Başlamak !!(… Bir SD Karttan Görüntüleri Görüntülemek, Parmak İzlerini Tanımlamak için Bir Panel, Bir Çok " Atari Oyunları " …) olasılıklar çoktur !!!

Bu Set (ILI 9341 - SPI yok) ihtiyaç duymama (kablolar & ve Çekme dirençleri, bu tür Ekranlar için gereken voltajı 3, 3 v için, Datasheets acc) çok kolaylaştırıyor, içinde bir regülatör var ve (Uno R3 için Tak ve Çalıştır yapılandırması-), ancak daha birçok "Arduino" kullanabilirsiniz (pin eklemeleri ile…kolayca), referanslar " Sketch " içine dahil edilmiştir.

Kitaplıkları ve örnekleri buradan indirin:

home.et.utwente.nl/slootenvanf/div/arduino…

Tks Twente Universiry.nl.

İndirmek için Kütüphanelerde başka örnekler de var. (açık kaynak)…Hesap Makinesi, SD kart Görüntüleyici, Dokunmatik Ekran Nokta Kalibratörü ve TFt dokunmatik Panel.

1 - Daha iyi bir basınç hassasiyeti için başka bir "İnce Ayar" (opsiyonel) dahildir, X+ ve X- (Eksen) arasındaki direnci bilmemiz gerekir. Bunun için okumak için herhangi bir multimetreye ihtiyacınız olacak!

Benim için (X+)& (X -) plakası boyunca 350 ohm kullanıyorum (Sketch'te göreceksiniz) ve sizinkinden farklı olabilir, yine de (Yazılım) yine de çalışacaktır !!

2 - Ekranda "kalem Noktasına dokunulduysa" bir "Gölge" yapın (dokunulan noktadan uzak) … Satırlarda (koordinatları) ayarlamanız gerekir: (örnek)

#define TS_MINX 145

#define TS_MINY 110

#define TS_MAXX 880

#define TS_MAXY 915

… Sabırlı olun (şikayet etmeyin) bazen bunu (sayıları) birçok kez değiştirmeniz gerekecek.

…araçlarınız var bunu yapın !!!

İyi Şanslar ve … esas olarak Eğlenmek !!!

Dikkatli ol !!! Mümkünse Evde Kalın!!!

Önerilen: