Hallo zusammen, ich habe ein wenig mit einem atmega 168 und der
Seriellen Schnittstelle am Pc experimentiert, verwendete Software war
hterm.
Gibt es eine Art GUI Software mit der man Buttons, Eingabefelder,
Tastatureingaben per serielle Schnittstelle an den uC schicken kann?
Als Beispiel stelle ich mir vor auf dem PC die Pfeiltasten oder einen
Software Button zu drücken/klicken, daraufhin wird ein Signal an den uC
gesendet und dieser startet zB einen DC Motor oder lässt eine LED
leuchten.
bob schrieb:> Hallo zusammen, ich habe ein wenig mit einem atmega 168 und der> Seriellen Schnittstelle am Pc experimentiert, verwendete Software war> hterm.> Gibt es eine Art GUI Software mit der man Buttons, Eingabefelder,> Tastatureingaben per serielle Schnittstelle an den uC schicken kann?>> Als Beispiel stelle ich mir vor auf dem PC die Pfeiltasten oder einen> Software Button zu drücken/klicken, daraufhin wird ein Signal an den uC> gesendet und dieser startet zB einen DC Motor oder lässt eine LED> leuchten.
Ich denke nicht das sowas fertig existiert, da jedes Produkt eigene
Anforderungen hat. Du kannst es aber mit jeder Programmiersprache
ziemlich einfach Implementieren, z.B. Python mit pySerial, Javascript
mit NodeJS und serialport, Java mit jSerialComm...
Falls du eine GUI willst, kannst du diese z.B. direkt mit Python machen
(oder mit einem Frontend), wie z.B. Kivy oder Java und dem integrierten
Swing..
bob schrieb:> Gibt es eine Art GUI Software mit der man Buttons, Eingabefelder,> Tastatureingaben per serielle Schnittstelle an den uC schicken kann?
Im Grunde genommen (fast) jede beliebige Programmiersprache.
Im unteren Drittel der folgenden Seite ist ein Beispiel, wie man mit Qt
in 15 Minuten zum ersten Aha-Erlebnis kommt:
http://stefanfrings.de/serial_io/index.html
Weiter oben auf der selben Seite findest du ein komplexeres
Beispielprogramm zum Download. Und links im Navigationsbereich kommst du
zu einem Qt Tutorial.
Ansonsten ist die Kombination ESP8266 + Web Browser auch handlich, aber
dafür muss man schon einiges über die Entwicklung von Web-Anwendungen
wissen. Eine Disziplin, die viele Technologien miteinander kombiniert.
Ein Beispiel dazu findest du in
http://stefanfrings.de/mikrocontroller_buch/index.html Band 3. Ein paar
Grundlagen zum HTTP Protokoll vermittelt der Band 2 ab Kapitel 10.
Habe ich das jetzt richtig verstanden, Du willst das Aussehen der
Oberfläche im µC ablegen und auf dem PC immer das gleiche Programm
starten ?
Also ein Protokoll irgendwo zwischen VT100 und X11 über die
Schnittstelle geben, das das Aussehem der GUI beschreibt ?
Wow danke für die vielen Empfehlungen. Da ist sicher was für mich dabei,
werde ich mir anschauen wenn ich dann mal zuhause bin ^^
FOp schrieb:> Habe ich das jetzt richtig verstanden, Du willst das Aussehen der> Oberfläche im µC ablegen und auf dem PC immer das gleiche Programm> starten ?
Hallo FOp, nicht ganz. Der uC soll nur Kommandos, im Grunde genommen
Zeichenketten,vom PC entgegennehmen und dann etwas damit anstellen. Ich
wollte mich nicht nur auf Texteingaben wie es bei zb Hterm der Fall ist
beschränken, sondern auch GUI Elemente (Buttons etc.) ins Spiel zu
bringen.
bob schrieb:> Der uC soll nur Kommandos, im Grunde genommen> Zeichenketten,vom PC entgegennehmen und dann etwas damit anstellen. Ich> wollte mich nicht nur auf Texteingaben wie es bei zb Hterm der Fall ist> beschränken, sondern auch GUI Elemente (Buttons etc.) ins Spiel zu> bringen.
ich habe so was mit Visual Studio in C# entwickelt.
Stefan ⛄ F. schrieb:> Im Grunde genommen (fast) jede beliebige Programmiersprache.> Im unteren Drittel der folgenden Seite ist ein Beispiel, wie man mit Qt> in 15 Minuten zum ersten Aha-Erlebnis kommt:> http://stefanfrings.de/serial_io/index.html> Weiter oben auf der selben Seite findest du ein komplexeres> Beispielprogramm zum Download. Und links im Navigationsbereich kommst du> zu einem Qt Tutorial.
Das ist es was ich gesucht habe, super Anleitung.
Danke auch für die anderen Vorschläge!
bob schrieb:> Und das hier ist auf alle Fälle auch ne gute Möglichkeit, das Design> kann halt nicht mit Qt mithalten :-)
Dafür bietet es Anzeige-Elemente, die man sich in Qt erst selber
programmieren müsste.
Stefan ⛄ F. schrieb:> Dafür bietet es Anzeige-Elemente, die man sich in Qt erst selber> programmieren müsste.
Ich bin genügsam, mir reichen erstmal 4 Buttons.
Ich wuerde auch Delphi empfehlen, damit dauert es minimal kurz sich ein
GUI zusammenzukloppen.
Als erstes solltest du dir ein Protokoll ueberlegen, welches in beide
Richtungen laeuft und ausbaubar ist.
Qt gibt es als open source version. Aber ist mir zu nervig.
ich glaub ich probier es mal mit:
https://github.com/vurtun/nuklearhttps://sigrok.org/wiki/Libserialport
ich hab auf auf dem arduino die standard firmata firmware geflasht und
kann dann paar (binary/none ascii) midi ähnliche bytes schicken um ne
led ein und aus zu machen.
hier nen python test um firmata anzusprechen: