5 Zoll Waveshare Touch-Display am Raspberry Pi 2

Für meinen Raspberry Pi 2 habe ich mir ein 5 Zoll Touch-Display von Waveshare geholt. Es ist günstig und besitzt einen HDMI Ausgang und kann dadurch ohne Weiteres auch ohne Treiber verwendet werden. Für Raspbian gibt es ein vorgefertigtes SD-Karten Image, das man auf eine SD-Karte übertragen kann.

Da ich das Display allerdings nicht nur unter Raspbian verwenden möchte und ich auch lieber mein eigenes Image verwende (wer weiss, was auf dem vorgefertigten Image so drauf ist) und es auch unter Windows 10 laufen soll, trage ich hier ein paar Informationen rund um das Display zusammen. Ich hoffe dadurch herauszufinden, wie man den Touch-Controller direkt über die GPIOs ansteuern kann.

Technische Daten

  • Auflösung: 800×480 Pixel
  • HDMI Eingang
  • Resistiver Touchscreen
  • Hintergrundbeleuchtung über Schalter am Display ein- und ausschaltbar
  • XPT2046 Touchcontroller

GPIO Schnittstelle

Pin Nummer Name Beschreibung
1, 17 3.3V Stromversorgung +3.3V
2, 4 5V Stromversorgung +5V
3, 5, 7, 8, 10, 11, 12, 13, 15, 16, 18, 24 NC Nicht verbunden
6, 9, 14, 20, 25 GND Ground
19 TP_SI SPI Dateneingang des Touchpanels
21 TP_SO SPI Datenausgang des Touchpanels
22 TP_IRQ Touch Panel Interrupt, low wenn der Stift das Panel berührt
23 TP_SCK SPI Takt des Touchpanels
26 TP_CS Chip Select, low aktiv

HDMI Ausgabe am Raspberry Pi einrichten

Möchte man das Display direkt unter einem nicht vorgefertigten Image verwenden, muss man den HDMI Ausgang des Raspberry Pi auf die richtige Auflösung einstellen. Da das Display eine Auflösung von 800×480 Pixel hat, muss die Einstellung in der config.txt angepasst werden und zwar im konkreten Fall die Einstellung des hdmi_mode. Dazu öffnet man die config.txt, die man in der Boot-Partition findet, und fügt folgende Zeilen hinzu:

hdmi_group=2
hdmi_mode=1
hdmi_mode=87
hdmi_cvt 800 480 60 6 0 0 0

Danach den Raspberry Pi neu starten und das Display sollte das Bild komplett darstellen. Bei mir lief die Grafikausgabe dann sowohl unter Windows IoT als auch unter Arch Linux und Raspbian ohne Probleme.

Touchscreen unter Windows IoT

Das Display läuft mit den Einstellungen aus dem vorherigen Abschnitt schon ohne Probleme über HDMI, allerdings fehlt immer noch die Unterstützung des eingebauten Touchscreens unter Windows IoT. Einen offiziellen Treiber gibt es von Waveshare leider nicht, aber mittlerweile wurde eine Alternativlösung entwickelt, die man in seine Programme einbauen kann. Die Bibliothek stellt dazu einen Treiber für den Touchscreen Controller (TSC2046), einen Touchprocessor, der die Events und Klicks registriert und die UI Events ansteuert und ein Kalibrierungscontrol zur Verfügung. Damit hat man eigentlich alles, was man in seiner Anwendung zur Nutzung des Touchscreens benötigt in einem Paket.

Entwickelt wurde die Bibliothek von Morten Nielsen. Sie ist auf folgender Seite zu finden: Hackster.io - Building a Touch-enabled Interface for Windows IoT

elektronik/waveshare_display_am_raspberry_pi_2.txt · Zuletzt geändert: 2016/04/07 21:12 von octoate
CC Attribution-Noncommercial-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0