Moin, dumme Frage. Habe mich nur gefragt, wie sinnvoll es eigentlich heutzutage noch ist, die Programmierung von Mikrocontrollern in Deutschland zu lernen? Und welche Sprache dafür ist besser? C oder C++? Assembler wohl eher nicht, gell?
:
Bearbeitet durch User
Hallo, das dürfte nur noch Sinn manchen, um später im Seniorenheim erzählen zu können, daß man das mal gekonnt hatte. Die dort eingestzten Fachkräfte aus Fernost werden es zu würdigen wissen. Mit Assembler versteht man am ehesten, was sich innen im Mikrocontroller abspielt, somit lernt man die Grundlage der Grundlage, um ihn später eventuell in C programmieren zu können. Wer nur C direkt lernt, wird wie bei Windows nie unter die "Motorhaube" schauen wollen, was da werkelt. Man kann aber mit dem Lernen durchaus im Ausland beginnen und später dann nach Deutschland zurück kehren. mfg
Man kann auch den Sinn finden indem man meditiert und Joints raucht! Woher sollen wir wissen was jemand als sinnvoll erarchtet? Vanye
Christian S. schrieb: > das dürfte nur noch Sinn manchen, um später im Seniorenheim erzählen zu > können, daß man das mal gekonnt hatte. Die dort eingesetzten Fachkräfte > aus Fernost werden es zu würdigen wissen. Das dürfte so ziemlich auf jeden Job zutreffen, der halbwegs ortsungebunden ist. Und die Jobs, die ortsgebunden sind, sind häufig (natürlich nicht immer) ziemlich schlecht bezahlt. Nur darauf zu achten, wird meiner Erfahrung nach nicht funktionieren. Natürlich sollte man aber darauf schielen, wo dringend Leute gesucht werden und wo ein Überangebot herrscht. Viel wichtiger ist das Commitment: Such dir eine Sache, die dir wirklich Spaß machst, mit der du unbegrenzt viel Zeit verbringen kannst, ohne dass dir langweilig wird. Schaue dann, ob da oder in einem angrenzenden Themengebiet auch die notwendige Nachfrage herrscht. Und dann schau, dass du da so gut wirst, dass du aus der Masse herausstichst. Das ist zwar kein einfacher Weg, aber der nachhaltigste. Klaus schrieb: > Moin, > > dumme Frage. Habe mich nur gefragt, wie sinnvoll es eigentlich > heutzutage noch ist, die Programmierung von Mikrocontrollern in > Deutschland zu lernen? Und welche Sprache dafür ist besser? C oder C++? > Assembler wohl eher nicht, gell? Ich finde die Frage gar nicht so dumm. Sie setzt sich zumindest mit dem Thema grundsätzlich und auch technisch etwas auseinander. Das liegt gar nicht so weit auseinander, da das eine das andere bedingt. Mach dir klar, dass sich MCU-Programmierung mit sagen wir mal "Enterprise"-Entwicklung (z.B. Java) oder Web-Entwicklung Überlappungen hat, aber auf so ziemlich jeder Ebene Alleinstellungsmerkmale besitzt (z.B. Laufzeitverhalten -> hohes Race-Conditions-Risiko, Resourcenverbrauch -> sehr eingeschränkt, Entwickler-Mindset -> sehr auf Traditionen und Status-Quo gewichtet). Diese Merkmale sind unabhängig von der Programmiersprache grundsätzlich bei der Software-Entwicklung für Mikrocontroller zu beachten. Das heisst aber nicht, dass die Programmiersprache darauf keinen Einfluss hat, sondern genau das Gegenteil: Assembler ist die wohl puristischste Programmiersprache, die in Frage kommt. Allerdings ist es bei ihr wie ohne Netz und doppelten Boden zu programmieren. Jemand, der das kann, kann vielleicht die kleinsten und schnellsten Programme damit programmieren. Das hat aber seinen Preis: Für wirklich komplexe Aufgaben ist es nicht geeignet. Aber gerade bei kleinen, gut abgegrenzten Stellen, bei denen es z.B. auf Geschwindigkeit ankommt, kommt man nicht daran vorbei. Auch wenn man in einer Hochsprache entwickelt, wird man immer mal wieder darauf schielen, was denn hinten an Assembler rauskommt, um Optimierungen machen zu können. Hier ist https://godbolt.org/ eine unschätzbare Hilfe. C ist der nächsthöhere Kandidat. Gerade wenn du mit älteren Projekten zu tun hast, wirst du über diese Sprache stolpern. Du wirst, wenn du karrieremäßig diesen Weg gehst, diese Sprache vermutlich sowieso im Vorbeigehen lernen. Sie ist nicht so kompliziert, wie z.B. C++. Hier ist eher die Herausforderung, sie richtig zu verwenden. Bei C, wie auch bei C++, ist das Hauptproblem, dass sie eine ganze Reihe von "undefined bahaviour" (UB) haben. Da heißt, dass sprachlich bestimmte Ausdrücke möglich sind, aber nicht definiert ist, was dann passiert. In diesem Fall kann es von so ziemlich allem abhängen, was dann passiert. Das Problem ist, dass man sehr erfahren sein muss, nicht in solche Fallen zu tappen. Zusätzlich ist es auch noch bei C so, dass viele Datenstrukturen und Algorithmen, die man von anderen Programmiersprachen gewohnt ist, nicht existieren. Man wird also häufig selbst damit zu tun haben oder in anderen Projekten damit konfrontiert sein, dass das Rad neu erfunden wurde. Das birgt natürlich auch ein hohes Potenzial an Fehlern, die sich immer mal wieder in wechselnder Form einschleichen. C++ wiederum nimmt sich zum Ziel so Systemnah wie C zu sein, aber gleichzeitig die Komfortabilität und Produktivität von aktuellen Hochsprachen, wie Java oder C# anzubieten. Das Problem von C++ ist allerdings das, was dessen Stärke über die letzten Jahrzehnte war: Die Abwärtskompatibilität. Einerseits erbt es fast alle Schwächen von C, weil es dazu kompatibel ist. Andererseits hat es selbst schon ein hohes Maß an Komplexität aufgebaut, die beherrscht werden will. C++ wird wahrscheinlich in immer mehr Projekten eingesetzt werden. Aber es wird wahrscheinlich immer ein Tanz mit C sein. Insbesondere, wenn man mit Hardware-Abstraction-Layern zu tun haben wird, wird man die Schnittstelle C<->C++ haben. Last but not Least gibt es noch die Programmiersprache Rust. Diese ist noch absolut in den Anfängen und spielt im täglichen (Embedded-)Business noch keine Rolle. Allerdings räumt diese mit allen Altlasten auf, die C und C++ haben: Kein undefined behaviour mehr, keine Race-Conditions mehr, die die Datenintegrität zerstören, leicht zu lesende Fehlermeldungen, etc... Diese Sprache hindert dich aktiv daran, viele Fehler zu machen, die gerade Anfänger in C und C++ gern machen. Ich denke, dass hier noch viel passieren wird, sodass man sich diese Sprache auch unbedingt anschauen sollte. Und sei es nur, um darüber zu lernen, worauf man bei C und C++ aktiv aufpassen muss (z.B. verhindern, dass zwei Stellen im Code gleichzeitig schreibend auf den selben Wert zugreifen). Schlussendlich musst du selbst entscheiden, wie du dich dem näherst. Am Ende würde ich dir Empfehlen, dir mal jede dieser Sprachen soweit anzuschauen, dass du ein grobes Gefühl dafür bekommst und dann dort weiter machst, wo du dich am wohlsten fühlst. Das muss im ersten Anlauf auch noch nicht Embedded sein. Wenn du dann da einigermaßen sicher unterwegs bist schaust du dir die anderen Sprachen nochmal an und versuchst da nachzuziehen. Dann bist du auch flexibel einsetzbar und für die Zukunft gewappnet.
Das macht überhaupt keinen Sinn. Mikrocontroller haben 64KRam/Rom, sind 16 Bit breit und laufen mit max 30MHz. Das ist alles so 80er. Das ist so, also ob du dich in Golf-1 Motoren oder Dual Plattenspieler einarbeiten möchtest. Und wer will das wirklich schon? Wobei auch die Sprachen so alt sind: C aus den 70ern, C++ aus den 80ern. Also wirklich alte Kamellen. Das hat wirklich alles den Geschmack einer ZDF-Hitparade. Mikrocontroller tun nur Freaks und aktuell noch die Zielgruppe des ZDF. Mach was modernes mit KI.
... etwas lernen macht sowieso grundsätzlich keinen Sinn! Genieß doch lieber das Leben mit der Kohle von Mama und Papa! Bestell dir noch'n geilen Coktail und lade die sexy Braut an der Theke ein. Lerne wie du die Dame "herumbekommst", da hast du deutlich mehr davon als ein Stück Silizium programmieren zu können (vllt. jedoch programmiert das Silicon der Dame dich?)
Alex R. schrieb: > Natürlich sollte man aber darauf schielen, wo dringend Leute gesucht > werden und wo ein Überangebot herrscht. Dann braucht man nur noch das richtige Bauchgefühl, um nicht in einen Schweinezyklus reinzulaufen ;-)
Rainer W. schrieb: > Alex R. schrieb: >> Natürlich sollte man aber darauf schielen, wo dringend Leute gesucht >> werden und wo ein Überangebot herrscht. > > Dann braucht man nur noch das richtige Bauchgefühl, um nicht in einen > Schweinezyklus reinzulaufen ;-) Guter Punkt! Ja, Marktdynamiken, wie den Schweinezyklus sollte man natürlich auch im Blick haben. Am Bauchgefühl wird man wohl auch nie vorbeikommen.
Peter schrieb: > Das macht überhaupt keinen Sinn. > Mikrocontroller haben 64KRam/Rom, sind 16 Bit breit und laufen mit max > 30MHz. Das ist alles so 80er. > [...] > Mach was modernes mit KI. Ich nehme an, derzeit 6 Menschen haben wohl die Ironie nicht bemerkt. :D
Klaus schrieb: > Macht es Sinn MCU Programmierung zu lernen? Natürlich macht das Sinn, schließlich programmieren sie sich nicht von selbst und sie ersetzen immer mehr mechanische Lösungen. Heute bekommt ja nicht mal mehr einen Rasierapparat ohne Mikrocontroller. Man sollte sich eher fragen, wo diese Dinger programmiert werden. Die meisten Konsumgüter kommen aus Asien, da sind wir als Deutsche raus. Aber hier werden Maschinen und Kraftfahrzeuge entwickelt, die ebenfalls programmierte Mikrocontroller brauchen. > Und welche Sprache dafür ist besser? Die technisch "beste" Programmiersprache schränkt gar nicht ein und unterstützt alles, was der jeweilige Mikrocontroller kann. Da fällt mir nur Assembler ein. Allerdings beherrschen das nur wenige Programmierer. Ab einer gewissen Größe verliert man schnell den Überblick, insbesondere wenn die Software von mehreren Leuten gemeinsam entwickelt wird oder Jahre später verändert werden soll. Deswegen wurden Hochsprachen erfunden. Im Mikrocontroller-Umfeld ist C der Platzhirsch, dich gefolgt von C++ (meist nur ein Subset davon). Aber auch diverse Basic Dialekte und für den Anwendungsfall spezialisierte Scriptsprachen sind durchaus verbreitet. Nach einigen Berufs-Jahren wirst du sehr wahrscheinlich mehrere Programmiersprachen gelernt haben. Aber mit einer muss man anfangen, klar. Nur selten wirst im Beruf die freie Wahl haben. Da nimmt man das, was vorgegeben wurde. Da deine Frage offenbar auf das vorbereitende Erlernen einer Programmiersprache abzielt, empfehle ich dir C wegen der weiten Verbreitung. Viele andere Programmiersprachen wurden anfangs auch in C gebaut, bis sie so weit waren, sich selbst compilieren zu können. Auch in Python ist C tief verankert. Diese Sprache lernst du am besten zunächst auf einem PC, nicht auf Mikrocontrollern. Dazu empfehle ich dir die Qt Creator IDE. Die Community Version ist kostenlos. Sie kann hervorragend unabhängig von Qt benutzt werden, auch für Mikrocontroller. Ich benutze die Qt Creator IDE zum Beispiel in Kombination mit dem Arduino Framework, um ESP8266 Module (Mikrocontroller mit WLAN) zu programmieren. Alex R. schrieb: > Ich finde die Frage gar nicht so dumm. Ich bin erstaunt, dass der Alex so viele negative Bewertungen für diesen Beitrag bekommen hat. Ist stimme ihm durchaus zu, und ich würdige auch seine Mühen, die Unterschiede zwischen den genannten Sprachen zu beschreiben. Das hat er durchaus korrekt gemacht.
Peter schrieb: > Mikrocontroller tun nur Freaks und aktuell noch die Zielgruppe des ZDF. Ja, da ist alles so 80er. Aber du willst auch nicht, dass dein Rasierer erst mal ein Windows booten muss, bevor er an geht. Und du willst nicht, dass dessen Akku nach 2 Tagen Standby schon wieder leer ist. Wenn diese 80er Leute ausgestorben sind, wer programmiert die Dinge dann weiter? Da gibt es durchaus Bedarf. Die Kollegen, die den Umgang mit den ganz kleinen Mikrocontrollern drauf haben, sind auch die besseren Programmierer für Backend Anwendungen im Enterprise Umfeld. Denn sie wissen, wie man halbwegs effizient mit Datenstrukturen umgeht. Computer, die von 2000 Menschen gleichzeitig benutzt werden, sind eine ganz andere Hausnummer, als Desktop PC.
˙ɟ uɐɟǝʇs schrieb: > Alex R. schrieb: >> Ich finde die Frage gar nicht so dumm. > > Ich bin erstaunt, dass der Alex so viele negative Bewertungen für diesen > Beitrag bekommen hat. Ist stimme ihm durchaus zu, und ich würdige auch > seine Mühen, die Unterschiede zwischen den genannten Sprachen zu > beschreiben. Das hat er durchaus korrekt gemacht. Danke! Ich liege auch extrem häufig falsch oder habe eine falsche/zu eingeschränkte Perspektive. Nur dann wäre ein konkreter Kommentar sehr viel hilfreicher als eine einfache negative Bewertung ;-)
Christian S. schrieb: > Mit Assembler versteht man am ehesten, was sich innen im Mikrocontroller > abspielt, somit lernt man die Grundlage der Grundlage, um ihn später > eventuell in C programmieren zu können. Genau!
Im MCU Umfeld ist es sicher eine gute Idee, Assembler zu lernen. Aber nicht als erste Sprache. Zudem sollte man bedenken, dass es zahlreiche erheblich unterschiedliche Varianten von Assembler gibt. Mit den Befehlen eines AVR kann man weder einen MCS51 noch einen ARM Cortex-M programmieren.
Die Streitfrage Assembler oder Hochsprache ist wie, kaufe ich das Brot beim Bäcker, oder Saatgut und bestelle den Acker.
˙ɟ uɐɟǝʇs schrieb: > Wenn diese 80er Leute ausgestorben sind, wer programmiert die Dinge dann > weiter? Die KI ...
Rainer W. schrieb: >> Wenn diese 80er Leute ausgestorben sind, wer programmiert die Dinge dann >> weiter? > Die KI ... Träum ruhig weiter.
Rainer W. schrieb: > ˙ɟ uɐɟǝʇs schrieb: >> Wenn diese 80er Leute ausgestorben sind, wer programmiert die Dinge dann >> weiter? > > Die KI ... Ich freue mich schon darauf, wenn der Kater nach der Euphorie einsetzt. Erste Zeichen sind ja schon zu sehen: https://www.golem.de/news/klima-kuenstliche-intelligenz-boomt-co2-fussabdruck-ebenfalls-2303-172536.html https://www.heise.de/news/KI-Euphorie-an-der-Boerse-Wie-gross-ist-die-Blase-9231430.html Mir kommt es so vor, als ob die Welt gerade jubelt, dass ein neuer Ansatz eine einzige Problemstellung (erstelle mir etwas, das plausibel klingt) besonders toll löst. Sämtliche Fragen nach Reproduzierbarkeit (neu trainiert=komplett anderes Ergebnis), Transparenz (was interessiert es mich, welche Daten im Model zu dem Ergebnis geführt haben!?), Belastbarkeit (eine Hand mit sechs Fingern? Eine Firmware die nicht kompiliert?) oder Aufwand/Nutzen (energiehungriges Anlernen der Modelle) treten gerade komplett in den Hintergrund, bis man merkt, dass all diese Punkte nicht gelöst sind.
Gibt es auf die Frage überhaupt eine allgemeingültige Aussage? Steht der Frager am Anfang seines Berufslebens? Was mach er in seinem Beruf? Ist das eher eine Frage aus dem Bereich Hobby? Ich habe erst relativ spät in meinem Berufsleben mit der µC-Programmierung begonnen - nicht für das eigentliche Produkt, aber als Hardwerker war es doch vielfach nützlich, mal schnell eine kleine Zusatzschaltung zu haben, das einen z.B. bei der Inbetriebnahme unterstützt. Solche Dinge kann man ggf. kaufen (Patterngenerator), mit konventionellen ICs aufbauen oder eben schnell und klein in einen µC bringen. Insbesondere, wenn Einzelstücke gefragt sind. Und auch im Hobbybereich bin ich froh, das einsetzen zu können. Immer mal wieder fallen kleine Überwachungs- oder Steuerungsaufgaben an und fast immer ist das mit dem µC eleganter und flexibler zu lösen als in reiner Hardware. Auch, weil nach der ersten Implementierung oft noch der Wunsch entsteht, das eine oder andere könnte doch auch noch mit erledigt werden ...
˙ɟ uɐɟǝʇs schrieb: > Peter schrieb: >> Mikrocontroller tun nur Freaks und aktuell noch die Zielgruppe des ZDF. > > Ja, da ist alles so 80er. Aber du willst auch nicht, dass dein Rasierer > erst mal ein Windows booten muss, bevor er an geht. Und du willst nicht, > dass dessen Akku nach 2 Tagen Standby schon wieder leer ist. > > Wenn diese 80er Leute ausgestorben sind, wer programmiert die Dinge dann > weiter? Da gibt es durchaus Bedarf. > > Die Kollegen, die den Umgang mit den ganz kleinen Mikrocontrollern drauf > haben, sind auch die besseren Programmierer für Backend Anwendungen im > Enterprise Umfeld. Denn sie wissen, wie man halbwegs effizient mit > Datenstrukturen umgeht. Computer, die von 2000 Menschen gleichzeitig > benutzt werden, sind eine ganz andere Hausnummer, als Desktop PC. Ich verdiene seit 30 Jahren mein Geld damit. Aber wenn du das machst, dann musst du Freude an den kleinen Dingern haben. Wenn jemand aber hier erst nachfragen muss, ob da etwas für ihn ist, dann hat der auch keinen Spass daran. Sonst würde er es ja einfach machen. Und so jemanden möchte ich nicht als neuen Kollegen.
Hallo Klaus H. schrieb: > Gibt es auf die Frage überhaupt eine allgemeingültige Aussage? > > Steht der Frager am Anfang seines Berufslebens? > Was mach er in seinem Beruf? > Ist das eher eine Frage aus dem Bereich Hobby? Wow Schön zu sehen, dass es hier doch auch Leute gibt, die nachdenken, über ihren Horizont sehen können (sich und seine Meinung nicht als den Mittelpunkt der Welt sehen) und verstehen, dass es nirgendwo "die einzig wahre Wahrheit" gibt. Natürlich macht es Sinn µC Programmierung zu lernen - aber nicht für jeden und schon gar nicht aus einer Art Zwang oder um es auf seine "Das kann ich" (habe allerdings nie Spaß daran oder ein echtes Interesse) Liste für irgendwelche AG (oder gar "Schulen") zu haben.
Beitrag #7477026 wurde von einem Moderator gelöscht.
Klaus schrieb: > Habe mich nur gefragt, wie sinnvoll es eigentlich > heutzutage noch ist, die Programmierung von Mikrocontrollern in > Deutschland zu lernen? Ziel? Reich werden? Wenn du Spaß daran hättest, bräuchtest du eigentlich nicht danach zu fragen. Klaus schrieb: > Und welche Sprache dafür ist besser? C oder C++? > Assembler wohl eher nicht, gell? Natürlich C++! Damit kannst du auch im PC Bereich usw. was anfangen. C lernt man da gleich automatisch mit. ASM schadet nicht, ist allerdings immer wieder proprietär.
Beitrag #7477416 wurde von einem Moderator gelöscht.
Moin, danke für die ganzen Antworten. Ich bin staatlich geprüfter Techniker mit der Fachrichtung Mechatronik und gelernter Elektroniker für Geräte und Systeme. Klaus H. schrieb: > Steht der Frager am Anfang seines Berufslebens? > Was mach er in seinem Beruf? > Ist das eher eine Frage aus dem Bereich Hobby? Also eigentlich habe ich erstmal gar nicht so wirklich für mich selbst gefragt, sondern nur im Allgemeinen, da sich das Internet relativ groß ausschweigt, über die Nützlichkeit eines µControllers. Ich bin noch ziemlich weit von der Rente entfernt aber durch die Pflege meiner Großmutter zusammen mit meiner Mutter jetzt etwa ein Jahr arbeitslos. Ich habe meinen Techniker mit über 30 gemacht, das stimmt schon, aber hab meine Klassenkameraden in jeder C-Programmier-Aufgabe in die Tasche gesteckt. Ich habe mir sogar selber Aufgaben ausgedacht, weil mir das Programmieren so viel Spaß macht und brauche diese auch manchmal, um nicht wieder bei Null zu starten. Also ich habe ein sehr gutes mathematisches Verständnis, das ist tatsächlich fast meine Inselbegabung. E-Gitarre kann ich zum Beispiel auch sehr gut ;) Ich sage es mal so, bis vor einigen Wochen habe ich fast immer nur Abends gezockt und gemerkt, dass es mir ja eigentlich nix bringt und ich eigentlich das Programmieren liebe und wieder angefangen in C++ (eher C) in Visual Studio zu programmieren und es mir einfach viel mehr Spaß macht logisch zu denken und Programme zu schreiben. Ich bin handwerklich ziemlich geschickt und habe vor einem Jahr noch in einem Labor für Wärmepumpen gearbeitet, wo ich die verrücktesten Dinge gebaut habe. Musste den Job leider wegen meiner Großmutter kündigen, obwohl der echt cool war. Also meine Frage, wie es wohl einige gemerkt habe, zielt wohl eher darauf ab, ob es Sinn macht, sich auf eine Stelle zu bewerben, wo man MCU programmiert, obwohl ich es noch nicht perfekt beherrsche?! Edit: Ich habe vergessen zu sagen, dass wir in der Technikerschule immer nur SPS anstatt Microcontroller programmiert haben. Und ich weiß nicht warum ich SPS anstelle von Microcontrollern nutzen sollte? Mein Klassenkamerad hat immer alles geschrieben, weil es einfach eine Hackordnung gibt (also, der kann es, der macht es. Ich fand es etwas Sinnlos von einem Lehrinstitut, weil ich wirklich null über SPS gelernt habe. Jeder sollte die Möglichkeit haben, es zu lernen, da sollten die Erfahrenen eher im Hintergrund stehen) und ich habe nur zugesehen. Ich habe nur einen Touchscreen programmiert, der sogar richtig gut war, aber nicht wirklich SPS am Ende verstanden und hasse SPS einfach.
:
Bearbeitet durch User
Beitrag #7477494 wurde von einem Moderator gelöscht.
Beitrag #7477513 wurde von einem Moderator gelöscht.
Beitrag #7477528 wurde von einem Moderator gelöscht.
Ich empfehle Dir es zu versuchen. Letztendlich muss der Arbeitgeber entscheiden ob er dich fördert.
Wilhelm M. schrieb: > Stimmt, sieht schwer nach Inselbegabung aus. Ja, Trolle kennt man als Gabe der Insel, Island. SCNR https://www.deutschlandfunk.de/naturreligion-auf-island-der-einfluss-von-trollen-und-elfen-100.html
Klaus schrieb: > Also meine Frage, wie es wohl einige gemerkt habe, zielt wohl eher > darauf ab, ob es Sinn macht, sich auf eine Stelle zu bewerben, wo man > MCU programmiert, obwohl ich es noch nicht perfekt beherrsche?! Ja! Wenn dir die Stelle und Aufgabenstellung zusagt, warum nicht? Da würde ich die Priorität setzen. MCU programmieren ist ja nicht auf auf PICs oder Tinys beschränkt, im Embedded-Bereich gibt es viele Aufgaben auch für leistungsfähige MCUs. Und selten macht man bei einem Stellenwechsel genau das selbe wie vorher. > noch nicht perfekt beherrsche Naja, steht nicht jedem eine Einarbeitungszeit zu? Nach deinen Aussage bist du ja ganz gut in der Programmiersprache. Hinzu kommen eben noch die Hardwarerandbedingungen, die eine MCU so mit sich bringt - Bedienung von I/O, ADC, UART, Timern, Interrupts usw. Und als Elektroniker hast du durchaus eine Basis für das, was da ablaufen muss.
Moin, Klaus schrieb: > Habe mich nur gefragt, wie sinnvoll es eigentlich > heutzutage noch ist, die Programmierung von Mikrocontrollern in > Deutschland zu lernen? Das kommt stark drauf an, was du sonst noch "gscheid" kannst. Wenn du garnix kannst, ist's natuerlich auch besser, wenn du dann wenigstens noch programmieren lernst. Dann wird allerdings besser sein in einer moeglichst deppensicheren Hochsprache (moeglichst in einer Horde mit anderen Gleichgesinnten und -begabten) zu programmieren. Und wenn du schon irgendwas anderes gut kannst, dann wird's interessant programmieren zu lernen, um in der Fachrichtung irgendwelche fachspezifischen Neuigkeiten zu entwickeln oder bestehende Probleme zu loesen. Und da wird sich die Programmiersprache eben nach dem Problem richten. Gruss WK
Klaus schrieb: > Edit: Ich habe vergessen zu sagen, dass wir in der Technikerschule immer > nur SPS anstatt Microcontroller programmiert haben. Und ich weiß nicht > warum ich SPS anstelle von Microcontrollern nutzen sollte? Mikrocontroller sind Bauteile, die man auf eine Platine lötet, sie werden in elektronischen Geräten eingesetzt. SPSen sind Geräte, die man in den Schaltschrank baut, sie werden im Maschinen- und Anlagenbau eingesetzt. Das solltest du als gelernter EGS aber eigentlich wissen? > ich eigentlich das Programmieren liebe und wieder angefangen in C++ > (eher C) in Visual Studio zu programmieren und es mir einfach viel mehr > Spaß macht logisch zu denken und Programme zu schreiben. > [..] > nicht wirklich SPS am Ende verstanden und hasse SPS einfach. Dann hast du leider die Weiterbildung zum Mechatronik-Techniker arg unglücklich gewählt. Programmierung in C oder C++ wird meist von Ingenieuren oder Informatikern gemacht, kaum von Facharbeitern oder Technikern, die lässt man da in den meisten Firmen nicht ran. Zur Ausgangsfrage: "Macht es Sinn MCU Programmierung zu lernen?": Als Hobby: warum nicht? Als Beruf: mit deiner Ausbildung leider eher nicht, außer du hättest Kontakte, die dir einen Einstieg ermöglichen.
:
Bearbeitet durch User
Die Hauptfrage ist, ob Du nur ein Einzelkämpfer bist oder auch im Team produktiv arbeiten kannst. Ich kenne Fälle, wo nach dem Weggang eines Kollegen seine gesamten Sourcen nach dev/null verschoben wurden. Oder auch Kollegen, die sich mit astyle schwertun. Auch C&P-Codemonster machen Dir keine Freunde und längerfristig auch keine Freude. Ich hab das schon gesehen, wo dann in 10 gleichlautenden Ausgaben eine mit Schreibfehler drin war. Exzessives C&P macht den Code fehleranfällig und unwartbar. Will man ein begehrter Programmierer werden, sollte man auch die ungeliebten Sachen beherrschen, wie Spezifikationen erstellen, Interfaces dokumentieren, Regressionstest schreiben. Dokumentation macht man nicht nur für andere, sondern immer auch für sich selber, wenn man mal später wieder reinschauen muß. Ich hatte mal eine Kollegen, der war ein sehr guter Programmierer. Ich habe es erst gemerkt, als ich seinen 8051-Code übernommen hatte und mehrmals erweitern mußte. Es ging wider erwarten recht gut. Da war er aber schon lange weg, d.h. ich konnte nichts erfragen.
:
Bearbeitet durch User
Beitrag #7477763 wurde von einem Moderator gelöscht.
Peter D. schrieb: > Will man ein begehrter Programmierer werden, sollte man auch die > ungeliebten Sachen beherrschen, wie Spezifikationen erstellen, > Interfaces dokumentieren, Regressionstest schreiben. Dokumentation macht > man nicht nur für andere, sondern immer auch für sich selber, wenn man > mal später wieder reinschauen muß. Oh ja, volle Zustimmung! Die Kehrseite davon ist, man wird immer dann gerufen, wenn die K... am Dampfen ist und keiner mehr weiter weiß. Blackbird
Klaus schrieb: > da sich das Internet relativ groß > ausschweigt, über die Nützlichkeit eines µControllers ????????????? Hast du ein anderes Internet als ich? > ob es Sinn macht, sich auf eine Stelle zu bewerben, wo man > MCU programmiert, obwohl ich es noch nicht perfekt beherrsche Kein Programmierer kann alles. Mein Werdegang scheint deinem ähnlich zu sein. Ich habe in den 90er Kommunikationselektroniker gelernt. Da gab es nur ein kleines bisschen Programmierung nebenbei. Dabei habe ich gemerkt, dass es mir Spaß macht und dass ich dort besonders talentiert bin. Deswegen habe ich mich beruflich Schrittweise in diese Richtung weiter bewegt. Jetzt bin ich "oben" angekommen, bin Senior Entwickler mit einem kleinen Team unter mir, und werde bezahlt wie ein Akademiker mit 10 Jahren Erfahrung. Die Ausbildung (Kommunikationselektroniker) nützt mir nur noch beim Hobby. Aber egal, ich bin so zufrieden. Mache dich mehr mit dem Internet als Informationsquelle vertraut. Denn die allermeiste Doku gibt es nur noch online.
Beitrag #7478389 wurde vom Autor gelöscht.
Beitrag #7478394 wurde vom Autor gelöscht.
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.