我在工作中做了很多固件工作,但是我正在尋找有關該主題的更高級的書籍。事情不像“什麼是中斷”的基礎。我正在閱讀有關嵌入式系統開發的O'Reilly書,雖然不錯,但不夠先進。例如,很少有書籍討論諸如Flash頁面(這可能非常有用)之類的東西,很少將代碼段放在特定的內存區域。
也許有些技巧和竅門。我主要進行PIC編程。
我在工作中做了很多固件工作,但是我正在尋找有關該主題的更高級的書籍。事情不像“什麼是中斷”的基礎。我正在閱讀有關嵌入式系統開發的O'Reilly書,雖然不錯,但不夠先進。例如,很少有書籍討論諸如Flash頁面(這可能非常有用)之類的東西,很少將代碼段放在特定的內存區域。
也許有些技巧和竅門。我主要進行PIC編程。
Jack Ganssle的固件手冊有很多優點。最棒的是,您可以在他的網站上找到本書中的很多內容(以及更多內容)。
我希望我有一個好的建議,我會看一下線程,希望能有一本書。
另一方面,編譯器隨附的手冊是您最重要的書之一可以閱讀。通常,您可以在這裡學習在某些區域放置代碼的精髓。
了解如何在基本級別使用Flash(例如頁面是什麼),可以從數據表中學習。好吧,如果您需要學習更高級的主題,我想找一本好書是正確的方法。
我會讓您知道,關於本書,有非常大量的教育材料。芯片網站。大多數微型計算機站點都投入了大量材料來幫助促進新用戶學習他們的系統。
我喜歡Miro Samek撰寫的“ C / C ++中的實用UML狀態圖,第二版:嵌入式系統的事件驅動編程”。先前的版本稱為“ C / C ++中的實用狀態圖:嵌入式系統的量子編程”。我閱讀了本書封面的上一版作為封面,在某些方面,我更喜歡該版,因為它更多地基於C ++。最新版本是基於C的,這對於嵌入式開發很有意義,因為即使最小的micro都具有C編譯器。不要被UML部分嚇到。要學習的重要事情是如何使用狀態機使代碼更健壯和可靠。 UML只是表達狀態機的一種方式,所需的UML子集非常少。
對於16位PIC,我建議R. Reese,J.Bruce和B.Jones撰寫的“微控制器:使用PIC24位系列的彙編語言到C語言”,ISBN 978-1584505839。它有很多硬件(包括原理圖)與固件討論混在一起,而不僅僅是重新編寫數據表。
如果您使用的是更新的8位PIC(PIC18F系列)之一,則下一本書看起來相當不錯:D。Ibrahim撰寫的“用PIC 18F系列從C到USB的高級PIC單片機項目:從USB到RTOS”,ISBN 978-1584503781。我自己卻沒有那個。這兩本書都是很新的(2008年出版)。
-湯姆
John R. Levine的鏈接程序和裝載程序(ISBN 1-55860-496-0)很好。它是關於內存,代碼重定位,符號管理等的底層細節,但並非專門用於嵌入式開發。不過,這是我所知道的關於此類低級細節的最好的書。在這一點上,可能有點過時了,例如,我認為它與現代Flash文件系統無關。