So wie ich das als Laie verstehe, sollten doch mit der TestTouch.ino zumindest die Koordinaten rauskommen, egal was mit dem Display sonst so ist oder ob mein Sketch funktioniert oder nicht. Da es das nicht macht, bin ich wie gesagt eher an der Hardware als an der Software. Ich weiß morgen dann mehr und werde berichten.
Genauso. Las Dich nicht kirre machen. Er ist so.
Hardware würde bedeuten das entweder deine Platine defekt ist oder die Pins sich geändert haben, im Vergleich zur Anleitung.
Gruß
Pucki
Hast du die Readme gelesen ?
Hör auf mit dem Unsinn.
Mir reicht die Anleitung des Herstellers.
Gruß
Pucki
ich gehe von einem Problem des Touch-Teils des ResTouch LCDs aus. das will ich morgen erst ausschließen. Und ja, ich habe die Infos des Herstellers gelesen und mich daran orientiert. Da der Pico eine feste Position und damit Pinbelegung zum Display hat, sollte das ja passen was dort angegeben ist (ja, habe es auch nochmal an der Hardware kontrolliert)
Habe extra geschaut auf meine Displays mit Widerstand Tuch alle haben XPT2046. Der braucht nur SPI = MOSI, MISO, CLK, CS. IRQ ist normalerweise nicht notwendig und wird in der bei der TFT_eSPI, nur wen der Touch wird Träge ( Delays im Sketch) dann kann man IRQ zuschalten.
Um den Touch mit der TFT_eSPI nutzen muss der in User_Setup.h deklariert werden!
Beispiel, ist aber für ESP32 S3, somit muss alles angepast werden
#define TFT_MISO 0
#define TFT_MOSI 38// In some display driver board, it might be written as "SDA" and so on.
#define TFT_SCLK 48
#define TFT_CS 10 // Chip select control pin
#define TFT_DC 8 // Data Command control pin
#define TFT_RST 6 // Reset pin (could connect to Arduino RESET pin)
#define TFT_BL 3 // LED back-light
#define TOUCH_CS 13
Danke fürs nachschauen. CS und IRQ hab ich in der main.ino drin, den Rest in der User_Setup.h. habe CS und IRQ auch mal in der User_Setup abgebildet. ändert nichts.
hier noch die User_Setup.h nach den Vorgaben von Waveshare, passt auch zum Pinning.
#define ST7789_DRIVER
#define TFT_WIDTH 240
#define TFT_HEIGHT 320
#define TFT_MISO 12
#define TFT_MOSI 11
#define TFT_SCLK 10
#define TFT_CS 9
#define TFT_DC 8
#define TFT_RST 15
#define LOAD_GLCD
#define LOAD_FONT2
#define LOAD_FONT4
#define LOAD_FONT6
#define LOAD_GFXFF
#define SMOOTH_FONT
#define SPI_FREQUENCY 27000000
#define SPI_TOUCH_FREQUENCY 2500000
Bist Du Dir sicher?
Das ist doch SPI1!
Nimm mal bitte das test.ino example und setze mal im setup() die Zeile:
//ts.begin();
und die nachfolgende Zeile
ts.begin(SPI1);
Den Display wähle mal ohne Interrupt aus. Also die Variante mit ,255); oder ganz nur mit der CS-Pin Auswahl
Und beim CS hab ich auch Bauchschmerzen…
damit teste ich die Displays
TFT_eSPI-master\examples\Generic\Touch_calibrate
man kann auch damit testen
TFT_eSPI-master\examples\480 x 320\Touch_Controller_Demo
da hast du vollkommen recht. SPI1 ist es. Da hab ich vor lauter Bäumen den Wald nicht gesehen.
Zudem war ein Problem, dass die Rohdaten zwischen 4100 und 7800 ausgegeben werden, warum auch immer das so ist. Klar, dass bei einer Auswertung von 300-3800 dann nichts passiert. Aktuell funktioniert mein Programm jetzt so wie es soll. Vielen Dank für den Denkanstoß!
Ha, ein blindes Huhn hat ein Korn gefunden ![]()
Sodele….
Jetzt nimmst Du den gesamten test-Sketch und versucht mal mit der Rotation zu spielen.
Es gibt 4 Werte, von 0 bis 3, die Du da einsetzen kannst. Mit 1 bekommst Du Rohwerte 1:1 die anderen nehmen mal nur x, nur y oder x und y und rechnen die 12bit Ausgangswert dagegen.
Dann kannst Du Dich drum kümmern, das mapping zu bauen.
Man bin ich gut. ![]()
was habe noch rausgefunden ![]()
The XPT2046 requires a lower SPI clock rate of 2.5MHz so we define that here:
#define SPI_TOUCH_FREQUENCY 2500000 //2500000
das war von Anfang an schon definiert, siehe Ausschnitt vom Sketch in Post #29. Es läuft jetzt alles wie ich es mir vorgestellt habe, jetzt gehts an die Bluetooth-Schnittstelle
Danke euch
Schick.
Stellst den dann noch auf gelöst, dann haben andere die Chance das zu finden und in der Suchfunktion als Kriterium zu nutzen.
Wenn der TO nur die TFT_eSPI nutzt dan brauch man nicht mappen.
This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.