嵌入式開發(fā)需要的不僅僅是處理器
既能執(zhí)行所有任務(wù)又能得到單一開發(fā)環(huán)境支持的低成本單器件理想解決方案并不現(xiàn)實。更實際的做法是,至少標(biāo)準(zhǔn)化一些能夠滿足設(shè)計人員大多數(shù)需求的器件。由于通常關(guān)注的焦點都是單片機(jī)的處理器內(nèi)核,因此對單個處理器內(nèi)核進(jìn)行標(biāo)準(zhǔn)化就成了最接近單器件理想的選擇。使用標(biāo)準(zhǔn)內(nèi)核可使應(yīng)用在不同供應(yīng)商的器件之間輕松轉(zhuǎn)換,這種想法進(jìn)一步增強(qiáng)了內(nèi)核標(biāo)準(zhǔn)化的說服力。遺憾的是,選擇單片機(jī)所涉及的因素遠(yuǎn)不止一個處理器內(nèi)核這么簡單,必須要對整個開發(fā)生態(tài)環(huán)境有更全面的認(rèn)識。
本文引用地址:http://www.ex-cimer.com/article/112976.htm完整的開發(fā)平臺
根據(jù)有限的需求來標(biāo)準(zhǔn)化特定處理器內(nèi)核是一種不錯的策略,但幾乎所有單片機(jī)供應(yīng)商或處理器內(nèi)核開發(fā)商都提供一系列的處理器架構(gòu)。事實證明,沒有一個獨立架構(gòu)能滿足所有要求,特別是在考慮成本的情況下。事實上,根據(jù)對工程師的調(diào)查,開發(fā)工具在選擇標(biāo)準(zhǔn)中排名最高。芯片性能在選擇標(biāo)準(zhǔn)中排名第二。盡管處理器內(nèi)核是一個重要因素,但卻不是惟一的因素,有時甚至不是主要因素。成本因素在重要性上排位第三,它與器件性能不可兼顧,引發(fā)了傳統(tǒng)的成本與性能取舍之爭,這是任何單一器件或處理器內(nèi)核都無法調(diào)和的矛盾。
除軟件環(huán)境、性能及成本這些顯而易見的選擇標(biāo)準(zhǔn)外,外設(shè)、操作系統(tǒng)支持、可用代碼資源、硬件工具及功耗等其他一些標(biāo)準(zhǔn)緊隨其次,重要性不分先后。
問題的關(guān)鍵不是選擇某種單一器件或特定處理器內(nèi)核,而是在僅熟悉一個或少數(shù)幾個開發(fā)環(huán)境的條件限制下進(jìn)行選擇,從而縮短學(xué)習(xí)周期。擁有能夠發(fā)揮某種器件優(yōu)勢的工程技巧和能力是獲得優(yōu)化設(shè)計的主導(dǎo)因素,因此在某個特定開發(fā)生態(tài)系統(tǒng)中成為專家,將會獲得更佳的結(jié)果。
因此,標(biāo)準(zhǔn)化的重點應(yīng)關(guān)注完整的生態(tài)系統(tǒng),而不僅是處理器架構(gòu)。進(jìn)一步來說,開發(fā)人員應(yīng)考慮這個生態(tài)系統(tǒng)內(nèi)所支持的產(chǎn)品范圍,以及能否在不影響整個生態(tài)系統(tǒng)的情況下更換元器件,比如編譯器、器件或處理器內(nèi)核、外設(shè)、軟件庫等等。
無論是為應(yīng)用中的主流 32 位單片機(jī)編寫軟件,還是為執(zhí)行系統(tǒng)基本電源管理的小型 8 位外設(shè)單片機(jī)編寫軟件,開發(fā)環(huán)境都應(yīng)保持相同。如果當(dāng)前 16 位單片機(jī)需要升級為性能更高的 32 位單片機(jī),器件外設(shè)的差異不能太大。
選擇器件需要考慮的另一個因素是,出現(xiàn)新產(chǎn)品后能否重復(fù)使用現(xiàn)有代碼。約有 90% 的工程師會重復(fù)使用以前的代碼,其中大部分代碼均為內(nèi)部開發(fā)。大多數(shù)工程師使用 C 或 C++ 進(jìn)行嵌入式開發(fā),這使固件從 8 位升為 32 位或者從 32 位降至 16 位單片機(jī)的過程總是異常困難,如果最初開發(fā)代碼時并未考慮器件間的轉(zhuǎn)換,問題就更加突出。因此,包括庫、硬件工具和器件系列在內(nèi)的開發(fā)生態(tài)系統(tǒng)應(yīng)該盡量實現(xiàn)這種無縫轉(zhuǎn)換。
其他選擇標(biāo)準(zhǔn)包括是否提供與整個器件系列保持大體一致的優(yōu)質(zhì)文檔。是否提供單人解決同一系列所有器件問題的支持,并始終通過此人向設(shè)計團(tuán)隊傳遞客戶需求的變化,也是一個需要考慮的因素。
c++相關(guān)文章:c++教程
評論