如果從應用層的應用開發(fā)出發(fā),建議先熟悉API函數(shù),如果從應用層的界面開發(fā)出發(fā),則建議學習Qt,WinCE或Android等。但真實的嵌入式開發(fā),熟悉以上還是遠遠不夠的,建議如下學習曲線.
第一節(jié)段 熟練使用Linux操作系統(tǒng)
學習Linux操作系統(tǒng)的概念和安裝方法,理解Linux下的基本命令、管理配置和編輯器,包括VI編輯器,GCC編譯器,GDB調(diào)試器和 Make 項目管理工具等知識。
第二階段 精通linux下C語言
通過大量編程實例重點學習C語言的高級編程知識,包括函數(shù)與程序結構、指針、數(shù)組、常用算法、庫函數(shù)的使用等知識,另外,還要學習數(shù)據(jù)結構的基礎內(nèi)容,包括鏈表、隊列、棧、樹、哈希表、圖等內(nèi)容。
第三階段 嵌入式Linux應用編程
精通嵌入式Linux下的程序設計,精通嵌入式Linux開發(fā)環(huán)境,強化對Linux應用開發(fā)的理解和編碼調(diào)試的能力,包括系統(tǒng)編程、文件I/O、多進程和多線程、網(wǎng)絡編程、GUI圖形界面編程、數(shù)據(jù)庫。
第四階段 嵌入式入門階段-ARM體系結構
ARM處理器體系結構、編程環(huán)境、指令集、尋址方式、調(diào)試、匯編和混合編程。ARM的常用接口開發(fā)及硬件電路設計基礎(包括IO、串口、看門狗、實時時鐘、SPI、IIC、掃描鍵盤、FLASH操作等),為以后的設備驅動的學習打好基礎。
第五階段 嵌入式高級階段-Linux內(nèi)核和驅動開發(fā)
深入內(nèi)核細節(jié),了解Linux相關運行機理,為后面的驅動開發(fā)打好理論基礎,內(nèi)容包括內(nèi)核源碼結構、內(nèi)存管理、進程管理、中斷管理、系統(tǒng)調(diào)用、內(nèi)核同步、時鐘和定時器管理、信號、調(diào)度、進程間通信、文件系統(tǒng)和I/O設備管理等方面的內(nèi)容。
第六階段 嵌入式硬件開發(fā)(學軟件的可以不學,但了解硬件對學嵌入式軟件有更深入的了解,尤其對系統(tǒng)的理解更深入。)
內(nèi)容包括單片機的學習,電路分析和電路的原理,PCB設計,主要包括Altium Designed,電子設計基礎知識,原理圖初步設計,進階,提高,深入,pcb庫的設計,集成庫的作用和制作,pcb設計初步,PCB設計提高,PCB深入,對FPGA和CPLD系統(tǒng)的相關基礎概念等
第七階段 嵌入式深入階段
變成高手,你還要進一步學習內(nèi)核和系統(tǒng),內(nèi)容包括計算機系統(tǒng)結構和匯編,linux內(nèi)核編程,linux內(nèi)核的基礎知識,匯編及保護模式,linux內(nèi)核體系結構,linux引導程序分析,linux內(nèi)核代碼分析,linux塊設備驅動程序分析等
第八階段 實踐階段
其實就是循序漸進,先學好基礎理論知識,然后動手試驗,最后總結試驗結果,驗證所學知識并積累經(jīng)驗
技術交流可以加黃工QQ2685896890 |