Forum

Einloggen | Registrieren | RSS  

gast

16.02.2023,
07:19

@ RR

2.8" TFT-Touch mit Arduino-UNO geht nicht

» » » Die Adafruit 2.8" TFT display Library hab ich ja installiert
» » » Gruß RR
» »
» » Und die hat einen Treiber für ST7789V enthalten und du hast den auch
» » eingebunden?
» »
» » Das ist halt ein Arduino Grundproblem - viele Libs die
» » teilweise gleich heißen und total unterschiedliche Funktionen haben.
» » Beim Lib suchen kann man schon mal wahnsinnig werden und dann kommt ein
» » IDE Update....
» Ich hab die Adafruit-Library halt komplett installiert, von einem Treiber
» stand da nix.
» Aber ich habe nach dem auch schon gesucht und gefunden,
» aber wie binde ich den ein?

Kann sein, muss nicht sein dass die Adafruit genau dein Display unterstützt.
Frage 1 - welchen Prozessor hat dein Display?
Frage 2 - wird der von der Lib unterstützt?
Da hast mal ein Beispiel für eine andere Lib
https://reference.arduino.cc/reference/en/libraries/u8g2/
Da ist mal beschrieben welche Display mit welcher Ansteuerung überhaupt unterstütz werden.

Wenn das zusammen passt musst du natürlich in der Software der Lib sagen welches Display
du wirklich wie angeschlossen hast.

// Please UNCOMMENT one of the contructor lines below
// U8g2 Contructor List (Frame Buffer)
// The complete list is available here: https://github.com/olikraus/u8g2/wiki/u8g2setupcpp
// Please update the pin numbers according to your setup. Use U8X8_PIN_NONE if the reset pin is not connected

//U8G2_SSD1306_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0, /* reset=*/ U8X8_PIN_NONE);
//U8G2_SSD1306_128X64_ALT0_F_HW_I2C u8g2(U8G2_R0, /* reset=*/ U8X8_PIN_NONE); // same as the NONAME variant, but may solve the "every 2nd line skipped" problem
//U8G2_SSD1306_128X64_NONAME_F_SW_I2C u8g2(U8G2_R0, /* clock=*/ 13, /* data=*/ 11, /* reset=*/ 8);
//U8G2_SH1107_SEEED_128X128_F_HW_I2C u8g2(U8G2_R0, /* reset=*/ U8X8_PIN_NONE);
//U8G2_SH1107_SEEED_96X96_F_4W_HW_SPI u8g2(U8G2_R0, /* cs=*/ 10, /* dc=*/ 9, /* reset=*/ 8);
//U8G2_SH1107_HJR_OEL1M0201_96X96_F_4W_HW_SPI u8g2(U8G2_R0, /* cs=*/ 10, /* dc=*/ 9, /* reset=*/ 8);

Also wenn du z.B. ein HJR_OEL1M0201 verwendest musst du die Zeile im Code auskommentieren und mit SPI genau
so anschließen wie die Vorgabe ist.
"Tft not declared" ist der Fall wenn du ein TfT ansprechen willst, dass die Lib nicht kennt oder nicht im Code eingebettet ist.

Also welcher Treiber Chip ist auf deinem Display verbaut?
Wird der Chip von der Lib unterstützt?
Wie ist die Datenübertragung (seriell/parallel)
Wenn nur Linie funktionieren und sonst nix ist die Lib unpassend zum Display
Kannst du die Linien ändern (Länge, Lage) - wenn nicht dann ist die Lib völlig falsch

Die Waveshare lib muss natürlich im richtigen Verzeichnis entpackt vorliegen und über die IDE
Funktion Sketch -> Bibliothek einbinden -> Bibliothek verwalten der IDE "bekannt sein"
Solange du bei den Beispielen nicht die Waveshare Beispiele findest wird es nix mit dem Display.

Ein Waveshare Display mit einer Adafruit Lib kann klappen, muss aber nicht.
Welche IDE Version verlangt Waveshare?