對于嵌入式開發軟件來說,可以把嵌入式軟件開發分成2個工作崗位。一個是應用開發,另一個是底層開發。以Linux系統為例,底層開發包括操作系統的開發和驅動的開發。
對應嵌入式軟件的職位有:ARM工程師,QT工程師,Linux驅動工程師,Linux應用工程師,單片機工程師。硬件職位有EMC工程師,PCBLayout工程師。
嵌入式軟件開發
嵌入式基礎知識:計算機體系結構,操作系統,微機原理,80%是驅動代碼在Linux內核代碼中。
嵌入式芯片被稱為SoC(System on Chip),它上面既有CPU還有其他模塊,比如內存控制器、USB、UART等。
(1) 嵌入式微處理器結構與應用:這是一門嵌入式硬件基礎課程,我們說過,嵌入式是軟硬件結合的技術,搞嵌入式軟件的人應對ARM處理器工作原理和接口技術有充 分了解,包括ARM的匯編指令系統。
(2) 嵌入式操作系統類課程
除了WinCE的實時性稍差外,大多數嵌入式操作系統的實時性都很強,所以也可 稱為實時操作系統Real TimeOperating System.從事嵌入式的人至少須掌握一個嵌入式操作系統(當然掌握兩個更好),這在嵌入式的所有技術中是最為關鍵的了。目前最重要的RTOS主要包 括:第一類、傳統的經典RTOS:最主要的便是Vxworks操作系統,以及其Tornado開發平臺。
嵌入式軟件開發
第二類、嵌入式Linux操作系統:Linux的前途除作為服務器操作系統外,最成功的便是在嵌入式領域的應用,原因當然是免費、開源、支持軟件多、呼擁者眾,這樣嵌入式產品成本會低。Linux本身不是一個為嵌入式設計的操作系統,不是微內核的,并且實時性不強。嵌入式博大精深,嵌入式軟件開發也有好多類型,所以學這個前景也是不錯的。