Hallo,
ich habe ein embedded System mit einem ARM9.
Die ersten kleinen crosscompiled Programme laufen auf dem ARM9 schon.
Nun soll folgendes realisiert werden:
Vom Host zum ARM9:
Über die serielle Schnittstelle kommen Befehle folgender Art zum ARM9:
- Rufe MenüX/FensterX auf
(es gibt verschiedene Fenster/Windows mit verschiedenen Tasten und Bildern)
Außerdem soll das möglich sein:
- zeichne Taste mit Text;Variable;
- zeichne BildX
- zeichne Taste invertiert
- zeichne Rechteck
Wird eine Taste gedrückt wird ein Wert über die serielle Schnittstelle gesendet, dieser wird im Host verarbeitet und sendet dann einen der oberen Befehle zurück zum ARM9.
Geht das überhaupt mit Qt embedded?
Wie löse ich das?
Kann Qt Fenster ohne Rahmen, ohne Maus und ohne _ X darstellen. Können zur Laufzeit Tasten erstellt werden, Bilder hinzugefügt?
Kann zur Laufzeit eine Taste mit einer Variable verknüpft sein, so dass sich der angezeigte Wert ändert, wenn sich die Variable ändert?
Ich hoffe das sind nicht zu viele fragen, schon einmal vielen dank für die Antworten.
Vielen dank
Ist das mit Qt möglich?
-
ScyllaIllciz
- Beiträge: 200
- Registriert: 9. Juli 2010 19:31
Ja das sollte alles gehen. Das embedded System ohne X bringt seinen eigene Windowmanager mit (qws). Funktioniert hier richtig super hier. Man kann alles wie gewohnt benutzen.
siehe hier
Scylla
siehe hier
Scylla
-
prinzenrolle
- Beiträge: 25
- Registriert: 4. August 2010 18:38
Schau mal nach "QextSerialPort."
Ansonsten verwendest du "komische" Begriffe. Eine Taste Zeichen - meinsten damit einen Button, also "Knopf"?
Und eine "Taste mit Variable" gibt es nicht, ich jedenfall weiß nicht was für dich eine "Variable" ist.
Ansonsten verwendest du "komische" Begriffe. Eine Taste Zeichen - meinsten damit einen Button, also "Knopf"?
Und eine "Taste mit Variable" gibt es nicht, ich jedenfall weiß nicht was für dich eine "Variable" ist.
Was ist jetzt hier eine Taste? Wieder ein Knopf? Oder eine Taste auf der Tastatur? Und eine automatische Verknüpfung zwischen Input Devices (Events) oder GUI-Elementen und einer "Variablen" gibt es nicht, sowas musst du immer selber ausprogrammieren. Das ist aber nichts spezielles von Qt, sondern geht auch schon mit C++ nicht.Kann zur Laufzeit eine Taste mit einer Variable verknüpft sein, so dass sich der angezeigte Wert ändert, wenn sich die Variable ändert?
-
prinzenrolle
- Beiträge: 25
- Registriert: 4. August 2010 18:38
Hallo,
okay dann versuche ich es nochmal zu beschreiben.
Über die serielle schnittstelle werden befehle empfangen und gesendet.
Je nach befehl soll:
- der text eines buttons geändert
- ein anderes fenster dargestellt
- button mit rückgabewert gezeichnet
- einen Text dargestellt
- etc.
werden
Jeder button hat einen rückgabewert der über die serielle schnittstelle gesendet wird, sobald die Taste gedrückt wird.
gruß und danke
okay dann versuche ich es nochmal zu beschreiben.
Über die serielle schnittstelle werden befehle empfangen und gesendet.
Je nach befehl soll:
- der text eines buttons geändert
- ein anderes fenster dargestellt
- button mit rückgabewert gezeichnet
- einen Text dargestellt
- etc.
werden
Jeder button hat einen rückgabewert der über die serielle schnittstelle gesendet wird, sobald die Taste gedrückt wird.
gruß und danke
Wunderbar, was hast du schon versucht? Prinzipiell ist doch alles klar (bis auf den Punkt dass ein Button keinen Rückgabewert hat - Objekte haben nie Rückgabewerte!), hast du schonmal in Qt reingeschnuppert, oder willst du nur ein "ja, das geht" hören?prinzenrolle hat geschrieben:Über die serielle schnittstelle werden befehle empfangen und gesendet.
Je nach befehl soll:
- der text eines buttons geändert
- ein anderes fenster dargestellt
- button mit rückgabewert gezeichnet
- einen Text dargestellt
- etc.
werden
Jeder button hat einen rückgabewert der über die serielle schnittstelle gesendet wird, sobald die Taste gedrückt wird.
Wenn du Qt-seitig komplett blank bist, fang mit den Tutorials an, schau was ein "QObject" so besonderes kann, wie SIGNAL/SLOT funktioniert, wie man mit Events umgeht, usw. Dann wirst du mit der Zeit für jeden Punkt deiner Liste eine Lösung gefunden haben.