1,《C語言》第二版譚浩強;許,C語言程序設計第二版,機環工業出版社譯。
妳能區分指針數組和數組指針嗎?妳知道函數指針嗎?
妳能說出定義變量時系統分配給變量的空間和malloc()函數分配給變量的空間有什麽區別嗎?
2.《數據結構》C語言版由黃國宇、葉乃清主編,清華大學出版社出版。
能否合上書,用C語言實現書中單鏈表和雙鏈表的數據結構?
3.《實用C++程序設計》第二版。
這個階段主要是學習其面向對象的編程思想,加深對C語言和數據結構的理解。
4、學習單片機,最好找個學長帶帶。當然,如果妳偏軟件方向,妳可以跳過這壹條,但為了取得更高的成就,妳遲早要吃。
用51單片機能做出壹個實用的東西嗎?哪怕再簡單!
註意加深對中斷的理解。
5.學習ARM單片機。
(1),看周立功寫的《ARM微控制器基礎與實戰》(註:即使不使用書中的開發板)
(2)仔細閱讀相關芯片的英文原版文檔。如:arm920TE.pdf s 3c 2410 _ 1.2 . pdf
6、熟悉Linux環境,學習Linux環境編程,學習交叉編程。
(1),閱讀linux命令百科。小心pdf。
(2)閱讀GNU Make用戶手冊(中文翻譯版)。小心pdf。
(3)學會創建交叉編程環境。
7.學習Linux操作系統。
(1),LINUX環境下的高級編程
(2)仔細閱讀“joyfire筆記”,可在qianrushi.com網站的好書下載版塊獲得。
(3)仔細閱讀linux內核完整筆記。
(4)仔細閱讀理解linux內核2。
(5)、使用源代碼閱讀工具“Source Insight”分析真實的linux內核源代碼。
(6)最後移植內核,為運行在linux操作系統環境下的特定硬件編寫驅動程序。
9.了解如何編寫Linux設備驅動程序。請參考Linux設備驅動程序。
10,復習C++,學習使用QT進行圖形界面編程。
(1),仔細閱讀QT編程集錦。
(2)通過查看QT電子文檔,現場學習QT GUI編程。
(3)學習交叉編程。(其實就是把qmake這個命令改成tmake。)
11.當然,妳也可以學習如何制作PCB,設計自己的CPU(軟殼)。
至此,妳已經基本學會了嵌入式的整個流程!但是請記住:生活需要不斷的學習。