Hallo Leute!
Ich möchte gerne ein optisch einigermaßen ansprechendes Programm zur
Steuerung eines uc programmieren.
Ich selber kenne mich wenn dann nur in C aus. Und dort im Speziellen
auch mehr bei den Mikrocontrollern.
Da ich nun gerne ein Programm entwerfen würde,wo ich das Design gerne in
Photoshop entwerfen möchtee, aber die ganzen Funktionen der Knöpfe,
Regler etc. programmieren möchte.
Ich komme mehr aus der Designecke und kenne das halt so, dass man in PS
alles zeichnet und dann zerslicet und dann verlinkt und fertig ist die
Laube.
Welche Sprache wäre hier die sinnvollste um bei sehr wenig
Vorkenntnissen trotzdem einigermaßen ans Ziel kommt.
Wird eine solche Technik überhaupt angewandt?!
C fällt bei graphischen Geschichten ja schonmal aus. Vielleicht C# oder
Delphi oder sowas?!
Vielleicht geht es nur mir so, aber dein Text ist dermassen
unverständlich geschrieben, da kommt kein Schwein draus, was du
eigentlihc willst!
Schreib mal klar verständlich auf, was dein Ziel ist!
Wenn du geringe Vorkenntnisse hast, ist Delphi sicherlich der schnellste
weg. Mit PS fängt da aber keiner an. Die Standard-Bedienelemente sind ja
alle schon vorhanden.
Hm wenn der Mikrocontroller leistungsfähig genug ist, kannst du mit PS
eine Webseite designen und auf dem Mikrocontroller einen Webserver
laufen lassen. Dann kannst du mit den Links in HTML CGI-Skripte
aufrufen, welche du in C programmieren kannst. Das geht Super mit
Boards, wo ein kleines Linux drauf läuft (Arm, Etrax oder so).
Ansonsten fällt mir auf die Schnelle auch nix ein. Aber irgendwie wirds
sicher gehen, bei einem C# / C++ Programm oder so eigene Skins
einzubinden. Oder vielleicht hilft auch MS Expression. Irgendwie kann
man das dann auch über C#-Programme nutzen glaub ich.
Hanswurst schrieb:
> Schreib mal klar verständlich auf, was dein Ziel ist!
OK. Nochmal langsam und in kurz.
Ich möchte ein optisch ansprechendes Programm schreiben womit ich einen
uc per rs232 Schnittstelle steuern kann.
Um mir ein bisschen Arbeit beim programmieren zu ersparen möchte ich mir
die "skins" in Photoshop erstellen und dann einfach in mein Programm
reinpappen.
Meine Programmierkenntnisse beschränken sich auf C. Das Programm soll
lediglich einfache Regler und Felder besitzen womit ich dem uc z.b.
sagen könnte. "LED 1 : Farbe 220,220,50"
Da ich weiß, dass C bei solchen Dingen recht überaufwändig ist würde ich
gerne per drag and drop eine einfache Oberfläche generieren. Die
grapischen Dinge mit Photoshop als bmp's oder so reinpappen und ebn die
Anweisungen per RS232 übertragen.
So. Das war zwar nicht kürzer, aber HOFFENTLICH verständlicher :-)
Ich hab noch n bild rangehangen. Denn wie wir alle wissen: ein Bild sagt
mehr als 1000 Worte ;-)
Soweit ich weiß könnte Microsoft Visual C++ deinen Vorstellungen
entsprechen. Damit kann man leicht Grafische Benutzeroberflächen
programmieren (ich selbst hab das noch nicht ausprobiert).
oder pure basic http://www.purebasic.com/german/index.php
Es besitzt mächtige graphik 2D 3 D engines und die RYS232 lässt sich
über Win api relativ leicht bedienen da sämtliche winfunktionen Von
purbasic aus leicht aufgerufen werden können.
hier gibt es auch ein deutsprachiges forum
http://forums.purebasic.com/german/
Schau dir doch mal das Tutorial an. Den Bascom-Teil kannst du ja
überspringen da du ja mit C arbeitest.
http://www.rn-wissen.de/index.php/Windows_Programm_zum_Steuern_des_AVR's
Mit dem in SharpDevelop enthaltenen vb.net oder visual c# kannst du
schnell Ergebnise erziehlen und es ist natürlich frei runterladbar.
Hi
Ich würd wie schon erwähnt, ein Programm ähnlich Delphi, C++ oder VB
benutzen. Ich persönlich ziehe die Pascal-Ecke ( Delphi oder Lazarus )
vor und habe damit auch meine Apllikationen geschrieben. Wenn du
programmieren kannst, ist es nicht so schwer, sich bei Dephi
einzuarbeiten. Die Online-Hilfe ist sehr gut, da tut sich Lazarus etwas
schwer. Allerdings ist Lazarus kostenlos und die Delphi-Versionen kosten
in der Regel...
Gruß oldmax
Also wenn du eh schon C kannst würd ich mal sagen versuch es mit Visual
C++ oder C#.
Zu C# gibt es von Galileo auch ein OpenBook mit dem du das recht fix
lernen kannst und die MSDN Hilfe zu den .NET Sachen für die serielle
Schnittstelle ist auch recht gut, damit solltest du dann recht fix zum
Ziel kommen.
Anfänger.333 schrieb:
> Ich möchte ein optisch ansprechendes Programm schreiben womit ich einen> uc per rs232 Schnittstelle steuern kann.
Au weh.
Schon wieder einer, der alle mühsam erlernten GUI-Konventionen über Bord
wirft und sein eigenes GUI-Süppchen kochen will.
> Um mir ein bisschen Arbeit beim programmieren zu ersparen möchte ich mir> die "skins" in Photoshop erstellen und dann einfach in mein Programm> reinpappen.>> Meine Programmierkenntnisse beschränken sich auf C. Das Programm soll> lediglich einfache Regler und Felder besitzen womit ich dem uc z.b.> sagen könnte. "LED 1 : Farbe 220,220,50"
Wenn du dir Arbeit ersparen willst, dann geh als erstes von C weg. GUI
Programmierung unter Windows ist eine mühsame Angelegenheit. Benutze
eine Sprache, die schon fertige GUI-Frameworks mitbringt.
> Die> grapischen Dinge mit Photoshop als bmp's oder so reinpappen und ebn die> Anweisungen per RS232 übertragen.
Falscher Ansatz.
Richtiger Ansatz: Nimm ein Toolkit, welches solche Resource designen
kann. Du willst einen Button auf der Oberfläche haben? Dann zieh einen
Button aus dem Vorrat an Controls auf die Oberfläche an die Position,
die du haben willst und 'verkable ihn', so dass er eine Funktion in
deinem Programm aufruft. Du willst ein Eingabefeld haben? Dann zieh
eines aus der Toolbox der vorhandenen Controls raus auf die Oberfläche
und verkable sie. Du willst ....
> Ich hab noch n bild rangehangen. Denn wie wir alle wissen:> ein Bild sagt mehr als 1000 Worte ;-)
Das Bild ist genauso nichtssagend wie deine Beschreibung.
Versuch erst mit Standardcontrols über die Runden zu kommen, die jede
Sprache, die zur Programmierung von GUI-Oberflächen vorbereitet ist,
mitbringt. Wenn du dann eine zeitlang mit den Standard-Controls
gearbeitet hast und die im Griff hast, kannst du anfangen deine eigenen
Controls zu entwickeln (wenn du dann noch Lust und Laune dazu hast).
Früher hätte ich ebenfalls Delphi empfohlen, doch geniesst es heute eher
ein Schattendasein. (Einige werden mir jetzt böse sein, aber seht den
Tatsachen ins Auge)
Da Du schon C kennst, würde ich wegen der Verbreitung und unzähligen
Resourcen im Internet zu C# .NET greifen. Mit der Kostenlosen Express
Version wirst Du alles machen können was Du möchtest. Es ist auch sehr
einfach möglich, Deine in Photoshop erstellten Grafiken z.B. als
Fensterhintergrund einzubinden und sie bedienbar zu machen.
Den schnellsten Einstieg hättest Du, wenn Dir mal jemand zwei oder drei
Stunden zeigen könnte, wie man damit arbeitet. Du wirst überrascht sein,
wie schnell man damit ein GUI machen kann und erste Funktionalität
implementieren kann.
Ich programmiere alle PC Sachen mit Lazarus.
Ich kenne C++ und VB, aber mit Lazarus (oder Delphi) komme ich immer
noch am schnellsten zum Ziel.
Mein letztes Projekt war eine Update-Software für ein STM32 Prozessor.
Die kann den Bootloader aktivieren und einen Flash-Update starten.
Das gannze über UART.
Ein anderes Programm ist eine Überwachungs-Software die mehrere
Controller mit CAN-Bus überwacht und das mit einer MySQL Datenbank.
Ein Tipp:
Vergiss erst mal die Grafik. Kümmere Dich um die eigentlichen
Funktionen.
Wenn Du die Funktionen im Hintergrund beherrschst, dann kannst Du in
ruhe das Design aufbessern.
In Lazarus gibt es TBitBtn, da kann man z.B. Bilder laden, die dan
gezeigt werden. (kann natürlich jede andere Programmiersprache auch)
Hier kann auch ein Sticky geladen werden:
http://www.mmvisual.de/download/Sticky.zip
Gelbe Zettel auf dem Bildschirm. Sieht zwar einfach aus, hat dennoch
einige Features drin die nicht so einfach umzusetzen waren.
PS: Wenn Dein Programm nicht nur unter Windows, sondern auch unter Linux
laufen soll, dann ist Lazarus die beste Wahl, da der gleiche Code, wenn
man keine Sonderkomponenten verwendet, auch unter Linux kompillierbar
und ausfürhbar ist.