WSAL10684 – 2.8inch TFT Touch Shield
Erscheinungsbild
Dokumentationshinweis: Diese technische Dokumentation wurde aus einer archivierten Lieferantenquelle neu formuliert. Technische Angaben und Befehle müssen vor der Verwendung mit der Produktversion und den Herstellerunterlagen abgeglichen werden.
Zusammenfassung
Das Waveshare 2.8-Zoll-TFT-Touch-Shield ist ein erweiterbares Display-Modul mit ST7789V-Treiberchip, SPI-Schnittstelle, 320×240-Auflösung und vierdrahtigem Widerstands-Touchpanel. Es lässt sich direkt auf Arduino-Boards (z. B. UNO) oder STM32-Boards (z. B. XNUCLEO-F103RB) aufstecken und wird über die integrierte SD-Karten-Schlitzung für Bildanzeige unterstützt.
Zugeordnete Produkte bei JW Tech
Technische Übersicht
- Treiberchip: ST7789V; Schnittstelle: SPI; Auflösung: 320×240; Anzeigegröße: 57,6 mm × 43,2 mm; Konturabmessung: 73,3 mm × 55,3 mm; Farben: RGB, 262K; Touch-Methode: Vierdraht-Widerstandsfolie.
- Schnittstellen: SCLK (SPI-Uhr), MISO, MOSI, LCD_CS (LCD-Chipauswahl), LCD_BL (Hintergrundbeleuchtung), LCD_DC (Befehl/Daten-Auswahl), SD_CS (SD-Chipauswahl), TP_CS (XPT2046-Chipauswahl), TP_IRQ (XPT2046-Interrupt), 5V, GND.
- Anwendungsfälle: Digitaler Bilderrahmen, Zeichenbrett, E-Books, MP3-Player.
- Bei Verwendung eines Arduino-Boards mit ICSP-Schnittstelle bleiben Jumper SB1, SB2 und SB3 offen. Bei Boards ohne ICSP müssen SB1, SB2 und SB3 jeweils mit einem 0-Ohm-Widerstand verbunden werden.
- Softwareinstallation unter Windows: Die Bibliotheken aus dem Ordner 2.8inch_TFT_Touch_Shield/Arduino/lib in das Verzeichnis \Arduino\libraries kopieren. Beispielprogramm öffnen, Board als Arduino UNO wählen, passenden COM-Anschluss auswählen, dann kompilieren und herunterladen.
- Vier Beispielfunktionen: DisplayString (Zeichenfolge anzeigen), DrawGraphic (Grafik zeichnen), ShowBMP (BMP-Bilder von der SD-Karte anzeigen), TouchPanel (Touch-Stift-Funktion).
- Für die Bildanzeige: Bilder im Format 240×320, 24 Bit, BMP; SD-Karte im FAT-Dateisystem formatieren; Bilder direkt ins Wurzelverzeichnis der SD-Karte kopieren (keine Unterordner).
- Vor dem Testen des TouchPanels muss das Touchpanel kalibriert werden: Stift verwenden, um auf das rote Pluszeichen zu tippen, bis die Kalibrierung abgeschlossen ist; CLEAR oben rechts zum Löschen des Displays.
- Touch-Funktionen in Touch.cpp: tp_adjust() (Kalibrierung), tp_dialog() (Bildschirm weiß leeren), tp_draw_board() (Zeichenbrett öffnen).
- Display-Funktionen in LCD.cpp: lcd_init(), lcd_draw_point(), lcd_display_char(), lcd_display_num(), lcd_draw_line(), lcd_draw_circle(), lcd_draw_v_line(), lcd_draw_h_line(), lcd_draw_rect(). Zwei Schriftgrößen in font.c: Höhe 12/Breite 6 und Höhe 16/Breite 8.
Befehle und Beispiele – vor Ausführung prüfen:
void TFT::lcd_init()
void TFT::lcd_draw_point(uint16_t hwXpos, uint16_t hwYpos, uint16_t hwColor)
void TFT::lcd_display_char(uint16_t hwXpos, uint16_t hwYpos, uint8_t chChr, uint8_t chSize, uint16_t hwColor)
void TFT::lcd_display_num(uint16_t hwXpos, uint16_t hwYpos, uint32_t chNum, uint8_t chLen, uint8_t chSize, uint16_t hwColor)
void TFT::lcd_draw_line(uint16_t hwXpos0, uint16_t hwYpos0, uint16_t hwXpos1, uint16_t hwYpos1, uint16_t hwColor)
void TFT::lcd_draw_circle(uint16_t hwXpos, uint16_t hwYpos, uint16_t hwRadius, uint16_t hwColor)
void TFT::lcd_draw_v_line(uint16_t hwXpos, uint16_t hwYpos, uint16_t hwHeight, uint16_t hwColor)
void TFT::lcd_draw_h_line(uint16_t hwXpos, uint16_t hwYpos, uint16_t hwWidth, uint16_t hwColor)
void TFT::lcd_draw_rect(uint16_t hwXpos, uint16_t hwYpos, uint16_t hwWidth, uint16_t hwHeight, uint16_t hwColor)
tp_adjust()
tp_dialog()
tp_draw_board()
Hinweise und Versionsgrenzen
- Die beschriebenen Demos wurden auf Arduino UNO und XNUCLEO-F103RB getestet; Übertragung auf andere Boards erfordert Anpassung der Pinbelegung gemäß Schaltplan.
- Die Rev2.1-Version verwendet den ST7789V-Treiber mit IPS-Panel und 262K Farben; ältere Versionen nutzten HX8347 mit 65K Farben. Die Rev2.1 unterstützt laut Hersteller 30 MHz Schreibgeschwindigkeit, die alte Version 50 MHz.
- Beim Einsetzen des Shields: Bei Boards ohne ICSP-Schnittstelle (z. B. NUCLEO) müssen die Pads SB1–SB3 mit 0-Ohm-Widerständen oder Lötzusammenschluss verbunden werden; andernfalls funktioniert das LCD möglicherweise nicht korrekt.
- SD-Karte muss im FAT-Dateisystem formatiert sein; Bilder müssen exakt 240×320 Pixel, 24-Bit-BMP sein und direkt im Wurzelverzeichnis liegen.
- Die Kalibrierung des Touchpanels muss vor jedem Neustart bzw. nach Änderungen durchgeführt werden; ohne Kalibrierung sind die Koordinaten ungenau.
Quelle und Revisionsnachweis
- 2.8inch TFT Touch Shield - Waveshare Wiki
- Quellrevision: 104256
- Erfasst: 2026-08-30T02:36:42+00:00
- SHA-256:
6450723f879eb08fdd0a720e789e473a4c4d50bf6e1bedc49307d8b09c69c5f6