嵌入式系統(tǒng)是一種專用的計(jì)算機(jī)系統(tǒng),作為裝置或設(shè)備的一部分。通常,嵌入式系統(tǒng)是一個(gè)控制 程序在ROM中的嵌入式處理器控制板。而在我們身邊的手表、微波爐、錄像機(jī)、汽車等,都使用嵌入式西戎,他們都是帶有數(shù)字接口的設(shè)備。有些嵌入式系統(tǒng)還包含操作系統(tǒng),但大多數(shù)嵌入式系統(tǒng)都是由單個(gè)程序?qū)崿F(xiàn)整個(gè)控制邏輯。
嵌入式系統(tǒng)是軟件和硬件的綜合體,還可以涵蓋機(jī)械等附屬裝置。國內(nèi)普遍認(rèn)同的嵌入式系統(tǒng)定義為:以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),軟硬件可裁剪,適應(yīng)應(yīng)用系統(tǒng)對功能、可靠性、成本、體積、功耗等嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。
由上可知:嵌入式系統(tǒng)是由軟件和硬件組成的整體。
硬件部分可以分為嵌入式處理器和外部設(shè)備。處理器是整個(gè)系統(tǒng)的核心,負(fù)責(zé)處理所有的軟件程序以及外部設(shè)備的信號;外部設(shè)備在在不同的系統(tǒng)總有不同的選擇,比如在汽車上,外部設(shè)備主要是傳感器,用于采集數(shù)據(jù)。而在一部手機(jī)上,外部設(shè)備可以是鍵盤、液晶屏幕等。
一般來說,嵌入式硬件指邏輯電路、嵌入式處理器、微控制器、存儲系統(tǒng)和硬件技巧等。嵌入式硬件開發(fā)工程師主要編寫嵌入式系統(tǒng)硬件總體方案和詳細(xì)方案,要求理解嵌入式系統(tǒng)架構(gòu),有一定的C語言基礎(chǔ),熟悉ARM、PROTEL設(shè)計(jì)軟件,有四層板開發(fā)經(jīng)驗(yàn)。
國內(nèi)通常所說的嵌入式硬件指利用處理器開發(fā)外部設(shè)備方面。
軟件部分可以分成兩層,靠近硬件的是嵌入式操作系統(tǒng)。操作系統(tǒng)是軟硬件的接口,負(fù)責(zé)管理系統(tǒng)的所有軟件和硬件資源。操作系統(tǒng)還可以通過驅(qū)動程序與外部設(shè)備打交道。
上層的是應(yīng)用軟件,應(yīng)用軟件利用操作系統(tǒng)提供的功能開發(fā)針對某個(gè)程序,供用戶使用。用戶終是好應(yīng)用軟件打交道,例如在手機(jī)上編寫一條短信,用戶看到的是短信編寫軟件的界面,而看不到里面的操作系統(tǒng)以及嵌入式處理器等硬件。
嵌入式軟件就是說嵌入式在硬件中的操作系統(tǒng)和開發(fā)軟件它在產(chǎn)業(yè)的關(guān)聯(lián)關(guān)系體現(xiàn)為:芯片制造-嵌入式系統(tǒng)軟件-嵌入式電子設(shè)備開發(fā)、制造。
嵌入式軟件就是基于嵌入式系統(tǒng)設(shè)計(jì)的軟件,它也是計(jì)算機(jī)軟件的一種,同樣由程序及其文檔組成,可細(xì)分為系統(tǒng)軟件、支撐軟件、應(yīng)用軟件三類,是嵌入式系統(tǒng)的重要組成部分。
但國內(nèi)通常所說的嵌入式軟件只要指靠近硬件的系統(tǒng)軟件與支撐軟件部分。
嵌入式硬件需要學(xué)習(xí)的技能:
1.從硬件上,將基于CPU的處圍器件,整合到CPU芯片內(nèi)部。
2.從軟件上,就是在定制操作系統(tǒng)內(nèi)核里將應(yīng)用一并選入,編譯后講內(nèi)核下載到ROM中
3. 把軟件內(nèi)核或應(yīng)用文件系統(tǒng)等東西燒到嵌入式系統(tǒng)硬件平臺中的ROM中就實(shí)現(xiàn)了一個(gè)真正的“嵌入”。這就是嵌入式工程師應(yīng)該具備的技能。
嵌入式軟件需要學(xué)習(xí)的技能:
1.懂得C語言和一些簡單的匯編語言編程
2.能夠閱讀一般嵌入式系統(tǒng)的原理圖
3.至少熟悉一種嵌入式系統(tǒng)的軟件開發(fā)環(huán)境。
4.至少熟悉一種嵌入式軟件的開發(fā)過程,如:單片機(jī)系統(tǒng)、DSP系統(tǒng)、ARM系統(tǒng)或其它的一些潛入式系統(tǒng)。
5.理解常見的嵌入式操作系統(tǒng)的工作原理,理解線程、進(jìn)程、信號量、消息機(jī)制、同步與互拆、并發(fā)控制等軟件編程時(shí)用到的概念。
6.必要硬件基礎(chǔ)知識。
看完本文,對嵌入式硬件開發(fā)和嵌入式軟件開發(fā)應(yīng)該都有所了解了吧。不管你是選擇硬件開發(fā)還是軟件開發(fā),重要的堅(jiān)持,半途而廢一定不會有所成。