Mahlzeit,
ich möchte mir ein TFT-Display holen und dafür eine Grafische
Benutzeroberfläche programmieren. Was brauche ich dazu? Visual Studio
und QT-Designer? Oder reicht auch eins von beiden? Oder ist sogar beides
falsch?
Bin über jeden hinweis dankbar.
Rolf F.
Du gibst Details an, die keine Rolle spielen (die Art des Displays (*))
und lässt alles weg, was wichtig wäre ... Welches Betriebssystem? Welche
Programmiersprache? Warum nur eine GUI, existiert der Rest schon? Wie
umfangreich soll das Ganze werden?
(*) Sofern du einen PC und einen "normal" daran angeschlossenen Monitor
meinst.
Wenn du es nicht kannst oder so.
Ich empfehle dir Nextion Hmi displays
Wie Ebay 391329519078.
Lassen sich mehr oder weniger Einfach in einer Klick Bunt
Benutzeroberfläche in Windows Programmieren sind erstaunlich billig
Und brauchen nur 5v. Signal geben sie Seriell aus und Seriell kann man
sie auch mit Informationen füttern.
Zb du erstellt auf deinem Display ein Textfeld mit Wunsch Schrift und
Farbe
und sendest über Seriell nur den Text der dann dort erscheint.
Rolf F. schrieb:> Was brauche ich dazu? Visual Studio> und QT-Designer?
Was du da anführst setzt auf ein Betriebssystem mit grafischer
Benutzeroberfläche auf, also Windows oder Linux. Wenn du das nicht hast,
musst du damit anfangen, dir eine eigenes solches Betriebssystem zu
programmieren.
Georg
Manfred Lub schrieb:> Ich empfehle dir Nextion Hmi displays> Wie Ebay 391329519078.
Die gibts übrigens auch zu fast gleichen Preisen in Deutschland.
Schneller geliefert und keinen Stress mit dem Zoll bei den großen Größen
Ahso, so weit hatte ich noch nicht gedacht.
Ich bräuchte ein Display, auf dem ich eine Menüstruktur aufbauen kann
und dass beim Drücken eines bestimmten Feldes ein neues Fenster zeigt,
bzw. Daten zum Mikrocontroller sendet.
Da ich das noch nicht habe, wollte ich erst am Computer (Windows) die
Oberfläche Programmieren.
Dann habe ich gedacht, dass ich das compilieren könnte und auf das
Displaymodul spielen könnte.
Dann muss ich noch erst mal weiter gucken
Rolf F. schrieb:> Da ich das noch nicht habe, wollte ich erst am Computer (Windows) die> Oberfläche Programmieren.
Beim Kuchen backen fängt man auch erst mit der Glasur an, sieht halt
einfach besser aus.
> Beim Kuchen backen fängt man auch erst mit der Glasur an, sieht halt> einfach besser aus.
Besonders wenn man in der Küche den Backofen nicht vom Wasserhahn
unterscheiden kann.
(wo wird denn hier die Kohle eingefüllt?)
> Na ja, mit einem Tool, mit dem man schnell zum Ziel kommt, einen> "interaktiven Prototypen" zu bauen, kann bei einer GUI schon sinnvoll> sein.
Also Fingermalfarben, die kleben überall dran und wenn's trocken ist
kann man den farbigen Film am Stück abziehen und anderswo dranpappen.
Z. Udummfür schrieb:> kann man den farbigen Film am Stück abziehen
Du kennst nur einen Bruchteil der Möglichkeiten. Richtige
Fingermalfarben bilden keinen abziehbaren Film, das wäre ja noch
schöner.
Für sehr begrenzte Ressourcen gab es unter (uC-)Linux auch mal
nanowindows und ein zweites System, dessen Name ich gerade verdrängt
habe :-P
Das lief jedenfalls sogar auf dem Palm III mit 16Mhz m68k und 2MB ROM.
Da das doch nicht so funktiniert wie ich gedacht habe, habe ich dann
noch ein paar Nachfragen:
Ich möchte eine Bedienoberfläche erstellen, wo man Passwort eingeben
kann und sich dann durch ein Menü durchtippen kann. Bei bestimmten
Tasten (z.B. 'Start') soll ein Signal an einem Mikrocontroller gesendet
werden. (wenn möglich, über UART (also Daten und nicht nur I/O).
Dazu habe ich gedacht, mache ich das Menü in C++ QT und lade es dann auf
das Display-Modul. Da ich das noch nie gemacht habe, wollte ich das
Menü, welches dann auf dem Display erscheinen soll, zunächst am Computer
bauen.
Was für ein Modul bräuchte ich dafür?
Was für Software bräuchte ich dafür?
Ist das überhaupt möglich, wie ich es mir vorgestellt habe? (bei den
bisherigen Kommentaren denke ich eher nicht)
Auf was muss ich dann bei dem Display achten? (Anschlüsse)
Danke schon einmal für die Antworten
Rolf
Rolf F. schrieb:> Ich möchte eine Bedienoberfläche erstellen, wo man Passwort eingeben> kann und sich dann durch ein Menü durchtippen kann. Bei bestimmten> Tasten (z.B. 'Start') soll ein Signal an einem Mikrocontroller gesendet> werden. (wenn möglich, über UART (also Daten und nicht nur I/O).> Dazu habe ich gedacht, mache ich das Menü in C++ QT und lade es dann auf> das Display-Modul.
Dann muss dein "Display-Modul" ein PC oder ein Linux-Board sein.
Displays machen von sich aus normalerweise nichts, sondern werden von
einem Rechner oder µC angesteuert. "Auf das Display laden" kann man in
der Regel nichts. Auf dem läuft dann also auch kein Menü. Es zeigt nur
an, was der ansteuernde Rechner ihm sagt, und auf dem muss dann das Menü
laufen. Wenn du das mit Qt machen willst, muss es für den also auch Qt
geben. Und nein, für µCs gibt's keine Qt.
> Was für ein Modul bräuchte ich dafür?> Was für Software bräuchte ich dafür?> Ist das überhaupt möglich, wie ich es mir vorgestellt habe? (bei den> bisherigen Kommentaren denke ich eher nicht)
Richtig.
Rolf F. schrieb:> Dazu habe ich gedacht, mache ich das Menü in C++ QT und lade es dann auf> das Display-Modul.
Wenn du nicht ein komplettes Betriebssystem selber programmieren willst,
wie ich schon oben geschrieben habe, musst du ein System mit Windows
oder Linux verwenden. Dein "Displaymodul" ist also mindestens sowas wie
ein Raspberry Pi oder vergleichbare Systeme.
Rein theoretisch kann man natürlich die ganze Grafik vom Hintergrund bis
zum Menü zu Fuss für einen Microcontroller und eine Anzeige
programmieren (Bill Gates hat ja auch mal ganz klein angefangen), aber
sinnvoll ist das nicht, und wenn man so garkeine Ahnung hat würde das
Jahre bis Jahrzehnte dauern.
Georg
Oh, das funktioniert alles andere als geplant :(. Aber danke für eure
Kommentare. Habe viel gesucht, bin aber jetzt nicht wirklich schlauer.
Daher würde ich gerne noch einmal ein paar Fragen stellen.
Wenn ich Programme (conway's game of life) für meinem Computer (Windows)
programmieren möchte. Das aber nicht auf der Console, sondern auf einer
richtigen Oberfläche. Mit Buttons und grafischer Darstellung. Was
brauche ich dazu alles?
QT oder GTK?
Die scheint beides das selbe zu sein, blos andere Programme. Benötige
ich dann noch Visual Studio? Habe ich dann auch eine Grafische
Programmieroberfläche (Also wo ich die Buttons hinschieben kann)? Oder
ist das nur eine Bibliothek, die ich in Visual Studio einbinden kann?
Oder brauche ich Visual Studio gar nicht? Und alles geht mit einem von
diesen zwei Programmen?
Kurze und bündig, was benötige ich alles um an meinem Computer (Windows)
Bedienoberflächen und kleine spiele zu programmieren? (Das die
Bedienoberfläche nicht für den Mikrocontroller ist, ist mir bewusst)
Die Frage mit dem TFT-Display werde ich im uc & Elektronik stellen, da
ich da auch nicht wirklich weiter gekommen bin.
Rolf
Hallo,
ich möchte gerne ein Menü mit verschiedenen funktionen für ein
TFT-Display (5Zoll) erstellen.
Jetzt habe ich schon lange gesucht aber bin nicht wirklich schlau
geworden.
Es soll ein Menü sein, wo ich durch Tasten (auf dem Display)
verschiedenen Fenster öffnen kann und z.B. mit einem Start-Button (auf
dem Display) eine Funktion ausführen kann.
Zunächst habe ich gedacht, dass ich das ganze mit QT-Designer erstellen
kann und nach dem Kompilieren auf dem Mikrocontroller spielen kann. Das
habe ich schon erfahren, dass das nicht so geht
(http://www.mikrocontroller.net/topic/398405#new)
Wenn ich jetzt nach Displays suche, weiss ich leider nicht worauf ich
genau achten soll. Alles was ich finde, sind immer shilder für ein
Arduino oder Raspbarry. Ich möchte aber eigentlich ohne Arduino. Aber
trotzdem mit einem Atmega.
Was brauche ich dazu alles? Ich habe auch keine Seite gefunden, wo es
beispiele, bzw. anleitungen dazu gibt (wahrscheinlich, weil es so viele
unterschiedliche möglichkeiten gibt).
Rolf
Schau Dir das mal an:
Beitrag "FT800 / FT810 Library"
Gerade für kleine 8 Bit Controller ist der FT8xx super.
Es gibt da zwar die preiswerten chinesischen TFTs,
so eines habe ich ja auch benutzt.
Ich habe aber auch gerade auf der Arbeit ein VM800B50A von FTDI erhalten
und im direkten Vergleich gewinnt das ganz klar.
Das FT800CB-HY50B hat im Vergleich zum VM800B50A einen viel kleineren
Blickwinkel.
Noch besser dürfte das VM801B50A aussehen, da dieses einen
kapazitiv-Touch hat, die 130+ Euro wollte ich dafür allerdings noch
nicht ausgeben.
In 5" gibt es auch noch TFTs von Riverdi mit dem FT8xx, die habe ich mir
aber auch noch nicht leisten wollen.
Rolf F. schrieb:> QT oder GTK?> Die scheint beides das selbe zu sein, blos andere Programme. Benötige> ich dann noch Visual Studio? Habe ich dann auch eine Grafische> Programmieroberfläche (Also wo ich die Buttons hinschieben kann)?
Kann es sein, das du ein wenig die Sachen durcheinander bringst? Visual
Studio ist erstmal nur eine Entwicklungsumgebung, mit der Projekte
verwaltet werden können und in der entsprechenden Ausführung (VS C++
Express oder VS C#) auch Programme in C, C++ oder C# programmiert und
kompiliert werden können, die dann z.B. unter Windows laufen.
Welche Grafik Umgebungen oder Runtimes benutzt werden, ist dabei eine
ganz andere Sache.
Du kannst auch ohne QT, GTK oder TCL, also alleine in Win32/64 oder .Net
Programme mit Buttons u.ä. schreiben.
Rolf F. schrieb:> Kurze und bündig, was benötige ich alles um an meinem Computer (Windows)> Bedienoberflächen und kleine spiele zu programmieren? (Das die> Bedienoberfläche nicht für den Mikrocontroller ist, ist mir bewusst)
Irgendeinen Compiler, praktischerweise mit IDE. Z.B.: VisualStudio.
Ach ja, es gibt von FTDI auch einen Screen-Editor:
http://www.ftdichip.com/Support/Utilities.htm#EVEScreenEditorhttps://www.youtube.com/watch?v=KDUgmK7E99E
Damit kann man sich zumindest das Aussehen der Oberfläche unter Windows
zusammen schieben.
Für Arduino kann man den Code auch direkt exportieren, für die Library
von Glyn gibt es auch ein entsprechendes Python Script.
Für meine Library hatte ich nur mal angefangen da was zu schnitzen, aber
noch nicht wirklich Bedarf gehabt.
Copy/Paste, bisschen anpassen, läuft.
Dann braucht noch Code drum herum, man muss das Touch-Register auslesen
und auf das Klicken auf die Objekte reagieren.
Damit etwa ein Button auch für den Benutzer als gedrückt gemeldet wird,
muss man dem FT8xx mitteilen, dass dieser anders dargestellt werden
soll, etwa von 3D umschalten auf Flat.
Toggle-Buttons, Slider, Gauge, Dial, alle Elemente werden von den FT8xx
mit sehr einfach angezeigt, die werden aber nicht automatisch geändert.
Das halte ich nicht mal für einen Nachteil, wenn sich was ändert weiss
man wenigstens, dass der eigene Controller das ausgelöst hat.
Man kann auch jedesmal wenn ein Touch erkannt wird einen Ton spielen
lassen über den FT8xx, mit den VM8xxBxx sogar über den eingebauten
Verstärker und Lautsprecher.