1樓
wangxinxin 發(fā)表于:2010-11-16 11:40:20
也許很多初涉嵌入式開發(fā)領(lǐng)域的程序員會被一系列的新名詞搞得頭昏腦脹,在這里,我希望能夠?qū)⑶度胧介_發(fā)的流程展現(xiàn)給大家。
嵌入式開發(fā)主要分為三個比較大的部分:
1、驅(qū)動程序開發(fā)
這部分開發(fā)是從硬件設(shè)計開始的,硬件工程師會設(shè)計PCB板,為我們提供標(biāo)準(zhǔn)開發(fā)板(SDB,standard development board)。當(dāng)我們拿到開發(fā)板之后的第一件事情就是編寫boot-loader,讓開發(fā)板啟動起來,一般是通過JTAG將boot-loader燒錄到開發(fā)板中的。我們可以將boot-loader看作PC中的BIOS,負(fù)責(zé)硬件設(shè)備的初始化工作,并且將操作系統(tǒng)運(yùn)行起來。在此之后,我們需要根據(jù)開發(fā)板上的硬件開發(fā)各種驅(qū)動程序,比如串口、USB、鼠標(biāo)、視頻輸入等。最后將這些驅(qū)動程序和boot-loader打包,稱為一個板級支持包(BSP)。BSP是和開發(fā)板的具體硬件緊密相關(guān)的。
所以從事這方面開發(fā)的工程師往往具有比較強(qiáng)的硬件知識水平。
2、平臺定制
我們可以將Windows CE想象為一盒積木,根據(jù)不同的應(yīng)用場景和設(shè)備要求,我們要對這盒積木進(jìn)行定制,堆積出不同形狀的城堡、動物和生活用品。這個過程稱為“平臺定制”,定制產(chǎn)生的平臺往往和具體的硬件設(shè)備相關(guān),直接將平臺
下載到硬件設(shè)備上就可以運(yùn)行了。整個開發(fā)過程,需要選擇不同的組件來搭配出最適合當(dāng)前硬件的軟件平臺。所以要對Windows CE的組件,也就是Catalog Item,有相當(dāng)程度的了解。
3、應(yīng)用程序開發(fā)
嵌入式設(shè)備上的應(yīng)用程序開發(fā)與傳統(tǒng)應(yīng)用程序開發(fā)類似,只是要借助于硬件模擬器或者實際設(shè)備對程序進(jìn)行調(diào)試。最常見的嵌入式設(shè)備應(yīng)用程序開發(fā),就是Windows Mobile的移動應(yīng)用開發(fā)。平臺定制工程師會在硬件出廠之前先提供平臺相關(guān)的SDK,SDK中會包括模擬器。應(yīng)用開發(fā)者可以首先使用模擬器對程序進(jìn)行開發(fā)和調(diào)試。等實際硬件出來之后,再將程序轉(zhuǎn)移到實際硬件中。因為Windows CE采用了很多措施,這種“轉(zhuǎn)移”幾乎是無縫的,所以我們并沒有使用“移植”這個詞。
嵌入式領(lǐng)域的應(yīng)用開發(fā)其實是普通軟件工程師就可以進(jìn)行的。