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