目前面前嵌入式軟件工程師的知識(shí)體系
嵌入式目前最流行的就是基于ARM9的開發(fā),相關(guān)學(xué)習(xí)的資料也非常的全。但是嵌入式的開發(fā)是個(gè)非常長(zhǎng)的戰(zhàn)線。想一個(gè)人把全線貫通至少需要兩年的時(shí)間.我目前只能在某些點(diǎn)上做到精通。對(duì)于整個(gè)線上的知識(shí)我現(xiàn)在做下總結(jié),留給我以后各個(gè)擊破。
嵌入式設(shè)備的用途非常的廣闊。小到遙控器、游戲機(jī),大到坦克、航天飛機(jī)都有著它的身影,正是以為這個(gè)特點(diǎn)它深深的吸引了我。但是所有的技術(shù)萬(wàn)變不離其宗。核心技術(shù)只占20%。最核心的飛機(jī)上的嵌入式和游戲機(jī)上的嵌入式產(chǎn)品只是功能上的一點(diǎn)點(diǎn)差異。核心硬件差別不大。
按我的理解它的技術(shù)大致分三層。底層基于硬件的開發(fā)、軟件平臺(tái)的特性開發(fā)、應(yīng)用場(chǎng)景和市場(chǎng)的分析。
底層基于硬件的開發(fā),需要電路知識(shí),數(shù)電、模電、微機(jī)原理、單片機(jī)原理、匯編、C語(yǔ)言。這部分學(xué)習(xí)的特點(diǎn)是技術(shù)相對(duì)穩(wěn)定。硬件平臺(tái)包含多個(gè)器件。但是在平臺(tái)的搭建上,每個(gè)器件廠家都會(huì)給出相關(guān)的建議方案。一般產(chǎn)品基于一個(gè)平臺(tái)開發(fā)都是兩年以上的開發(fā)。核心變化不會(huì)太大。在初始設(shè)計(jì)的時(shí)候就要充分考慮幾年內(nèi)不會(huì)有大的變動(dòng)。因?yàn)橐坏╅_版投產(chǎn)成本都相當(dāng)高的。包含了電路設(shè)計(jì)和驅(qū)動(dòng)開發(fā)兩方面的工作。硬件的換代一般3到5年。有的甚至更長(zhǎng)時(shí)間。
軟件平臺(tái)的特性開發(fā),對(duì)于簡(jiǎn)單邏輯的一般沒(méi)有操作系統(tǒng)很簡(jiǎn)單時(shí)序的運(yùn)算。常使用8位一下的硬件。擴(kuò)展性比較低。一般通過(guò)匯編直接編寫。對(duì)于越來(lái)越多的電子產(chǎn)品支持多種功能的集成,使得軟件平臺(tái)越來(lái)越復(fù)雜。于是出現(xiàn)了操作系統(tǒng)來(lái)管理協(xié)調(diào)多個(gè)程序之間的調(diào)度協(xié)調(diào)。讓嵌入式平臺(tái)在硬件不變的情況下提高了功能和性能。需要的知識(shí),操作系統(tǒng)、TCP/IP協(xié)議、高級(jí)編程語(yǔ)言(C/C++/JAVA/Dephie)、軟件工程、數(shù)據(jù)結(jié)構(gòu)、圖象處理、數(shù)據(jù)庫(kù)等。實(shí)際在正規(guī)的大公司中只需要了解這里的兩到三點(diǎn)就可以完全勝任平時(shí)的工作了。畢竟要研究透所有的知識(shí)要花大量的時(shí)間。很多公司也只希望你把一部分工作做好就可以了。太強(qiáng)了留不住人的。根據(jù)實(shí)際需求和崗位使用不同的技術(shù)。
應(yīng)用場(chǎng)景和市場(chǎng)的分析,這部分是站在最前沿的。它引導(dǎo)著整個(gè)產(chǎn)業(yè)鏈的發(fā)展方向。對(duì)于現(xiàn)有技術(shù)可以實(shí)現(xiàn)的應(yīng)用場(chǎng)景,并不一定滿足實(shí)際需求。這里需要的知識(shí)就很大程度基于經(jīng)驗(yàn)了。要了解用戶的真正需求。了解市場(chǎng)的發(fā)展趨勢(shì)。還要了解目前硬件技術(shù)到達(dá)什么程度,是否可以滿足需求。這里需要考驗(yàn)人的眼光。要在競(jìng)爭(zhēng)對(duì)手之前看到商機(jī)。引導(dǎo)客戶使用現(xiàn)有技術(shù)。一般做這一部分工作的都是技術(shù)型企業(yè)的老總。要對(duì)行業(yè)的走向作出清晰的判斷。這些決定非常重要。
目前我之前做過(guò)的技術(shù)主要集中于軟件層,語(yǔ)言上只是精通C語(yǔ)言因?yàn)樗谇度胧介_發(fā)有著天生的優(yōu)勢(shì)。能夠看懂簡(jiǎn)單的匯編(大學(xué)一年單片機(jī)的結(jié)果)。硬件系統(tǒng)的架構(gòu)和軟件系統(tǒng)的架構(gòu)非常熟悉。目前的能力只有軟件上的提高自己才是最現(xiàn)實(shí)的。是我的近期目標(biāo)。
【編輯推薦】