Embedded system application development skill



如果從應用層的應用開發出發,建議先熟悉API函數,推薦《UNIX環境高級編程》,現在應該是第3版了,如果從應用層的界面開發出發,則建議學習QtWinCEAndroid等。
但真實的嵌入式開發,熟悉以上還是遠遠不夠的,建議如下學習曲線

第一節段 熟練使用Linux操作系統
學習Linux操作系統的概念和安裝方法,理解Linux下的基本命令、管理配置和編輯器,包括VI編輯器,GCC編譯器,GDB調試器和Make 項目管理工具等知識。

第二階段 精通linuxC語言
通過大量編程實例重點學習C語言的高級編程知識,包括函數與程序結構、指針、數組、常用算法、庫函數的使用等知識,另外,還要學習數據結構的基礎內容,包括鏈表、隊列、棧、樹、哈希表、圖等內容。

第三階段 嵌入式Linux應用編程
精通嵌入式Linux下的程序設計,精通嵌入式Linux開發環境,強化對Linux應用開發的理解和編碼調試的能力,包括系統編程、文件I/O、多進程和多線程、網絡編程、GUI圖形界面編程、數據庫。

第四階段 嵌入式入門階段-ARM體系結構
ARM處理器體系結構、編程環境、指令集、尋址方式、調試、彙編和混合編程。ARM的常用接口開發及硬件電路設計基礎(包括IO、串口、看門狗、實時時鐘、SPIIIC、掃描鍵盤、FLASH操作等),爲以後的設備驅動的學習打好基礎。

第五階段 嵌入式高級階段-Linux內核和驅動開發
深入內核細節,瞭解Linux相關運行機理,爲後面的驅動開發打好理論基礎,內容包括內核源碼結構、內存管理、進程管理、中斷管理、系統調用、內核同步、時鐘和定時器管理、信號、調度、進程間通信、文件系統和I/O設備管理等方面的內容。

第六階段 嵌入式硬件開發(學軟件的可以不學,但瞭解硬件對學嵌入式軟件有更深入的瞭解,尤其對系統的理解更深入。)
內容包括單片機的學習,電路分析和電路的原理,PCB設計,主要包括AltiumDesigned,電子設計基礎知識,原理圖初步設計,進階,提高,深入,pcb庫的設計,集成庫的作用和製作,pcb設計初步,PCB設計提高,PCB深入,對FPGACPLD系統的相關基礎概念等

第七階段 嵌入式深入階段
變成高手,你還要進一步學習內核和系統,內容包括計算機系統結構和彙編,linux內核編程,linux內核的基礎知識,彙編及保護模式,linux內核體系結構,linux引導程序分析,linux內核代碼分析,linux塊設備驅動程序分析等

第八階段  實踐階段
其實就是循序漸進,先學好基礎理論知識,然後動手試驗,最後總結試驗結果,驗證所學知識並積累經驗

希望對你有幫助,加油!

 

 

1、本科及以上學歷,計算機、通信、電子、自動化等相關專業;研究生及以上學歷優先考慮;
2、精通CC++等語言的應用編程,能夠獨立進行程序開發,具有3年以上嵌入式軟件開發相關工作經驗,熟悉嵌入式操作系統者優先;
3、精通單片機以及ARM程序開發,並精通相關開發環境;熟悉嵌入式linux軟件應用開發;
4、對信號採集及濾波算法和PID控制算法有一定了解; 有移動服務機器人開發經驗者優先;
5、熟悉12CSPISCICANUSB、以太網等總線接口,並能完成程序編寫;對常用的外圍器件如:觸摸屏、攝像頭、麥克風、控制電機、鍵盤、LEDA/D D/A等有一定的應用經驗;
6、熟悉ArduinoLinux等開源軟硬件以及ROS機器人操作系統者優先考慮;
7、有機器人開發經歷或機器人比賽應用經歷者優先考慮;
8、有較強的動手操作能力,善於學習新的知識,樂於發現,分析和解決複雜問題;

發佈了8 篇原創文章 · 獲贊 98 · 訪問量 13萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章