Touchpanel vier Zoll von Waveshare
TFT-LCD mit Controller ILI9486
Touch Screen Controller XPT2046
bezogen von der
Bastelgarage
Mit dem Anklicken von
Weiter stimmen Sie zu, dass wir Sie
auf nachfolgend genannte Internetadresse/Website
weitervermitteln:
https://www.bastelgarage.ch/4inch-tft-touch-screen-shield-fur-arduino
Wir speichern dazu nichts. Jedoch übermittelt Ihr Browser in diesem
Vorgang unsere Webadresse an den Zielserver.
Sollten Sie damit nicht einverstanden sein, können Sie die Adresse
durch Eingabe in die Adresszeile Ihres Browser auch ohne diese
Übermittlung erreichen.
Andernfalls können Sie den Vorgang hier komplett mit Klick auf
Schliessen abbrechen.
.
Ich betreibe dieses Touchpanel zusammen mit
einem zu Arduino Mega 328 kompatiblen Board
Mit dem Anklicken von
Weiter stimmen Sie zu, dass wir Sie
auf nachfolgend genannte Internetadresse/Website
weitervermitteln:
https://www.bastelgarage.ch/arduino-uno-kompatibles-board-atmega328
Wir speichern dazu nichts. Jedoch übermittelt Ihr Browser in diesem
Vorgang unsere Webadresse an den Zielserver.
Sollten Sie damit nicht einverstanden sein, können Sie die Adresse
durch Eingabe in die Adresszeile Ihres Browser auch ohne diese
Übermittlung erreichen.
Andernfalls können Sie den Vorgang hier komplett mit Klick auf
Schliessen abbrechen.
.
Beim Aufstecken ist zu beachten, dass es zur Seite des
Speisungs-Hohlsteckers des Arduino-Clons so aufgesteckt werden darf,
dass der sechspolige (3x2) Pfostenstecker in die gelbe Buchsenleiste
greift. Andernfalls wären die Speisungskontakte an schlechten Orten.
Das Board bietet einen Einschub für eine
Micro-SD-Karte (war
nicht im Lieferumfang), worauf mit der Arduino-Standard-Library
«SD» geschrieben und auch davon gelesen werden kann. Hier
kann zwar offenbar nichts kaputt gehen, aber der
«chip select»
SD_CS muss unter Umständen in den
Quelldateien auf den PIN mit Nummer 5 geändert werden.
Die Bibliotheken habe ich so installiert, wie dies auf der oben zum
Touchpanel verlinkten Seite beschrieben ist.
Völlig baff war ich, dass ich sogar die externe Library
GUIslice
Mit dem Anklicken von
Weiter stimmen Sie zu, dass wir Sie
auf nachfolgend genannte Internetadresse/Website
weitervermitteln:
https://github.com/ImpulseAdventure/GUIslice
Wir speichern dazu nichts. Jedoch übermittelt Ihr Browser in diesem
Vorgang unsere Webadresse an den Zielserver.
Sollten Sie damit nicht einverstanden sein, können Sie die Adresse
durch Eingabe in die Adresszeile Ihres Browser auch ohne diese
Übermittlung erreichen.
Andernfalls können Sie den Vorgang hier komplett mit Klick auf
Schliessen abbrechen.
zum
Laufen gebracht habe:
Ganz oben in der folgenden Arduino-Projektdatei
Documents\Arduino\libraries\GUIslice\examples\arduino\ex03_ard_btn_img\ex03_ard_btn_img.ino
steht, dass #define GSLC_SD_EN 1
gesetzt sein müsse.
Zusätzlich mussten in der Datei
Documents\Arduino\libraries\GUIslice\src\GUIslice_config.h
die zwei Kommentierungs-Schrägzeichen
zur Inbetriebsetzung des passenden Treibers entfernt werden.
So habe ich die Konfiguration wie folgt angepasst,
so dass bei Library-Updates nur diese eine Datei wiederangefasst
werden muss:
#include ../configs/ard-shld-waveshare_40_xpt2046.h
#undef ADATOUCH_X_MIN
#undef ADATOUCH_X_MAX
#undef ADATOUCH_Y_MIN
#undef ADATOUCH_Y_MAX
#undef ADATOUCH_REMAP_YX
#undef GSLC_ROTATE_SPECIAL
// Beginn der Kalibrationsausgabe
// DRV_TOUCH_XPT2046_PS [320x480]:
#define ADATOUCH_X_MIN 199
#define ADATOUCH_X_MAX 3860
#define ADATOUCH_Y_MIN 3950
#define ADATOUCH_Y_MAX 291
#define ADATOUCH_REMAP_YX 0
#define GSLC_ROTATE_SPECIAL 3 // No Rotation supported
// Ende der Kalibrationsausgabe
#undef GSLC_SD_EN
#define GSLC_SD_EN 1
Die Zeilen mit den Koordinaten passen zum Touch beim mir zugesandten
Modell und wurde mit
Documents\Arduino\libraries\GUIslice\examples\arduino\diag_ard_touch_calib\diag_ard_touch_calib.ino
auf die serielle Schnittstelle ausgegeben.
Für den Betrieb mit der SD-Karte musste ich nun auch für
GUI-Slice in der Datei
Documents\Arduino\libraries\GUIslice\configs\ard-shld-waveshare_40_xpt2046.h
ein #define anpassen:
// SD Card
#define ADAGFX_PIN_SDCS 5 // SD card chip select (if GSLC_SD_EN=1)
Falls jemand ein Gehäuse oder eine Frontblende für in einen
Schaltschrank für ein solches Panel kennt..?