如今的嵌入式開(kāi)發(fā)大熱是ARM+Linux,還有就是Android系統(tǒng)平臺(tái),但對(duì)于ARM的發(fā)展的前景來(lái)講,可謂是一片大好,翻開(kāi)各個(gè)公司的網(wǎng)站,在招聘里面嵌入式工程師占據(jù)了大半工程師的職位,但在找工作當(dāng)中,企業(yè)對(duì)于單純的嵌入式開(kāi)發(fā)核心技術(shù),ARM開(kāi)發(fā)來(lái)說(shuō)要多于其他相關(guān)技術(shù)。如單片機(jī)、fpga、DSP工程師等,當(dāng)然這是因?yàn)锳RM在微處理器方面占著領(lǐng)軍地位。
ARM是硬件還是軟件
很難說(shuō),ARM 是硬件,LINUX 是軟件。ARM 的硬件多半已經(jīng)模塊化了,實(shí)際中的 LINUX 的開(kāi)發(fā)工作更多,更耗時(shí)。從這方面說(shuō) ARM 應(yīng)該算是軟件了。 在找工作中更是這樣,就拿真實(shí)的例子來(lái)講,聯(lián)想里和 ARM 接近的是“BIOS 工程師”是軟件,MOTO里接近的是嵌入式LINUX工程師是軟件。而其他很多公司把嵌入式產(chǎn)品開(kāi)發(fā)歸為硬件。看到這些,你就會(huì)想其實(shí)關(guān)鍵的還是玩轉(zhuǎn)好自己的板子。
嵌入式開(kāi)發(fā)板的重要性
從個(gè)人經(jīng)驗(yàn)來(lái)講還是買(mǎi)現(xiàn)成的,在買(mǎi)板子上可以把注意力集中到軟件開(kāi)發(fā)上,這樣軟件開(kāi)發(fā)方面就不必太過(guò)擔(dān)心,對(duì)生育硬件方面可以嘗試一邊調(diào)試一邊寫(xiě)驅(qū)動(dòng)和程序,當(dāng)然在每次寫(xiě)驅(qū)動(dòng)前就先確認(rèn)硬件沒(méi)問(wèn)題,當(dāng)然如果自己做就可以更了解底層硬件,可以按照自己的要求來(lái)添加所需東西,我給大家?guī)c(diǎn)小建議:盡量拿到現(xiàn)成的板子后,多搜集其他板子的圈套資料,還有就是有一張沒(méi)問(wèn)題的原理圖,準(zhǔn)備好這些之后,就可以更好地進(jìn)行實(shí)操。
總結(jié)嵌入式開(kāi)發(fā)所需工具
1.RealView MDK
開(kāi)發(fā)工具源自德國(guó)Keil公司,被全球超過(guò)10萬(wàn)的嵌入式開(kāi)發(fā)工程師驗(yàn)證和使用,是arm公司目前推出的針對(duì)各種嵌入式處理器的軟件開(kāi)發(fā)工具。。
2.Xilinx Platform Studio
集成開(kāi)發(fā)環(huán)境包含很多嵌入式工具、IP、庫(kù)、向?qū)Ш驮O(shè)計(jì)生成器,能幫助快速創(chuàng)建定制的嵌入式平臺(tái)。
3.Nios II
IDE提供了一個(gè)統(tǒng)一的開(kāi)發(fā)平臺(tái),用于所有Nios II處理器系統(tǒng)。僅僅通過(guò)一臺(tái)PC機(jī)、一片Altera的FPGA以及一根JTAG下載電纜,軟件開(kāi)發(fā)人員就能夠往Nios II 處理器系統(tǒng)寫(xiě)入程序以及和Nios II處理器系統(tǒng)進(jìn)行通訊。
嵌入式入門(mén)得時(shí)間多長(zhǎng)?
嵌入式入門(mén)這個(gè)其實(shí)太寬泛,如果能從事應(yīng)用層開(kāi)發(fā),順帶了解一些操作系統(tǒng)底層的知識(shí),至少也得3個(gè)月以上,前提還是有老師手把手教,做嵌入式開(kāi)發(fā)重要的是要實(shí)踐。如何寫(xiě)應(yīng)用程序,如何移植,再到驅(qū)動(dòng),終在硬件上實(shí)現(xiàn)項(xiàng)目你想要的功能。通過(guò)實(shí)踐、整理、分析,本人將自己在學(xué)習(xí)嵌入式開(kāi)發(fā)過(guò)程中所總結(jié)的一些嵌入式法則、整理如下以供大家參考:
1、資源有限性法則,嵌入式計(jì)算不僅需要網(wǎng)絡(luò)快速、一致的計(jì)算,而且也要求系統(tǒng)能夠井然有序地將其執(zhí)行代碼和數(shù)據(jù),存儲(chǔ)在一個(gè)“ 共同” 的“ 狹小” 的空間內(nèi)。
2、魯棒性法則,嵌入式計(jì)算不僅要求系統(tǒng)迅速而有效的計(jì)算,而且還要求在某些計(jì)算單元出現(xiàn)錯(cuò)誤的時(shí)候,系統(tǒng)仍然能夠繼續(xù)正常運(yùn)行工作。
3、實(shí)時(shí)性法則,嵌入式系統(tǒng)的計(jì)算結(jié)果,不僅依賴(lài)于系統(tǒng)的邏輯運(yùn)算之正確性,而且也依賴(lài)于這個(gè)運(yùn)算結(jié)果的計(jì)算時(shí)間。
4、冗余度法則,在嵌入式系統(tǒng)具有足夠的冗余度之后,系統(tǒng)的“ 初始敏感性” 對(duì)于其“ 終計(jì)算結(jié)果” 的影響就變得微乎其微了。
5、結(jié)構(gòu)性法則,對(duì)于嵌入式系統(tǒng)而言,其結(jié)構(gòu)復(fù)雜性的趨勢(shì)表明: a 系統(tǒng)結(jié)構(gòu)越簡(jiǎn)單越有效(The [已過(guò)濾]st is the best) ; b 系統(tǒng)結(jié)構(gòu)越復(fù)雜越穩(wěn)定(More complex is more stable) 。
6、簡(jiǎn)約性法則,當(dāng)簡(jiǎn)約一個(gè)嵌入式系統(tǒng)時(shí),系統(tǒng)剩下的功能之間的互動(dòng)關(guān)系就會(huì)變得越來(lái)越強(qiáng); 當(dāng)系統(tǒng)的功能被簡(jiǎn)約之后,外來(lái)的入侵者之成功的概率就會(huì)變得越來(lái)越大。
7、 保育性法則,如果在嵌入式系統(tǒng)中要想保留某個(gè)系統(tǒng)功能, 是將所有的其他功能都看成是 “ 神圣不可侵 犯的 ” ; 系統(tǒng)的功能被移出(滅絕)或者生成(入 侵),一定會(huì)造成整體(群集)結(jié)構(gòu)及其動(dòng)態(tài) 性能上的重大轉(zhuǎn)變。
8、組織性法則,嵌入式互聯(lián)網(wǎng)(embedded Internet) 重要的往往不是網(wǎng)絡(luò)中個(gè)體設(shè)備的特質(zhì),而是存在于網(wǎng)絡(luò)中的整體秩序,即網(wǎng)絡(luò)秩序 。 在一個(gè)高冗余度網(wǎng)絡(luò)中,設(shè)備的單一作用已經(jīng)不再能夠構(gòu)成影響到系統(tǒng)整體性能的主要因素了,而起主要作用的是所有結(jié)點(diǎn)及其所構(gòu)成的連結(jié)特征。
9、網(wǎng)絡(luò)性法則,由一群設(shè)備相互作用的嵌入式Internet 結(jié)點(diǎn)所構(gòu)成的網(wǎng)絡(luò),其整體所表現(xiàn)出的性質(zhì),往往與個(gè)別結(jié)點(diǎn)的性質(zhì)沒(méi)有重大關(guān)系。
10、消息性法則,保證查尋消息:它具有嚴(yán)格的時(shí)間敏感或者基本常態(tài)系統(tǒng)要求,這類(lèi)消息要求一個(gè)來(lái)自系統(tǒng)的時(shí)間保 證。即一旦由這類(lèi)消息引起的活動(dòng)或者任務(wù)被執(zhí)行,那么在確定的時(shí)間間隔內(nèi),它們的時(shí)間限定性必將被系統(tǒng)所保證。效果消息:它具有典型的軟時(shí)間限定性,即其時(shí)間限定是由活動(dòng)或者任務(wù)本身的時(shí)間序列所規(guī)定,無(wú)需系統(tǒng)保證就能滿(mǎn)足其時(shí)間限定性的要求。
11、免疫性法則,嵌入式互聯(lián)網(wǎng)(embedded Internet) 的免疫系統(tǒng)應(yīng)當(dāng)是一個(gè)仿生命體機(jī)制,免疫功能是一個(gè)“前饋”系統(tǒng),所以要求系統(tǒng)應(yīng)具有預(yù)見(jiàn)能力,從而可以“以(小)毒攻(大)毒”。
12、融合性法則,嵌入式Internet 是一個(gè)復(fù)雜網(wǎng)絡(luò),將復(fù)雜網(wǎng)絡(luò)結(jié)構(gòu)用簡(jiǎn)單的“組成”來(lái)解析,讓系統(tǒng)可以由孤立的“組成”來(lái)詮釋“整體”,或者讓系統(tǒng)可以由“結(jié)點(diǎn)”來(lái)表達(dá)“全局”。
13、性?xún)r(jià)比法則,如果系統(tǒng)A 是系統(tǒng)B 地嵌入式系統(tǒng),即B(a) ,那么 系統(tǒng)A 的成本應(yīng)不超過(guò)系統(tǒng)B 成本的10 %,而系統(tǒng)B(a) 的成本應(yīng)大于系統(tǒng)A 和系統(tǒng)B 成本之和,系統(tǒng)B(a) 的性?xún)r(jià)比應(yīng)提高30 %。