3,5" TFT Display - Qual der Wahl

Hallo,

ich suche für ein Projekt ein 3,5" TFT Display mit Touchscreen.
Das ganze soll mit einem Arduino DUE laufen.

Was ich benötige:

  • Color Bitmaps von SD Karte anzeigen
  • Rotation des gesamten Bildes
  • Touchscreen
  • Bildaufbau sollte nicht zu lange dauern

Wie ich sehe, gibt es hier aber mehr Möglichkeiten...

Einmal das 3,5" von Adafruit:
Adafruit 3,5"

Und mittels der UTFT-Lib so ziemlich jedes Sainsmart TFT - gibt es eine ganze Menge.
Wie ich mitbekommen habe, ist der Macher der UTFT Lib von den Sainsmart Teilen aber nicht gerade angetan.
Ich hatte testweise mal eines in der Hand, die Beispiele liefen zumindest 1A!

Meine Frage ist jetzt:
Habt ihr Erfahrungen mit den TFT´s? Gerade auch was die betreffenden Libs angeht.
Läuft das reibungslos oder gibt es viele Probleme?

Am liebsten würde ich das Adafruit TFT und deren Lib nehmen.
Als Schnittstelle SPI - wie sieht es hier mit der Geschwindigkeit aus?

Kann die Adafruit_GFX Lib Color-Bitmaps zeichnen?
Soweit ich das sehe, geht das nur im SPI-Mode? (-> Geschwindigkeit?)
Rotation unterstütz die Lib im Vergleich zur UTFT-Lib auch.

Schön wäre natürlich auch, wenn man einfache Menüs basteln könnte. Also scrollen, evtl. (optisch ansporechende) Slider...

Wäre euch dankbar, wenn ihr eure Erfahrungen diesbezüglich mit mir teilt!

Vielen Dank!
Gruß Danie

Hallo,
"Als Schnittstelle SPI - wie sieht es hier mit der Geschwindigkeit aus?"

Die Schnittstelle ist mit der GFXLib eigentlich ausreichend schnell, wenn-
Du es richtig programmierst.
Immer nur das ändern, was sich auch NUR tatsächlich ändert.

"Kann die Adafruit_GFX Lib Color-Bitmaps zeichnen? "

Die kann von der SD-Card Bilder laden, keine Ahnung wie schnell.
Zeichnen kannst Du damit alles, ausreichend schnell.

Ich habe einen Bargraph für ein Poti probiert (0-1023).
Wenn Du es richtig machst, dann funktioniert das.
Die Lib/Display kommt mit dem "drehen" des Poti hinterher.

Programmierst Du die "0815", dann ist sie zu langsam. Was immer das bedeuten
soll..
Gruß und Spaß
Andreas

Was hältst du von einem via WiFi verbundenen alten/preiswerten Android Smartphone?
3,5" ist da ja locker abgedeckt. Vielleicht hast du auch noch irgendwo ein altes?

Mit einen ESP am Due im AP Mode müsste so etwas 'leicht' zu machen sein.
Eine App die den Due visualisiert sollte simpel sein, Drehen, Vergrößern, alles eingebaut,
Micro-SD ist auch oft eingebaut.

Zudem absolut drahtlos.

Schau mal nach den Nextion Displays. Ist ein ganz anderes Konzept. Grafix Schrift und co auf dem Display. Der Arduino kümmert sich nur um Werte und evtl. Displayseiten umschalteungen.
Die Konzept ist aus dem industriellen Stil. Es gibt eine kostenlose IDE für die Erstellung der HMI und das Display wird nur noch seriell an den Arduino angebunden.
http://www.komputer.de/zen/index.php?main_page=product_info&products_id=354

Gruß
DerDani

Danie_:
...
Meine Frage ist jetzt:
...? ...? ...? ...? ...? (-> ...?)

Eieiei. Das war jetzt aber mehr als eine Frage :wink:

Und gute Antworten hast Du auch schon bekommen. Mein Senf zur Sache: Ich habe recht gute Erfahrungen mit einem einfachen OLED-Display gemacht (siehe hier). Die Bibliothek dafür habe ich selbst getippt – entsprechend klein, flink und sparsam ist sie. Für ein anderes/größeres/buntes Display würde ich das wieder selbst programmieren.
Man weiß halt bis aufs letzte Bit, was drin steckt und kann beliebige Erweiterungen (Sachen zeichnen, drehen usw.) dazubasteln. Sowas braucht man aber nicht unbedingt. Wenn es nur schnell funktionieren soll, kann man auch ein fremdprogrammiertes Bibliotheksmonster nehmen.

HTH

Gregor

Große Bitmaps und Bilder rotieren (oder auch nur Schrift) dauert. Da lässt sich auch nicht viel optimieren. Das liegt einfach an der langsamen Hardware und an den relativ hohen Datenmengen.

Aber für einfache Menüs mit Buttons und die Farbe von Buttons und Schrift ändern reicht es völlig aus. Auch einfache Menü-Animationen sind möglich wenn man es geschickt anstellt. Ich hatte auch keine Probleme mit Sainsmart + UTFT.

Ausgabe von Adafruit_ILI9341\example\graphicstest für Adafruit 2.8 Color TFT Touchscreen Breakout v2 (240x320 Pixel):

ILI9341 Test!
Display Power Mode: 0x9C
MADCTL Mode: 0x48
Pixel Format: 0x5
Image Format: 0x0
Self Diagnostic: 0xC0
Benchmark                Time (microseconds)
Screen fill              2126428
Text                     247296
Lines                    2343420
Horiz/Vert Lines         179228
Rectangles (outline)     118828
Rectangles (filled)      4416416
Circles (filled)         906828
Circles (outline)        1023996
Triangles (outline)      743432
Triangles (filled)       1830856
Rounded rects (outline)  386092
Rounded rects (filled)   4896460
Done!

Das Laden einer Vollformatgrafik dauerte, wenn ich mich recht entsinne, knapp unter drei Sekunden.

Und unter diesen Aspekten hat das Nextion den Vorteil um das drumherum muss man sich nicht kümmern da dies lokal auf dem Display macht mit dem Grafik Prozessor und 4MB Flash onboard das Erweiterbar ist mir einer miniSD Karte. Man schickt nur Befehle über die Serielle Schnittstelle und muss sich um nix weiters kümmern auf der Arduino Seite. Ich habe mir so ein Nextion Display bestellt sobald das da ist schreibe ich mal was dazu.
Gruß
DerDani

volvodani:
Und unter diesen Aspekten hat das Nextion den Vorteil um das drumherum muss man sich nicht kümmern da dies lokal auf dem Display macht mit dem Grafik Prozessor und 4MB Flash onboard das Erweiterbar ist mir einer miniSD Karte. Man schickt nur Befehle über die Serielle Schnittstelle und muss sich um nix weiters kümmern auf der Arduino Seite. Ich habe mir so ein Nextion Display bestellt sobald das da ist schreibe ich mal was dazu.
Gruß
DerDani

Das Nextion sieht echt klasse aus und kostet garnicht so viel, wie ich zuerst vermutet habe!
Leider Lagerbestand 0 :confused:

Die Software zum erstellen, sieht auch Klasse aus! Kann man die vorab schonmal antesten oder bekommt man den Donwload erst mit dem Kauf gestellt? Konnte auf der Seite keinen Link finden!

Wann hast du es bestellt?
Gibt es schon eine Lib oder sendest du die Serial Befehle immer so raus? Command Set wäre mal interessant!
Wie funktioniert das mit dem Touch? Wird das auch auf der "GPU" auf dem TFT-Board gemacht oder muss man das auf dem Arduino erledigen?

Gruß Danie

Hallo,
vielleicht hilft es...

und hier...

den Rest suchst DU- dir selber.
Gruß und Spaß
Andreas

@Danie
Von Dani zu Danie ich habe es mit gestern bestellt dann gab es aber auch noch fünf.
Ich komme aus dem SPS-Programmierbereich und da werden alle HMI auf "diese" Art und weise umgesetzt. Deswegen habe ich mir so eines geordert. Frag doch mal bei denen nach wann die Nachlieferung bekommen die sind meist recht zügig.

Mit dem Touch ist das so das es "Elemente" Switches an Slider gibt man bekommt über serielle Befehle die Aktuelle Seite als Zahl zurück dann eine ID des Elementes und dann den Wert vom Slider wie du es parametriert hast oder 0 und 1 bei switches.

Download Software
Arduino Lib
Manual and Wiki

Es ist auch nur das 3.2" aus das 3.5" gibt es noch

Das 3.5

und hier alle anderen:
Shop
Gruß
DerDani

Mehr Einzelheiten kann ich erst Mitteilen wenn ich das Teil hier habe.

Aaaah, langsam leuchtet es ein!

Aber: Wie bekomme ich Variablen aufs Display?
Sowas wie die Uhrzeit aus ner RTC oder nen String von z.B. einem Lied?

Nochwas: wie sieht es mit dem 16MB Flash aus? Reicht der auch für viele Screen mit größeren Grafiken?

Ein Rotieren während des Betriebs ist vermutlich nicht möglich? Das kann man wohl nur am Anfang festlegen? Ich konnte zumindest kein Command-Set finden...

Bin sehr interessiert an der Sache!

@Dani: Da du von der SPS da schon mehr Erfahrung hast: Kannst du mich etwas unterstützen?

Gruß Danie

Ich habe das Display noch nicht hier. Muss selber ein bisschen Zeit haben einzuarbeiten.

Gruß
DerDani

Hallo,
wenn mich nicht alles täuscht, dann erstellst Du auf diesen Display´s eine
grafische Oberfläche am PC.
Du erstellst z.B. einen Button. Dem bringst Du dann bei was er senden soll,
und auf was er beim Empfang reagieren soll.
Ich stelle mir das so vor, das das Display der "Master" ist, und der Arduino
ist der Slave.
Der Master fragt nach Daten, und der Arduino liefert sie.
Ich glaube hier muss man 2mal programmieren, einmal das Display und einmal
den Arduino.
Ich glaube man muß sich sehr genau überlegen was man vor hat.
Mit einem normalen Display ist man wohl wesentlich flexibler.
Hier ist noch so ein Kanditat.
Ist es das, was Du gesucht hast? Command-Set?
Gruß und Spaß
Andreas

Dani, erzähl unbedingt was drüber wenn di das Ding da hast- meine LCARS-Macke bringt mir die Dinos regelmässig ins Stöhnen (okok, mitm Mega gehts, aber manchmal möcht mans einfach handlicher haben).

Hab mir eben auch einen bestellt! Mal sehen was das gibt.

Das Schwierige finde ich bei solchen Sachen immer, es optisch ansprechend hinzubekommen. Leider fängt das bei mir bereits mit den Grafiken an, da ich Photoshop nicht behersche :confused:
Wie macht ihr eure Icons/Symbole/Bildschirme?

Gruß Danie

Wie macht ihr eure Icons/Symbole/Bildschirme?

Ich nutze Google für die Icon und mit Paint.Net (ist eine schöne alternative zu Paint nicht so mächtig wie GIMP) und dann tausche ich die z.B. Farben auf den Icons aus.

Der Master fragt nach Daten, und der Arduino liefert sie.
Ich glaube hier muss man 2mal programmieren, einmal das Display und einmal
den Arduino.

Ist nicht ganz so der Arduino feuert die Daten selber und die werden auf dem Display verarbeitet.
Wird natürlich ein Button auf dem Display gedrückt feuert das Display einen String mit den Infos die man dann verarbeitet.
Hier muss man zweimal Programmieren das stimmt soweit aber du musst dich dann aber auf dem Arduino nicht drum kümmern : z.B. Einen Button. den nimmst du platzierst ihn (siehste auch direkt wo der ist) und den Wert dahinter. Bei einem "konventionellen" Display: Rechteck Zeichnen, Füllen, Touch auswerten (ist das der Bereich über dem Button der da gerade gedrückt wird), Font auswählen(in den Arduino speicher) und schreiben.
In wie weit Animationen umzusetzen sind mit dem Display habe ich noch keine Erfahrung.
Wie gesagt ich bekomme das Display heute oder morgen und mach mal nen kleinen Weekender.

Das Schwierige finde ich bei solchen Sachen immer, es optisch ansprechend hinzubekommen.

Ich bin der Meinung (komme aus der Industrie). Optisch Ansprechend aber auch "keep it clean as possible". Man sollte auf den ersten Blick sehen was los ist. Animationen und Spielereien machen einen ersten WOW Effekt aber haben meist wenig Nutzwert.

Gruß
DerDani

Tutorial
Hier ist ein sehr interessantes Tutorial sehr ausführlich von dem Schweizer mit schönen Akzent in Englisch.
Gruß
DerDani

So das Panel ist da mir gefallt das man alles vorher schön im Editor sich ansehen kann und auch Simulieren.
Das Panel hat einen guten Betrachtungswinkel. Die Panels lassen sich Verschiedene ausrichtungen projektieren als Horizontal(0° und 180°) und Vertikal (90° und 270°).
Innerhalb von 10-15 Minuten zwei Screens erstellt und ein bisschen gespielt. Es ist teilweise sehr schön zu bedienen wirklich nach dem WYSIWYG Prinzip. Abstriche bei der Verwendung von Schriftarten, diese muss man vorher in der gewünschten Schriftart importieren einfach ändern wie in "Word" ist nicht machbar.
Also Tahoma 16 ist eine Schrittart Tahoma 24 eine andere.
Bild1:

Bild2:

Was noch schön ist es lassen sich auf dem Panel schon Variablen manipulieren also das z.B. bei einem Druck auf eine Taste schon z.B. +10 bzw -10 verändert wird.

Mehr incl Arduino Anschluss und Testprogramm später.
Gruß
DerDani

Hallo,

coole Sache wie du so schreibst. Ist das schon die Enhanced Version? Wie ist die Reaktionszeit auf Touch? Allgemeiner Bildaufbau zügig? Gehen die auch mit I2C oder SPI oder nur mit serieller 232?