Hallo und guten Abend, zur Vorgeschichte, ich arbeite mich nun seit gut einem Jahr quer durch die uC Welt und versuche dabei viel zu lernen und weitreichende Erfahrungen zu sammeln. Das ein oder andere kleine Projekt habe ich auch bereits fertig gestellt. Nun möchte ich mich aber nicht damit zufrieden geben ein in sich geschlossenes Projekt zu erarbeiten sondern möchte mich jetzt in die Richtung bewegen, Projekte mit anbindung an den PC zu entwickeln. Klar hab ich bereits erfahrungen mit UART, RS428 usw.. und habe auch da schon einiges ausprobiert. Allerdings habe ich die Dateneingabe bisher immer über Terminalprogramme laufen lassen und bin damit mittlerweile nicht mehr zufrieden. Der nächste Schritt ist nun für mich in Richtung Softwareentwicklung. Das beinhaltet z.B. eine visualisierte Bediensoftware eines Gerätes. Und dazu muss ich natürlich in der Lage sein so eine Software zu erstellen und zu programmieren. Meine Programmierkenntnisse in C sind mittlerweile soweit, dass ich mich in das Gebiet trauen will und suche einen guten Einstieg. Ich lese mich nun seit einigen Tagen durch das Internet zu dem Thema und bin mir recht unsicher wo ich da anfangen kann. Kann mir wer ein gutes Buch oder Online-Tutorial zu dem Thema empfehlen? Mit welcher Entwicklungssoftware habt ihr die besten Erfahrungen gesammelt?(Freeware sowie kostenpflichtig) Oder übernehme ich mich nun mit dem Vorhaben und man sollte sich erst nach Jahrelanger Erfahrung an soetwas herantrauen. Abgesehen von der Software interessiere ich mich auch für das Erstellen eines eigenen Druckertreiber für z.B. einen selbstgebauten Plotter oder UV-Laserdruckers. Ist das in der gleichen Richtung zuzuornen oder ist das wieder ein eigenes paar Schuhe? Es sei dazugesagt, dass ich diese Programmierung ersteinmal auf einem Windows-Rechner zum laufen bekommen möchte, allerdings möchte ich dann lieber von Anfang an so programmieren, dass ich die erstellte Software auch auf anderen Betriebssystemen laufen lassen könnte (also Platformunabhängig) Ich danke schon einmal für die Antworten und hoffe ihr könnt mir den kleinen Schubser in die richtige Richtung geben. Gruß Christian
Wenn du es quick & dirty & easy haben willst, immer was anderes, was neues zum ausprobieren usw. Excel + VBA + irgendeine RS232-DLL (mscom.dll, rsapi.dll) ist unschlagbar. (Aufwand 2-4 Wochen, falls Grundkenntnisse Excel und VBA vorhanden.) Nachtel: ist nicht für eine Weitergabe an dritte gedacht, da man dort richtige Struktur, Dokumentation, Fehlerbehandlung usw. erstellen soll. Dann kannst du gleich dir OOP beibringen und das in JAVA machen, wird aber paar Jahre dauern(als Hobby).
ge-nka schrieb: > Excel + VBA + irgendeine RS232-DLL (mscom.dll, rsapi.dll) ist > unschlagbar. > (Aufwand 2-4 Wochen, falls Grundkenntnisse Excel und VBA vorhanden.) Das ist eher weniger die Richtung in die ich gehen möchte. Um es zu Erläutern: Ich wähle auch öfters bewusst den hammerharten Weg, damit ich von Anfang an den gesamten Umfang vor Augen habe. Klar wäre es erstmal von Erfolg gekrönt mit Excel und VBA zu arbeiten, aber irgendwann müsste ich dann doch wieder auf C und eigener Software / anderer Umgebung umsteigen. Dann lieber von anfang an und dann darf es bis zum ersten Erolg auch ruhig etwas länger dauern. ;-) indi schrieb: > Schau Dir mal qt an. Werde ich mir gleich mal anschauen, Danke ;-)
Hallo Christian, ich mache solche Frontends oft mit Profilab von abacom. Gruß Johannes
Johannes V. schrieb: > Hallo Christian, > > ich mache solche Frontends oft mit Profilab von abacom. > > Gruß Johannes Ich schrieb: > Ich werfe mal den Klassiker LabView in die Runde :-) Ich weiss nicht recht ob ich da falsch liege, aber sind dass nicht Simulationsprogramme für Schaltungen? (Korrigiert mich wenn ich falsch liege) Grobes Beispiel: Ich baue einen eigenenes Gerät (UV-Laserducker, Plotter, CNC-Fräse,...) Dieses Gerät wird über einen Beispielsweise Atmega64 gesteuert und kann an sich schon eine Menge. Nun möchte ich PC-seitig eine Software-Programmieren mit der ich dieses Gerät von extern steuern kann, oder Daten an dieses Gerät übertragen kann. (Beispiel UV-Laserdrucker: Das zu belichtende Layout aufbereiten und an das Gerät übertragen) Diese Software möchte ich dann natürlich mit einer grafischen Oberfläche ausstatten.
:
Bearbeitet durch User
Christian O. schrieb: > Das ist eher weniger die Richtung in die ich gehen möchte. > Um es zu Erläutern: Ich wähle auch öfters bewusst den hammerharten Weg, > damit ich von Anfang an den gesamten Umfang vor Augen habe. Na dann fangen wir mal hier an (reine Theorie, aber sehr nützlich): http://www-lehre.inf.uos.de/~ainf/2014/index.html
> Ich weiss nicht recht ob ich da falsch liege, aber sind dass nicht > Simulationsprogramme für Schaltungen? (Korrigiert mich wenn ich falsch > liege) Da liegst Du falsch ;-) https://de.wikipedia.org/wiki/LabVIEW http://www.ni.com/labview/d/ Wir (Uni) nehmen das sowohl für selbst gebauten Hardware als auch in Kombination mit gekauften (Mess-)Geräten.
Der Tipp mit Qt ist schonmal nicht schlecht. Ansonsten lohnt es sich meiner Meinung nach mal zu schnuppern ob man für sowas nicht noch eine andere Programmiersprache verwenden möchte, da für GUIs Objektorientierung schon ganz praktisch ist (C++, C#, Python, ...)
S. K. schrieb: > Der Tipp mit Qt ist schonmal nicht schlecht. +1 Wollte ich auch immer schon mal ausprobieren, sieht nämlich attrakiv aus. Noch ein paar Hinweise: (1) Viele Firmen gehen dazu über, mit Java die Bedienoberflächen zu bauen. Für eine 'Bediensoftware'^^ ist die Geschwindigkeit meistens nicht so wichtig, wie bei Hardware-naher Programmierung, dafür sind die Grafik-Bibliotheken flexibel und auch recht fix. Mit 'Objektorientierung' kann man bei einer 'Bediensoftware' oft auch leichter den wechselnden Ansprüchen gerecht werden. Bei Bedienoberflächen reden alle mit, ob sie Ahnung haben oder nicht. 10 Leute, 12 Meinungen! Flexibilität ist wichtig! (2) ... genau so wichtig wie eine intelligent gemachte Schnittstelle (Visual Proxy-Pattern, Automotive-BAP, ...) (3) Inzwischen sind Android-Tablets und ESP8266 so billig geworden, dass man über Android-Bediensoftware zumindest nachdenken sollte. 'Ich' schrieb: > Ich werfe mal den Klassiker LabView in die Runde Mit 'Matlab Guide' wird in der Industrie auch oft gearbeitet. Hat LabView was vergleichbares? PS, zufällig gefunden: http://developer.xamarin.com/
:
Bearbeitet durch User
Wenn du Software für andere machen willst, sollte m.E. die einzige Voraussetzung bei diesen ein installiertes Betriebssystem sein. Weitergehende Abhängigkeiten, z.B. von Office, Java VRE, div. Runtime Libs usw. halte ich persönlich für Mist. Damit reduziert sich die Zahl der verwendbaren Entwicklungsumgebungen erheblich. Ich persönlich beutze Xojo (früher Real Basic), da kann die IDE aus dem gleichen Sourcecode eigenständig (!) lauffähige Apps für Windows, Mac OS X und Linux erstellen, sowie sog. WebApps und neuerdings auch iOS. Diese müssen auch nicht irgendwie "installiert" werden, "draufkopieren" reicht. Es werden auch alle Schnittstellen bedient (Serial, USB, Bluetooth, Ethernet), es kann bei Projektbeginn zwischen grafischer Oberfläche (die sich an die Systemvorgaben hält und damit nicht wie ein "Fremdkörper" aussieht) oder Konsoleanwendung gewählt werden ...
:
Bearbeitet durch User
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.