Ich mache bei meiner Arbeit viel Firmware-Arbeit, aber ich suche nach fortgeschritteneren Büchern zu diesem Thema. Dinge, die nicht wie die Grundlagen von "Was ist ein Interrupt" sind. Ich lese das O'Reilly-Buch über die Entwicklung eingebetteter Systeme, das in Ordnung ist, aber nicht fortgeschritten genug. Zum Beispiel ist es selten, dass Bücher Dinge wie Flash-Seiten (die wirklich nützlich sein können) besprechen, wie man einen Codeabschnitt in einen bestimmten Bereich des Speichers legt.
Vielleicht etwas mit ein paar Tipps und Tricks. Ich mache hauptsächlich PIC-Programmierung.
Jack Ganssle's The Firmware Handbook enthält einige gute Kleinigkeiten. Das Beste ist, dass Sie viele der guten Teile aus dem Buch (und mehr) auf seiner Website finden können .
Ich wünschte, ich hätte einen guten Vorschlag, ich werde den Thread beobachten, in der Hoffnung, dass ein großartiges Buch auftaucht.
Übrigens ist das mit Ihrem Compiler gelieferte Handbuch eines der wichtigsten Bücher, die Sie lesen können. Im Allgemeinen lernen Sie hier, wie Code in bestimmten Bereichen platziert wird.
Informationen zur Verwendung von Flash auf einer grundlegenden Ebene, z. B. was Seiten sind, können Sie dem Datenblatt entnehmen. Wenn Sie fortgeschrittenere Themen lernen müssen, dann ist die Suche nach einem guten Buch wahrscheinlich der richtige Weg.
Ich möchte Sie wissen lassen, dass es auf der Microchip-Website eine sehr große Menge an Schulungsmaterialien gibt. Die meisten Microcomputer-Sites stellen eine Menge Material zur Verfügung, um neuen Benutzern dabei zu helfen, ihr System zu erlernen.
Ich mag „Practical UML Statecharts in C/C++, Second Edition: Event-Driven Programming for Embedded Systems“ von Miro Samek. Die vorherige Ausgabe hieß „Praktische Zustandsdiagramme in C/C++: Quantenprogrammierung für eingebettete Systeme“. Ich habe die vorherige Ausgabe dieses Buchs von vorne bis hinten gelesen, und in gewisser Weise bevorzuge ich diese Ausgabe, weil sie mehr auf C++ basiert. Die neueste Ausgabe ist mehr C-basiert, was für die Embedded-Entwicklung sinnvoll ist, da selbst die kleinsten Micros einen C-Compiler haben. Lassen Sie sich nicht vom UML-Teil abschrecken. Es ist wichtig zu lernen, wie Sie Zustandsautomaten verwenden, um Ihren Code robuster und zuverlässiger zu machen. UML ist nur eine Möglichkeit, einen Zustandsautomaten auszudrücken, und die erforderliche Teilmenge von UML ist sehr gering.
Für die 16-Bit-PICs empfehle ich „Microcontrollers: From Assembly Language to C Using the PIC24 Bit Family“ von R. Reese, J. Bruce und B. Jones, ISBN 978-1584505839. Es hat eine Menge Hardware (einschließlich Schaltpläne) mit den Firmware-Diskussionen vermischt und ist nicht nur eine Wiederaufbereitung von Datenblättern.
Wenn Sie einen der neueren 8-Bit-PICs (PIC18F-Familie) verwenden, sieht das folgende Buch ziemlich gut aus: "Advanced PIC Microcontroller Projects in C: From USB to RTOS with the PIC 18F Series" von D. Ibrahim, ISBN 978- 1584503781. Ich selbst habe die allerdings nicht. Beide Bücher sind ziemlich neu (veröffentlicht 2008).
- Tom
Linkers and Loaders von John R. Levine (ISBN 1-55860-496-0) ist ziemlich gut. Es geht um die Low-Level-Details von Speicher, Codeverlagerung, Symbolverwaltung und dergleichen, aber nicht ausschließlich für die eingebettete Entwicklung. Trotzdem ist es das beste Buch über solche Low-Level-Details, das ich kenne. An dieser Stelle könnte es etwas veraltet sein -- ich glaube nicht, dass es zum Beispiel etwas über moderne Flash-Dateisysteme enthält.
Für ARM-Chips habe ich viel gelernt von: ARM System-on-Chip-Architektur von Steve Furber
Es ist ein gut geschriebenes Buch mit viel technischem Hintergrund und wird wahrscheinlich nützlich sein, auch wenn Sie mit anderen Architekturen arbeiten.
Ich hatte ein PIC32-Buch, das in Ordnung ist und sich auf PIC konzentriert: Programmierung von 32-Bit-Mikrocontrollern in C
Kortuk
Kortuk
Daniel Grillo
Kortuk