5" TFT am Mega2560, Belegung Touchfunktion

Hallo,

ich habe mir von coldtears ein 5"TFT-LCD gekauft. Nun habe ich das Problem, dass ich keine Touchfunktion ausführen kann.
Beim 3,2" habe ich im Code die Anweisung 'UTouch myTouch(6,5,4,3,2);
UTFT_Buttons myButtons(&myGLCD, &myTouch); stehen.
Ist diese Pinbelegung richtig, oder muss ich hier was anderes eintragen?

Hat noch jemand eine Idee, um bei dem 5"-Display die Ansicht um 180Grad zu drehen, (es steht alles auf dem Kopf)?

Gruß Franz

Hallo,
"Hat noch jemand eine Idee, um bei dem 5"-Display die Ansicht um 180Grad zu drehen, (es steht alles auf dem Kopf)"
Dafür könnte es einen "Knopf" an dem Display geben.
Dafür könnte es eine Lötbrücke am Display geben.
Normalerweise wird das aber über die Lib ("rotate 180" gemacht, kann auch ähnlich sein.
Schon einmal versucht das Display um 180 Grad zu drehen?
Hast Du ein Datenblatt dafür und kannst es einmal anhängen?
Das "myTouch(6,5,4,3,2);" sollten die Pin´s für den TouchController sein.
Ich weiß nicht, wo die an Deinem Display ausgeführt werden.
Unterstützt Deine Lib denn Display und Controller?
Gruß und Spaß
Andreas

a) was genau für ein Display benutzt Du? (Datenblatt!)
b) wie hast Du Display und Board verbunden? Nutzt Du dafür Kabel und verbindest das Display direkt oder ist da noch ein Shield dazwischen?

Hallo Andreas,

zunächst mal ist man im Forum unterwegs weil man Fragen hat. Es gibt sehr viele nette Leute in dieser Gruppe, die versuchen durch selber gemachte Erfahrungen oder einfach durch Wissen den Fragenden zu helfen.
Deine verbalen Ergüsse kannst Du dir wirklich sparen. Seichtes Gequatsche und nachäffen, sonst nichts.
Soweit mein Kommentar. 8)

Da nicht alle Hellseher sind, will ich hier nochmals genauer erläutern:
Ein 5" TFT-LCD-Display mit Touch u. Font-IC, gekauft bei coldtears electronic. Das ist nun das dritte Display, was ich gekauft habe. Jeder Händler verspricht das Feature mit dem Font-IC, aber nirgends ist dieser bestückt. Also alles zurück und Geld retour. Nun habe ich einen Händler gefunden, der tatsächlich das verkauft was er in den techn. Daten verspricht.
Das Demo, hier unter 5" TFT LCD Module 800x480 with Font IC Demo for Arduino DUE and Mega 2560 - YouTube läuft exakt so ab wie im Video.
Man beachte, dass das USB-Kabel links angeschlossen ist und genauso habe ich mein Display platziert. Die Schriften usw. sind bei mir alle um 180Grad gedreht, alles steht auf dem Kopf.

So, nun habe ich zwei Probleme oder Fragen in die Runde:
Hat jemand solch ein Display zusammen mit einem Mega2560 und einem CTE-Shield richtig am Laufen?
Zunächst geht es mir um das Touch, welches mit meinen Beispielen nicht reagiert, das alte 3,2"-TFT aber schon.
Die Codezeile

UTouch  myTouch(6,5,4,3,2);
UTFT_Buttons  myButtons(&myGLCD, &myTouch);

ist vom 3,2"-TFT. Meine Frage war: ist das so richtig, oder kennt jemand eine andere Zahlenkombi? Ich vermute nämlich hier den Fehler.

Dann soll es ja Leute geben, die es geschafft haben, das Display in der Anzeige zu drehen, und genau die oder den suche ich.
Ich habe mit dem Beschäftigen und Austesten dieser Displayserie in lockerer Folge meinen Urlaub verbracht, habe also schon viel Zeit investiert, bin in den Libs unterwegs gewesen. Aber es kann doch nicht sein, dass ich hier in der hintersten Ecke von Libraries rumkratzen muss, oder.

Zusammenfassung meiner Probleme:

  1. Touch reagiert auf nichts, meine Vermutung eine ander Pinbelegung
  2. Anzeige um 180Grad drehen

Gibts jemanden der hier schon weiter ist als ich.
Übrigens, die verwendeten Libraries sind von henning (UTFT...)

Oh ich sehe grad, da hat sich was überschnitten.
Datenblatt habe ich vom TFT-Controller einem SSD1963 und der Touchcontroller nennt sich XPT2046 (Datenblatt?).

Gruß Franz

P1040538.JPG

P1040539.JPG

@ Franz:
Ich glaube du hast Andreas falsch verstanden.

Es geht einfach darum, das hier wieder einmal zu wenig Fakten bei der Threaderstellung auf dem Tisch gelegen haben :sweat_smile:

Wer mal ein bisschen bei ebay, offizielen Arduino Distributoren geschaut hat, dem wird auffallen, dass man nicht einfach sagen kann, das man ein 5" oder 3.2" Display hat und man dazu nun Hilfe braucht. Es gibt einfach zuviele TFT/LCD/GLCD/Oled Displays. Und nicht jedes Display wird gleich angesteuert.

Es gibt teils sogar bei den einfahcen LCDs (16x2) den einen oder anderen Unterschied, der dazu führen kann, dass es etwas nicht funktioniert.

Wenn man eine Frage stellt, dann sollte wenn möglich (wenn das Teil nicht gerade von einem Offline Flohmarkt kommt), einen Link zum Hersteller, oder Verkäufer dazulegen. Eine Suchmaschine sollte jeder beherschen. Es macht wenig Sinn, wenn die Leute, die helfen wollen, erst einmal sich durch mehrer Suchergebnissen schlagen müssen, nur um zu wissen, welches der Displays das genau ist.

Des weiteren wurde auch nicht darauf eingegangen, welche Libary genutzt wird. Okay, das ist hier ersichtlich, für den jenigen, der bereits die Henning Karlson Libary (UTFT) genutzt hat.

Du könntest vielleicht die Library selbst anpassen. Ausprobiert habe ich es nicht, aber die Schlüsselstelle dürfte hier liegen:

void UTFT::setXY(word x1, word y1, word x2, word y2)
{
}

Wenn du da jeweils von der Display-Höhe y1 und y2 abziehst, dürfte es gespiegelt sein.

Also sowas:

int height = getDisplayYSize();
y1 = height - y1;
y2 = height - y2;

EDIT:
Hier muss man mal schauen ob getDisplayYSize() 480 oder 479 zurückgibt. Man muss das natürlich so umsetzen dass dass 0 zu 479 wird und 479 zu 0.

Hallo alpenpower,
"Seichtes Gequatsche und nachäffen, sonst nichts"

Ich habe Dir zu Deinem Display einige ziemlich sachliche Fragen gestellt.
Was Du mir vielleicht ankreiden könntest, wäre:

"Schon einmal versucht das Display um 180 Grad zu drehen?"

Das ist schon ernst gemeint.
Du hast sicher schon anhand Deines Datenblatt (das Du uns ja noch immer nicht
zur Verfügung gestellt hast) festgestellt- wo bei dem Display
"Top und Bottom" ist.

"Zusammenfassung meiner Probleme:
"1. Touch reagiert auf nichts, meine Vermutung eine ander Pinbelegung"
2. Anzeige um 180Grad drehen"

zu 1.
wenn es eine andere Pinbelegung hat, dann hast DU es falsch verdrahtet!

zu 2. wenn Du nicht weißt wo oben und unten ist, woher willst Du dann wissen
ob es richtig anzeigt.

"das Display in der Anzeige zu drehen"

Sicher hast Du Dir das Manual zu der "Henning Karlsen Lib" aufmerksam
durchgelesen.
Zitat:
"Degrees to rotate text (0-359). Text will be rotated"

Auch wirst Du den Typ des YouTubeVideo gefragt haben, ob er diese Funktion
genutzt hat…
So- jetzt kannst Du mich mal mit Deinem 5" DaumenKino gerne haben.
Gruß und Spaß
Andreas
P.S. komme bitte nicht auf den dummen Gedanken, hier ein Datenblatt des
SSD1963 oder XPT2046 einzustellen, das nützt nichts.
Damit weiß keiner wie das Display zu verdrahten ist, und welche Pin´s es
wofür nutzt.

SkobyMobil:
Sicher hast Du Dir das Manual zu der "Henning Karlsen Lib" aufmerksam
durchgelesen.
Zitat:
"Degrees to rotate text (0-359). Text will be rotated"

Das ist nicht so schön. Damit wird für jeden einzelnen Pixel eine Koordinatentransformation gemacht. Also 4 mal cos/sin. Das dauert EWIG.

Außerdem stimmt damit dann das Koordinaten-System noch nicht.

hallo zusammen,

ich hab nochmals intensiv nachgeforscht und zum Thema im www so gut wie nichts gefunden.
Heute hatte ich mit henning kontakt, der mir bestätigt, dass seine Libs keine Funktion für eine Rotation um 180Grad eingebaut haben. In der Doku vom Displayhersteller habe ich ebenfalls nichts dergleichen gefunden.
Den Menschen, der in youtube dieses Video eingestellt hat, hatte ich ebenfalls kontaktiert, aber nie was bekommen, leider.

Die Lib ändern bringt ebenfalls nichts.

Ich stelle hiermit den Forschungsauftrag ein und bedanke mich herzlich für die Bemühungen.

Gruß Franz