Fassen Sie das Grundwissen über eingebettete Systeme, Programmiersprachen, effiziente Tools und andere Inhalte zusammen.
Vor kurzem hörte ich einen Freund etwas sehr Gutes sagen:
Das iPhone ist ein eingebetteter Arm, der unter Betriebssystem läuft, und CUDA kann auch als heterogenes eingebettetes verstanden werden.
Wie können Sie aus dieser Perspektive ein ausgezeichneter eingebetteter Ingenieur werden, indem Sie die Informatik von eingebettet und nur Technologien wie Mikrocontroller, Arm, FPGAs usw. aufrufen und nur schmale technische Felder lernen?
Technische Dokumentation und Studienunterlagen:
Grundlagen für eingebettete Systeme:
Maschinelles Lernen:
Programmiersprache:
Umweltkonstruktion und Werkzeuge:
Theoretische Grundlage:
In diesem Lagerhaus wird das Wissen über das eingebettete Feld für lange Zeit in den Vordergrund gerückt. Indem Sie das Wissen zusammenfassen und verfeinern, können Sie ständig mehr nützliche Fähigkeiten erlernen.
Vor kurzem habe ich eine neue Sicht auf die Positionierung eingebetteter Ingenieure.
Absolventen der Elektronik -Majors lernen aus Maschinenebene wie Mikrocontroller und Mikrocomputerprinzipien und gehen dann auf die Sprachebene wie C -Sprache und Python und lernen dann Datenstrukturen und Algorithmen. Diese Route sieht ziemlich gut aus und ist für den Einstieg geeignet, aber es gibt ernsthafte Probleme auf dieser Route.
Die Probleme, die in eingebetteten Arbeiten auftreten, sind oft umfassend, was bedeutet, dass aus dem Sprachebene oder der Algorithmusebene das Problem häufig nicht lösen kann, und manchmal muss es tief in die Maschinenebene eingehen. Die Frage ist also, welche Ebenen für das gesamte eingebettete System vorhanden sind oder welche Ebenen für das gesamte Computersystem vorhanden sind? Um das gesamte Wissenssystem -Framework und Ihre Position zu verstehen, müssen Sie ein tieferes Verständnis der Kompositionsprinzipien des Computers haben.
Das Buch, das ich hier empfehle, ist die dritte Ausgabe von "Tiefstverständnis der Computersysteme" von Randal E. Bryant und David R. O'Hallaron. Der entsprechende Kurs, der gefunden werden kann, sind die "Grundlagen der Computersysteme", die Professor Yuan Chunfeng auf der MOOC -Plattform unterrichtet hat. Dies hilft uns, ein Verständnis der gesamten Abstraktionsschicht des Computersystems zu verstehen und unsere umfassende Fähigkeit zu verbessern, eingebettete Probleme zu lösen.

Eingebettete Ingenieure müssen in ihrer technischen Akkumulation eine ausreichende Tiefe haben.
Nach mehreren Jahren technischer Entwicklung habe ich mit verschiedenen Prozessoren in Kontakt gekommen und selbst eine einfache 16-Bit-CPU für mich gestellt und implementiert. Ich erkannte allmählich, dass die Verwendung bestimmter CPUs nicht das wichtigste Wissen ist, aber der wichtigere Inhalt sind die Prinzipien der Computerzusammensetzung und Computerarchitektur (x86 Arm RISC-V). Ein tiefes Verständnis von Computer-Grundkenntnissen kann es uns ermöglichen, das gleiche zugroße Lernen für neue Computerhardware zu verstehen, und es wird uns nicht zu schwierig finden, einige neue heterogene Computertechnologien wie GPU, TPU und NPU zu erlernen.
Verschiedene Programmiersprachen sind wesentliche Werkzeuge für Ingenieure. Das Wichtigste ist jedoch nicht die Programmiersprache selbst, sondern die Idee des Sprachdesigns und ihre anwendbaren Szenarien. Es wird sehr leicht zu verstehen, was sich hinter einer Programmiersprache steckt und eine neue Sprache lernt und benutzt.
Das Problem mit dem schnellen Positionierungssystem ist für jeden eingebetteten Ingenieur eine notwendige Fähigkeit. Wie kann man es also effektiv debuggen? Ich habe dieses Problem einmal mit einem echten Expertenkollegen besprochen und er sagte: Kann ich sagen, dass ich mich hauptsächlich darauf verlassen kann? Diese Antwort ist offensichtlich zu kurz, aber wir müssen zugeben, dass Debugg tatsächlich auf dem Denken beruht.
Vor kurzem las ich ein Buch mit dem Titel "How to Lösung", das mir inspiriert wurde, und machte mir klar, dass dies ein Problem des Denkens ist.
Wenn Ingenieure die Debugging -Funktionen verbessern möchten, müssen sie oft über dieses Problem nachdenken: Diese Lösung scheint machbar und scheint korrekt zu sein, aber wie können sie über eine solche Lösung denken? Dieses Experiment scheint machbar zu sein, was eine Tatsache zu sein scheint, aber wie wurde diese Tatsache entdeckt? Und wie kann ich sie selbst vorstellen oder sie selbst entdecken? Bei der Arbeit müssen Sie nicht nur Ihr Bestes geben, um die Lösungen verschiedener Fehler zu verstehen, sondern auch die Motivationen und Schritte dieser Lösung zu verstehen und Ihr Bestes zu geben, um diese Motivationen und Schritte anderen zu erklären.