Hallo Forum habe im letzten Jahr ein Labornetzteil realisiert daß ich nun am PC einbinden will. Will ein GUI auf XP programmieren mit Logfunktion und Sollwertvorgabe des Netzteils (über rs232) nun gut aber wo fang ich jetzt als neutron an? 1. festlegen auf programmiersprache? ich denk mal c++ wird jetzt nicht die geeignetste sprache für schnelle erfolge sein, möchte ich aber dennoch versuchen um für zukünftige projekte gut gerüstet zu sein 2. ich brauch eine entwicklungsumgebung? irgendwas für lau wär nett im google hab ich den MSvisualc++ builder for free gefunden suche in c foren hat ergeben daß es warscheinlich nicht die schlechteste lösung sein wird? da ist dann alles drinnen was ich brauche? compiler libraries etc? 3. benötige ich dann spezielle bibliotheken um die schnittstelle anzusteuern? einige tutorials zu c++ hab ich schon gefunden was würdet ihr anders machen, sprache? entwicklungsumgebung? und noch eine letzte frage: wie hoch schätzt ihr den aufwand in stunden mit einarbeiten? fang fast bei 0 an, bin aber schnell lernfähig und hatte mal vor ein paar jahren ein kurzes c tutorial durch vielen vielen dank!
Mein Vorschlag: Schau dich nach plattformübergreifenden Umgebungen/Libraries um und mach den Linux-Port gleich mit. Links dazu: http://www.mikrocontroller.net/forum/list-8-1.html?filter=plattform* http://www.mikrocontroller.net/forum/read-8-303618.html#new
danke stefan doch bin ich jetzt immer noch fast gleich schlau empfiehlst du mir den wxwidget? das ist jetzt keine entwicklungsumgebung sondern eine plattformübergreifende library? würd mich sehr darüber freuen wenn mir jemand vom fach empfehlungen geben könnte (insbesondere in sachen entwicklungsumgebung) kann ich jede gui-library auf jeder entwicklungsumgebung verwenden? danke!
> kann ich jede gui-library auf jeder entwicklungsumgebung verwenden? Nein. MFC beispielsweise oder Carbon sind plattformspezifisch. Portable bzw. Cross-Platform GUI-Toolkits lassen sich mit verschiedenen Entwicklungsumgebungen verwenden. Für wxWidgets gibt es einen GUI-Builder namens DialogBlocks, der abgesehen vom nicht integrierten Debugger so ziemlich alles erledigt, was eine Entwicklungsumgebung machen muss. Das Teil kann mit ziemlich vielen verschiedenen Compiler-Backends verwendet werden und existiert für Win32, verschiedene Linuxe und auch Mac OS X. http://www.anthemion.co.uk/dialogblocks/ Kostet zwar etwas Geld, das aber ist das Teil eindeutig wert.
Die Frage ist was du wirklich willst, Von vornherein kann man sagen in C oder C++ wirst du länger für die Oberfläche brauchen, als wenn du etwas anderes nimmst. Da du angibst du hast mal vor über einem Jahr ein C Tutorial durchgearbeitet wird es dir auch nicht viel nützen. In VB oder C# hast du wesentlich schneller eine Oberfläche gezaubert als in C++/MFC und wenn du dich auf Windows beschränken willst gibt das ja auch kein Problem. In was hast du das Netzteil programmiert? Möglicherweise sind da ja Kenntnisse vorhanden auf denen du aufbauen kannst. Eine andere Möglichkeit ist LABVIEW , einige Steuerprogramme der Art wie du sie vorhast sind in dieser Programmiersprache realisiert. Die serielle Schnittstelle anzusteuern sollte in keiner der genannten Sprachen Probleme machen. Du solltest darauf achten das du den Anzeigenteil und die serielle Schnittstellenkommunikation sehr genau trennst. >was würdet ihr anders machen, sprache? entwicklungsumgebung? Ich würde die Kommunikation mit dem Netzteil über einen COM-Server machen, den ich in Visual C schreibe. Die Oberfläche könnte ich dann in einer beliebigen Programmiersprache machen, die COM-Support hat, wahrscheinlich VB oder Labview. Da du bei 0 anfängst wird das aber wahrscheinlich kein Weg für dich. >wie hoch schätzt ihr den aufwand in stunden mit einarbeiten? irgendwo zwischen 1 Woche und 1/4 Jahr das hängt von dir ab Entwirf erstmal eine Oberfläche so wie du sie möchtest, dazu kannst du VB benutzen, wenn du die Oberfläche so hinbekommst wie du sie möchtest kannst du ja probieren ob du mit der Programmiersprache zurechtkommst, sonnst hast du zumindest schonmal einen Oberflächenentwurf.
Schau Dir mal python und TKinter an. Sehr angenehme Sprache, schnelle Erfolge garantiert. Dazu gibts dann mit pySerial auch noch eine wunderbar einfache Schnittstelle für RS232. Alles natürlich plattformunabhängig und für Deine Anforderungen auch schnell genug. <-Meine Empfehlung
@rufus 66 euro ist mir jetzt am anfang zu teuer weil ich noch total planlos bin was ich will @wolfram welche nachteile habe ich bei c#? ist noch nicht so verbreitet? hat aber laut wikipedia zukunft, ? programmiert wurde mein netzgerät in assembler @frank python kommt mir jetzt irgendwie nicht so verbreitet vor? hat es denn zukunft? schaut so aus als ob es eine randerscheinung bleiben wird? falls ich bei c++ bleibe: bin ich mit der freeware von MS und wxwidget gut beraten? (weil ich ja noch nichts ausgeben will)
nach weiterem recherchieren wirds wohl c# werden danke für eure antworten!
>welche nachteile habe ich bei c#
du bist auf .Net Runtimes(windows) angewiesen, kommt drauf an ob man
dies als Nachteil ansieht
Du wirst so oder so eine Programmiersprache neu lernen muessen.
Wenn du eine Oberfläche machen willst, dann nimm eine
Programmiersprache mit der man Oberflächen gut hinbekommt.
Google verwendet zum Großteil Python, im Linuxbereich ist es deutlich verbreiteter als unter Windows, Diverse Software für HIL Prüfstände ist in Python geschrieben, mittlerweile implementieren viele Firmen Software zuerst in Python und portieren dann nach C++. Es entwickelt sich einfach ungleich schneller als unter C++. Es hat schon Zukunft.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.