版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、嵌入式系統(tǒng)介紹一 什么是嵌入式系統(tǒng)嵌入式系統(tǒng)一般指非 PC系統(tǒng),有計(jì)算機(jī)功能但又不稱之為計(jì)算機(jī)的設(shè)備或器材。它是以應(yīng)用為 中心,軟硬件可裁減的,適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗等綜合性嚴(yán)格要求的專用 計(jì)算機(jī)系統(tǒng)。簡(jiǎn)單地說(shuō),嵌入式系統(tǒng)集系統(tǒng)的應(yīng)用軟件與硬件于一體,類似于PC中BIOS的工作方式,具有軟件代碼小、高度自動(dòng)化、響應(yīng)速度快等特點(diǎn),特別適合于要求實(shí)時(shí)和多任務(wù)的體系。嵌入式系 統(tǒng)主要由嵌入式處理器、相關(guān)支撐硬件、嵌入式操作系統(tǒng)及應(yīng)用軟件系統(tǒng)等組成,它是可獨(dú)立工作的 “器件”。嵌入式系統(tǒng)幾乎包括了生活中的所有電器設(shè)備,如掌上PDA移動(dòng)計(jì)算設(shè)備、電視機(jī)頂盒、手機(jī)上網(wǎng)、數(shù)字電視、多媒
2、體、汽車、微波爐、數(shù)字相機(jī)、家庭自動(dòng)化系統(tǒng)、電梯、空調(diào)、安全系統(tǒng)、自 動(dòng)售貨機(jī)、蜂窩式電話、消費(fèi)電子設(shè)備、工業(yè)自動(dòng)化儀表與醫(yī)療儀器等。嵌入式系統(tǒng)的硬件部分,包括處理器 / ,微處理器、存儲(chǔ)器及外設(shè)器件和 I/O 端口、圖形控制器 等。嵌入式系統(tǒng)有別于一般的計(jì)算機(jī)處理系統(tǒng),它不具備像硬盤那樣大容量的存儲(chǔ)介質(zhì),而大多使用 EPROMEEPRO或閃存(Flash Memory)作為存儲(chǔ)介質(zhì)。軟件部分包括操作系統(tǒng)軟件 (要求實(shí)時(shí)和多任 務(wù)操作)和應(yīng)用程序編程。應(yīng)用程序控制著系統(tǒng)的運(yùn)作和行為;而操作系統(tǒng)控制著應(yīng)用程序編程與硬 件的交互作用。二 嵌入式處理器嵌入式系統(tǒng)的核心是嵌入式微處理器。嵌入式微處理器
3、一般具備 4個(gè)特點(diǎn): (1)對(duì)實(shí)時(shí)和多任務(wù) 有很強(qiáng)的支持能力, 能完成多任務(wù)并且有較短的中斷響應(yīng)時(shí)間, 從而使內(nèi)部的代碼和實(shí)時(shí)操作系統(tǒng)的 執(zhí)行時(shí)間減少到最低限度; (2) 具有功能很強(qiáng)的存儲(chǔ)區(qū)保護(hù)功能,這是由于嵌入式系統(tǒng)的軟件結(jié)構(gòu)已 模塊化,而為了避免在軟件模塊之間出現(xiàn)錯(cuò)誤的交叉作用,需要設(shè)計(jì)強(qiáng)大的存儲(chǔ)區(qū)保護(hù)功能,同時(shí)也 有利于軟件診斷; (3) 可擴(kuò)展的處理器結(jié)構(gòu), 以能迅速地?cái)U(kuò)展出滿足應(yīng)用的高性能的嵌入式微處理器; (4) 嵌入式微處理器的功耗必須很低,尤其是用于便攜式的無(wú)線及移動(dòng)的計(jì)算和通信設(shè)備中靠電池供 電的嵌入式系統(tǒng)更是如此,功耗只能為mW甚至卩W級(jí)。據(jù)不完全統(tǒng)計(jì), 目前全世界嵌入式
4、處理器的品種總量已經(jīng)超過(guò)1000種,流行的體系結(jié)構(gòu)有 30 多個(gè)系列。其中 8051 體系占多半,生產(chǎn)這種單片機(jī)的半導(dǎo)體廠家有 20多個(gè),共 350多種衍生產(chǎn)品,僅 Philips 就有近 100 種?,F(xiàn)在幾乎每個(gè)半導(dǎo)體制造商都生產(chǎn)嵌入式處理器,越來(lái)越多的公司有自己的 處理器設(shè)計(jì)部門。嵌入式處理器的尋址空間一般從64kB到16MB處理速度為0.12000MIPS,常用封裝 8144 個(gè)引腳。根據(jù)現(xiàn)狀,嵌入式計(jì)算機(jī)可分成下面幾類。(1) 嵌入式微處理器 (Embedded Microprocessor Unit, EMPU)嵌入式微處理器采用“增強(qiáng)型”通用微處理器。 由于嵌入式系統(tǒng)通常應(yīng)用于環(huán)境
5、比較惡劣的環(huán)境 中,因而嵌入式微處理器在工作溫度、電磁兼容性以及可靠性方面的要求較通用的標(biāo)準(zhǔn)微處理器高。 但是,嵌入式微處理器在功能方面與標(biāo)準(zhǔn)的微處理器基本上是一樣的。根據(jù)實(shí)際嵌入式應(yīng)用要求,將 嵌入式微處理器裝配在專門設(shè)計(jì)的主板上, 只保留和嵌入式應(yīng)用有關(guān)的主板功能, 這樣可以大幅度減 小系統(tǒng)的體積和功耗。和工業(yè)控制計(jì)算機(jī)相比,嵌入式微處理器組成的系統(tǒng)具有體積小、重量輕、成 本低、可靠性高的優(yōu)點(diǎn),但在其電路板上必須包括ROM RAM總線接口、各種外設(shè)等器件,從而降低了系統(tǒng)的可靠性,技術(shù)保密性也較差。由嵌入式微處理器及其存儲(chǔ)器、總線、外設(shè)等安裝在一塊電 路主板上構(gòu)成一個(gè)通常所說(shuō)的單板機(jī)系統(tǒng)。
6、嵌入式處理器目前主要有 Am186/88、 386EX、 SC-400、 Power PC 68000、MIPS ARM系列等。(2) 嵌入式微控制器 (Microcontroller Unit, MCU)嵌入式微控制器又稱單片機(jī), 它將整個(gè)計(jì)算機(jī)系統(tǒng)集成到一塊芯片中。 嵌入式微控制器一般以某 種微處理器內(nèi)核為核心,根據(jù)某些典型的應(yīng)用,在芯片內(nèi)部集成了ROM/EPROMRAM總線、總線邏輯、定時(shí)/計(jì)數(shù)器、看門狗、I/O、串行口、脈寬調(diào)制輸岀、 A/D、D/A、Flash RAM EEPROI等各種必 要功能部件和外設(shè)。 為適應(yīng)不同的應(yīng)用需求, 對(duì)功能的設(shè)置和外設(shè)的配置進(jìn)行必要的修改和裁減定制,
7、 使得一個(gè)系列的單片機(jī)具有多種衍生產(chǎn)品, 每種衍生產(chǎn)品的處理器內(nèi)核都相同, 不同的是存儲(chǔ)器和外 設(shè)的配置及功能的設(shè)置。 這樣可以使單片機(jī)最大限度地和應(yīng)用需求相匹配, 從而減少整個(gè)系統(tǒng)的功耗 和成本。和嵌入式微處理器相比,微控制器的單片化使應(yīng)用系統(tǒng)的體積大大減小,從而使功耗和成本 大幅度下降、 可靠性提高。 由于嵌入式微控制器目前在產(chǎn)品的品種和數(shù)量上是所有種類嵌入式處理器 中最多的, 而且上述諸多優(yōu)點(diǎn)決定了微控制器是嵌入式系統(tǒng)應(yīng)用的主流。 微控制器的片上外設(shè)資源一 般比較豐富,適合于控制,因此稱為微控制器。通常,嵌入式微處理器可分為通用和半通用兩類,比 較有代表性的通用系列包括 8051、P51
8、XA MCS-251 MCS-96/196/296、C166/167、68300等。而比較 有代表性的半通用系列,如支持 USB接口的MCUBXC930/931、C540 C541;支持I2C、CAN總線、LCD 等的眾多專用MCU和兼容系列。目前MCU勺占嵌入式系統(tǒng)市場(chǎng)份額的 70%(3) 嵌入式 DSP處理器(Embedded Digital Signal Processor, EDSP)在數(shù)字信號(hào)處理應(yīng)用中,各種數(shù)字信號(hào)處理算法相當(dāng)復(fù)雜,這些算法的復(fù)雜度可能是O( nm)的,甚至是NP的,一般結(jié)構(gòu)的處理器無(wú)法實(shí)時(shí)的完成這些運(yùn)算。由于DSP處理器對(duì)系統(tǒng)結(jié)構(gòu)和指令進(jìn)行了特殊設(shè)計(jì),使其適合于實(shí)
9、時(shí)地進(jìn)行數(shù)字信號(hào)處理。在數(shù)字濾波、FFT、譜分析等方面,DSP算法正大量進(jìn)入嵌入式領(lǐng)域,DSP應(yīng)用正從在通用單片機(jī)中以普通指令實(shí)現(xiàn)DSP功能,過(guò)渡到采用嵌入式DSP處理器。嵌入式DSP處理器有兩類:(1)DSP處理器經(jīng)過(guò)單片化、EMC改造、增加片上外設(shè)成為嵌入式 DSP處理器,TI的TMS320C2000/C500等屬于此范疇;(2)在通用單片機(jī)或 SOC中增加DSP協(xié)處理器, 例如In tel的MCS-296和Infin eo n(Sieme ns) 的TriCore。另外,在有關(guān)智能方面的應(yīng)用中,也需要 嵌入式DPS處理器,例如各種帶有智能邏輯的消費(fèi)類產(chǎn)品,生物信息識(shí)別終端,帶有加解密算法
10、的鍵 盤,ADSL接入、實(shí)時(shí)語(yǔ)音壓解系統(tǒng),虛擬現(xiàn)實(shí)顯示等。這類智能化算法一般都是運(yùn)算量較大,特別 是向量運(yùn)算、指針線性尋址等較多,而這些正是DSP處理器的優(yōu)勢(shì)所在。嵌入式 DSP處理器比較有代表性的產(chǎn)品是TI的TMS320系列和Motorola的DSP56000系列。TMS320系列處理器包括用于控制的 C2000系列、移動(dòng)通信的C5000系列,以及性能更高的 C6000和C8000系列。DSP56000目前已經(jīng)發(fā)展 成為DSP56000 DSP56100 DSP5620C和DSP56300等幾個(gè)不同系列的處理器。另外, Philips 公司最 近也推岀了基于可重置嵌入式 DSP結(jié)構(gòu),采用低成
11、本、低功耗技術(shù)制造的R. E. A. L DSP 處理器,其特點(diǎn)是具備雙 Harvard 結(jié)構(gòu)和雙乘 /累加單元,應(yīng)用目標(biāo)是大批量消費(fèi)類產(chǎn)品。(4) 嵌入式片上系統(tǒng) (System On Chip, SOC)隨著 EDI 的推廣和 VLSI 設(shè)計(jì)的普及化,以及半導(dǎo)體工藝的迅速發(fā)展,可以在一塊硅片上實(shí)現(xiàn)一 個(gè)更為復(fù)雜的系統(tǒng),這就產(chǎn)生了 SOC技術(shù)。各種通用處理器內(nèi)核將作為SO®計(jì)公司的標(biāo)準(zhǔn)庫(kù),和其他許多嵌入式系統(tǒng)外設(shè)一樣,成為 VLSI 設(shè)計(jì)中一種標(biāo)準(zhǔn)的器件,用標(biāo)準(zhǔn)的 VHDL、Verlog 等硬件語(yǔ)言 描述,存儲(chǔ)在器件庫(kù)中。用戶只需定義岀其整個(gè)應(yīng)用系統(tǒng),仿真通過(guò)后就可以將設(shè)計(jì)圖交給半
12、導(dǎo)體工 廠制作樣品。 這樣除某些無(wú)法集成的器件以外, 整個(gè)嵌入式系統(tǒng)大部分均可集成到一塊或幾塊芯片中 去,應(yīng)用系統(tǒng)電路板將變得很簡(jiǎn)單,對(duì)于減小整個(gè)應(yīng)用系統(tǒng)體積和功耗、提高可靠性非常有利。SOC可分為通用和專用兩類,通用 SOC如Infineon(Siemens)的TriCore、Motorola的M-Core,以及某些 ARM系列器件,女口 Echelon和Motorola聯(lián)合研制的Neuron芯片等;專用SOQ-般專用于某個(gè)或某類 系統(tǒng)中,如Philips 的Smart XA,它將XA單片機(jī)內(nèi)核和支持超過(guò) 2048位復(fù)雜RSA算法的CCU單元 制作在一塊硅片上,形成一個(gè)可加載Java或C語(yǔ)言
13、的專用SOC可用于互聯(lián)網(wǎng)安全方面。三 嵌入式操作系統(tǒng)嵌入式操作系統(tǒng)是一種支持嵌入式系統(tǒng)應(yīng)用的操作系統(tǒng)軟件,它是嵌入式系統(tǒng) (包括硬、軟件系 統(tǒng))極為重要的組成部分,通常包括與硬件相關(guān)的底層驅(qū)動(dòng)軟件、系統(tǒng)內(nèi)核、設(shè)備驅(qū)動(dòng)接口、通信協(xié) 議、圖形界面、標(biāo)準(zhǔn)化瀏覽器等 Browser。嵌入式操作系統(tǒng)具有通用操作系統(tǒng)的基本特點(diǎn),如能夠有 效管理越來(lái)越復(fù)雜的系統(tǒng)資源; 能夠把硬件虛擬化, 使得開發(fā)人員從繁忙的驅(qū)動(dòng)程序移植和維護(hù)中解 脫岀來(lái);能夠提供庫(kù)函數(shù)、驅(qū)動(dòng)程序、工具集以及應(yīng)用程序 。與通用操作系統(tǒng)相比較,嵌入式操作 系統(tǒng)在系統(tǒng)實(shí)時(shí)高效性、 硬件的相關(guān)依賴性、 軟件固態(tài)化以及應(yīng)用的專用性等方面具有較為突岀
14、的特 點(diǎn)。1. 嵌入式操作系統(tǒng)的種類一般情況下,嵌入式操作系統(tǒng)可以分為兩類,一類是面向控制、通信等領(lǐng)域的實(shí)時(shí)操作系統(tǒng),如WindRiver公司的VxWorks ISI的pSOS QNX系統(tǒng)軟件公司的 QNX ATI的Nucleus等;另一類是面 向消費(fèi)電子產(chǎn)品的非實(shí)時(shí)操作系統(tǒng),這類產(chǎn)品包括個(gè)人數(shù)字助理 (PDA)、移動(dòng)電話、機(jī)頂盒、電子書、 WebPhone等。a. 非實(shí)時(shí)操作系統(tǒng)早期的嵌入式系統(tǒng)中沒有操作系統(tǒng)的概念,程序員編寫嵌入式程序通常直接面對(duì)裸機(jī)及裸設(shè)備。 在這種情況下,通常把嵌入式程序分成兩部分,即前臺(tái)程序和后臺(tái)程序。前臺(tái)程序通過(guò)中段來(lái)處理事 件,其結(jié)構(gòu)一般為無(wú)限循環(huán);后臺(tái)程序則掌管
15、整個(gè)嵌入式系統(tǒng)軟、硬件資源的分配、管理以及任務(wù)的 調(diào)度,是一個(gè)系統(tǒng)管理調(diào)度程序。這就是通常所說(shuō)的前后臺(tái)系統(tǒng)。一般情況下,后臺(tái)程序也叫任務(wù)級(jí) 程序,前臺(tái)程序也叫事件處理級(jí)程序。在程序運(yùn)行時(shí),后臺(tái)程序檢查每個(gè)任務(wù)是否具備運(yùn)行條件,通 過(guò)一定的調(diào)度算法來(lái)完成相應(yīng)的操作。 對(duì)于實(shí)時(shí)性要求特別嚴(yán)格的操作通常由中斷來(lái)完成, 僅在中斷 服務(wù)程序中標(biāo)記事件的發(fā)生,不再做任何工作就退出中斷,經(jīng)過(guò)后臺(tái)程序的調(diào)度,轉(zhuǎn)由前臺(tái)程序完成 事件的處理,這樣就不會(huì)造成在中斷服務(wù)程序中處 理費(fèi)時(shí)的事件而影響后續(xù)和其他中斷。實(shí)際上, 前后臺(tái)系統(tǒng)的實(shí)時(shí)性比預(yù)計(jì)的要差。 這是因?yàn)榍昂笈_(tái)系統(tǒng)認(rèn)為所有的任務(wù)具有相同的優(yōu) 先級(jí)別,即是平等
16、的,而且任務(wù)的執(zhí)行又是通過(guò) FIFO 隊(duì)列排隊(duì),因而對(duì)那些實(shí)時(shí)性要求高的任務(wù)不 可能立刻得到處理。另外,由于前臺(tái)程序是一個(gè)無(wú)限循環(huán)的結(jié)構(gòu),一旦在這個(gè)循環(huán)體中正在處理的任 務(wù)崩潰,使得整個(gè)任務(wù)隊(duì)列中的其他任務(wù)得不到機(jī)會(huì)被處理,從而造成整個(gè)系統(tǒng)的崩潰。由于這類系 統(tǒng)結(jié)構(gòu)簡(jiǎn)單,幾乎不需要 RAM/ROI的額外開銷,因而在簡(jiǎn)單的嵌入式應(yīng)用被廣泛使用。b. 實(shí)時(shí)操作系統(tǒng)實(shí)時(shí)系統(tǒng)是指能在確定的時(shí)間內(nèi)執(zhí)行其功能并對(duì)外部的異步事件做出響應(yīng)的計(jì)算機(jī)系統(tǒng)。其操作的正確性不僅依賴于邏輯設(shè)計(jì)的正確程度, 而且與這些操作進(jìn)行的時(shí)間有關(guān)。 “在確定的時(shí)間內(nèi)”是 該定義的核心。也就是說(shuō),實(shí)時(shí)系統(tǒng)是對(duì)響應(yīng)時(shí)間有嚴(yán)格要求的。實(shí)
17、時(shí)系統(tǒng)對(duì)邏輯和時(shí)序的要求非常嚴(yán)格, 如果邏輯和時(shí)序出現(xiàn)偏差將會(huì)引起嚴(yán)重后果。 實(shí)時(shí)系統(tǒng) 有兩種類型:軟實(shí)時(shí)系統(tǒng)和硬實(shí)時(shí)系統(tǒng)。軟實(shí)時(shí)系統(tǒng)僅要求事件響應(yīng)是實(shí)時(shí)的,并不要求限定某一任 務(wù)必須在多長(zhǎng)時(shí)間內(nèi)完成;而在硬實(shí)時(shí)系統(tǒng)中,不僅要求任務(wù)響應(yīng)要實(shí)時(shí),而且要求在規(guī)定的時(shí)間內(nèi) 完成事件的處理。通常,大多數(shù)實(shí)時(shí)系統(tǒng)是兩者的結(jié)合。實(shí)時(shí)應(yīng)用軟件的設(shè)計(jì)一般比非實(shí)時(shí)應(yīng)用軟件的設(shè)計(jì)困難。實(shí)時(shí)系統(tǒng)的技術(shù)關(guān)鍵是如何保證系統(tǒng)的實(shí)時(shí)性。實(shí)時(shí)多任務(wù)操作系統(tǒng)是指具有實(shí)時(shí)性、 能支持實(shí)時(shí)控制系統(tǒng)工作的操作系統(tǒng)。 其首要任務(wù)是調(diào)度 一切可利用的資源完成實(shí)時(shí)控制任務(wù), 其次才著眼于提高計(jì)算機(jī)系統(tǒng)的使用效率, 重要特點(diǎn)是要滿足 對(duì)時(shí)間
18、的限制和要求。實(shí)時(shí)操作系統(tǒng)具有如下功能:任務(wù)管理 ( 多任務(wù)和基于優(yōu)先級(jí)的任務(wù)調(diào)度 ) 、任 務(wù)間同步和通信(信號(hào)量和郵箱等)、存儲(chǔ)器優(yōu)化管理(含ROM勺管理)、實(shí)時(shí)時(shí)鐘服務(wù)、中斷管理服務(wù)。 實(shí)時(shí)操作系統(tǒng)具有如下特點(diǎn):規(guī)模小,中斷被屏蔽的時(shí)間很短,中斷處理時(shí)間短,任務(wù)切換很 快。實(shí)時(shí)操作系統(tǒng)可分為可搶占型和不可搶占型兩類。 對(duì)于基于優(yōu)先級(jí)勺系統(tǒng)而言, 可搶占型實(shí)時(shí)操 作系統(tǒng)是指內(nèi)核可以搶占正在運(yùn)行任務(wù)的CPU使用權(quán)并將使用權(quán)交給進(jìn)入就緒態(tài)的優(yōu)先級(jí)更高的任務(wù),是內(nèi)核搶了 CPU讓別的任務(wù)運(yùn)行。不可搶占型實(shí)時(shí)操作系統(tǒng)使用某種算法并決定讓某個(gè)任務(wù)運(yùn)行 后,就把CPU的控制權(quán)完全交給了該任務(wù),直到它主
19、動(dòng)將 CPU空制權(quán)還回來(lái)。中斷由中斷服務(wù)程序來(lái) 處理,可以激活一個(gè)休眠態(tài)的任務(wù),使之進(jìn)入就緒態(tài);而這個(gè)進(jìn)入就緒態(tài)的任務(wù)還不能運(yùn)行,一直要 等到當(dāng)前運(yùn)行的任務(wù)主動(dòng)交岀 CPU的控制權(quán)。使用這種實(shí)時(shí)操作系統(tǒng)的實(shí)時(shí)性比不使用實(shí)時(shí)操作系統(tǒng) 的系統(tǒng)性能好, 其實(shí)時(shí)性取決于最長(zhǎng)任務(wù)的執(zhí)行時(shí)間。 不可搶占型實(shí)時(shí)操作系統(tǒng)的缺點(diǎn)也恰恰是這一 點(diǎn),如果最長(zhǎng)任務(wù)的執(zhí)行時(shí)間不能確定,系統(tǒng)的實(shí)時(shí)性就不能確定??蓳屨夹蛯?shí)時(shí)操作系統(tǒng)的實(shí)時(shí)性好, 優(yōu)先級(jí)高的任務(wù)只要具備了運(yùn)行的條件, 或者說(shuō)進(jìn)入了就緒 態(tài),就可以立即運(yùn)行。也就是說(shuō),除了優(yōu)先級(jí)最高的任務(wù),其他任務(wù)在運(yùn)行過(guò)程中都可能隨時(shí)被比它 優(yōu)先級(jí)高的任務(wù)中斷,讓后者運(yùn)行。通
20、過(guò)這種方式的任務(wù)調(diào)度保證了系統(tǒng)的實(shí)時(shí)性,但是,如果任務(wù) 之間搶占CPU空制權(quán)處理不好,會(huì)產(chǎn)生系統(tǒng)崩潰、死機(jī)等嚴(yán)重后果。2. 嵌入式操作系統(tǒng)的發(fā)展嵌入式操作系統(tǒng)伴隨著嵌入式系統(tǒng)的發(fā)展經(jīng)歷了 4 個(gè)比較明顯的階段。第一階段是無(wú)操作系統(tǒng)的嵌入算法階段, 是以單芯片為核心的可編程控制器形式的系統(tǒng), 同時(shí)具 有與監(jiān)測(cè)、 伺服、指示設(shè)備相配合的功能。 這種系統(tǒng)大部分應(yīng)用于一些專業(yè)性極強(qiáng)的工業(yè)控制系統(tǒng)中, 一般沒有操作系統(tǒng)的支持,通過(guò)匯編語(yǔ)言編程對(duì)系統(tǒng)進(jìn)行直接控制,運(yùn)行結(jié)束后清除內(nèi)存。這一階段 系統(tǒng)的主要特點(diǎn)是: 系統(tǒng)結(jié)構(gòu)和功能都相對(duì)單一, 處理效率較低, 存儲(chǔ)容量較小, 幾乎沒有用戶接口。 由于這種嵌入式
21、系統(tǒng)使用簡(jiǎn)便、價(jià)格很低,以前在國(guó)內(nèi)工業(yè)領(lǐng)域應(yīng)用較為普遍,但是已經(jīng)遠(yuǎn)遠(yuǎn)不能適 應(yīng)高效的、需要大容量存儲(chǔ)介質(zhì)的現(xiàn)代化工業(yè)控制和新興的信息家電等領(lǐng)域的需求。第二階段是以嵌入式CPU為基礎(chǔ)、以簡(jiǎn)單操作系統(tǒng)為核心的嵌入式系統(tǒng)。這一階段系統(tǒng)的主要特 點(diǎn)是:CPU種類繁多,通用性比較差;系統(tǒng)開銷小,效率高;一般配備系統(tǒng)仿真器,操作系統(tǒng)具有一定的兼容性和擴(kuò)展性;應(yīng)用軟件較專業(yè),用戶界面不夠友好;系統(tǒng)主要用來(lái)控制系統(tǒng)負(fù)載以及監(jiān)控 應(yīng)用程序運(yùn)行。第三階段是通用的嵌入式實(shí)時(shí)操作系統(tǒng)階段, 是以嵌入式操作系統(tǒng)為核心的嵌入式系統(tǒng)。 這一階 段系統(tǒng)的主要特點(diǎn)是:嵌入式操作系統(tǒng)能運(yùn)行于各種不同類型的微處理器上,兼容性好;操
22、作系統(tǒng)內(nèi) 核精小、效率高,并且具有高度的模塊化和擴(kuò)展性;具備文件和目錄管理、設(shè)備支持、多任務(wù)、網(wǎng)絡(luò) 支持、圖形窗口以及用戶界面等功能;具有大量的應(yīng)用程序接口 (API) ,開發(fā)應(yīng)用程序簡(jiǎn)單;嵌入式 應(yīng)用軟件豐富。第四階段是以基于 Internet 為標(biāo)志的嵌入式系統(tǒng),這是一個(gè)正在迅速發(fā)展的階段。目前大多數(shù) 嵌入式系統(tǒng)還孤立于 Internet 之外,但隨著 Internet 的發(fā)展以及 Internet 技術(shù)與信息家電、工業(yè) 控制技術(shù)等結(jié)合日益密切,嵌入式設(shè)備與 Internet 的結(jié)合將代表著嵌入式技術(shù)的真正未來(lái)。3. 使用實(shí)時(shí)操作系統(tǒng)的必要性嵌入式實(shí)時(shí)操作系統(tǒng)在目前的嵌入式應(yīng)用中用得越來(lái)越
23、廣泛, 尤其在功能復(fù)雜、 系統(tǒng)龐大的應(yīng)用 中顯得愈來(lái)愈重要。首先,嵌入式實(shí)時(shí)操作系統(tǒng)提高了系統(tǒng)的可靠性。在控制系統(tǒng)中,出于安全方面的考慮,要求系 統(tǒng)起碼不能崩潰,而且還要有自愈能力。不僅要求在硬件設(shè)計(jì)方面提高系統(tǒng)的可靠性和抗干擾性,而 且也應(yīng)在軟件設(shè)計(jì)方面提高系統(tǒng)的抗干擾性, 盡可能地減少安全漏洞和不可靠的隱患。 長(zhǎng)期以來(lái)的前 后臺(tái)系統(tǒng)軟件設(shè)計(jì)在遇到強(qiáng)干擾時(shí),使得運(yùn)行的程序產(chǎn)生異常、出錯(cuò)、跑飛,甚至死循環(huán),造成了系 統(tǒng)的崩潰。而實(shí)時(shí)操作系統(tǒng)管理的系統(tǒng),這種干擾可能只是引起若干進(jìn)程中的一個(gè)被破壞,可以通過(guò) 系統(tǒng)運(yùn)行的系統(tǒng)監(jiān)控進(jìn)程對(duì)其進(jìn)行修復(fù)。通常情況下,這個(gè)系統(tǒng)監(jiān)視進(jìn)程用來(lái)監(jiān)視各進(jìn)程運(yùn)行狀況,
24、遇到異常情況時(shí)采取一些利于系統(tǒng)穩(wěn)定可靠的措施,如把有問(wèn)題的任務(wù)清除掉。其次,提高了開發(fā)效率,縮短了開發(fā)周期。在嵌入式實(shí)時(shí)操作系統(tǒng)環(huán)境下,開發(fā)一個(gè)復(fù)雜的應(yīng)用 程序,通??梢园凑哲浖こ讨械慕怦钤瓌t將整個(gè)程序分解為多個(gè)任務(wù)模塊。每個(gè)任務(wù)模塊的調(diào)試、 修改幾乎不影響其他模塊。商業(yè)軟件一般都提供了良好的多任務(wù)調(diào)試環(huán)境。再次,嵌入式實(shí)時(shí)操作系統(tǒng)充分發(fā)揮了 32位CPU的多任務(wù)潛力。32位CPU比8 16位CPU快, 另外它本來(lái)是為運(yùn)行多用戶、多任務(wù)操作系統(tǒng)而設(shè)計(jì)的,特別適于運(yùn)行多任務(wù)實(shí)時(shí)系統(tǒng)。32位CPU采用利于提高系統(tǒng)可靠性和穩(wěn)定性的設(shè)計(jì),使其更容易做到不崩潰。例如,CPU運(yùn)行狀態(tài)分為系統(tǒng)態(tài)和用戶態(tài)。
25、將系統(tǒng)堆棧和用戶堆棧分開,以及實(shí)時(shí)地給岀CPU的運(yùn)行狀態(tài)等,允許用戶在系統(tǒng)設(shè)計(jì)中從硬件和軟件兩方面對(duì)實(shí)時(shí)內(nèi)核的運(yùn)行實(shí)施保護(hù)。如果還是采用以前的前后臺(tái)方式,則無(wú)法發(fā)揮 32位CPU的優(yōu)勢(shì)。從某種意義上說(shuō),沒有操作系統(tǒng)的計(jì)算機(jī) (裸機(jī))是沒有用的。在嵌入式應(yīng)用中,只有把 CPU嵌入到系統(tǒng)中,同時(shí)又把操作系統(tǒng)嵌入進(jìn)去,才是真正的計(jì)算機(jī)嵌入式應(yīng)用。4. 實(shí)時(shí)操作系統(tǒng)的優(yōu)缺點(diǎn)在嵌入式實(shí)時(shí)操作系統(tǒng)環(huán)境下開發(fā)實(shí)時(shí)應(yīng)用程序使程序的設(shè)計(jì)和擴(kuò)展變得容易,不需要大的改動(dòng)就可以增加新的功能。 通過(guò)將應(yīng)用程序分割成若干獨(dú)立的任務(wù)模塊, 使應(yīng)用程序的設(shè)計(jì)過(guò)程大為簡(jiǎn)化; 而且對(duì)實(shí)時(shí)性要求苛刻的事件都得到了快速、可靠的處理。
26、通過(guò)有效的系統(tǒng)服務(wù),嵌入式實(shí)時(shí)操作系 統(tǒng)使得系統(tǒng)資源得到更好的利用。但是,使用嵌入式實(shí)時(shí)操作系統(tǒng)還需要額外的ROM/RA開銷,25%勺CPU額外負(fù)荷,以及內(nèi)核的費(fèi)用。嵌入式英語(yǔ)詞匯ASIC (專用集成電路)Application-Specific Integrated Circuit. A piece of custom-designed hardware in a chip. 專用集成電路。一個(gè)在一個(gè)芯片上定制設(shè)計(jì)的硬件。address bus (地址總線)A set of electrical lines connected to the processor and all of the
27、peripherals withwhich itcommunicates. The address bus is used by the processor to select aspecific memorylocation or register within a particular peripheral. If the address bus contains n electrical lines, the processor can uni quely address up to 2切 such locati ons.一個(gè)連接處理器與所有外設(shè)的, 用來(lái)通訊的電子線路集。 地址總線被處
28、理器用來(lái)選擇在特定外設(shè) 中的存儲(chǔ)器地址或寄存器。如果地址總線有n條電子線路,處理器能唯一尋址高達(dá)2切的地址空間。BSP (板卡支持包)See board support package.board support package (板卡支持包)Part of a software package that is processor or platform-dependent. Typically,samplesource code for the board support package is provided by the package developer. The sample cod
29、e must be modified as necessary, compiled, and linked with the remainder of the software package.軟件包的具有平臺(tái)依賴性的那一部分。典型地,板卡支持包的樣例源程序由包開發(fā)者提供。樣例 源程序必須能在需要時(shí)被修改、編譯并與軟件包的剩下的部分連接起來(lái)。cross-compiler (交叉編譯器)A compiler that runs on a different platform than the one for which it produces object code. A cross-compi
30、ler runs on a host computer and produces object code for the target.一個(gè)運(yùn)行在不同的平臺(tái)上的編譯器, 其中之一能產(chǎn)生目標(biāo)代碼。 交叉編譯器在主機(jī)上運(yùn)行并且產(chǎn) 生目標(biāo)機(jī)的目標(biāo)代碼。DMA(直接內(nèi)存訪問(wèn))Direct Memory Access. A technique for transferring data directly between two peripherals (usually memory and an I/O device) with only minimal interventi on by the pro
31、cessor. DMA transfers are managed by a third peripheral called a DMA controller.直接內(nèi)存訪問(wèn)。一種直接在兩個(gè)外設(shè)(通常是內(nèi)存和 I/O 設(shè)備)之間進(jìn)行數(shù)據(jù)傳輸?shù)募夹g(shù),它只 要處理器最少的介入。DMA專輸由叫DMA空制器的第三方外設(shè)進(jìn)行管理。DRA(動(dòng)態(tài)隨機(jī)訪問(wèn)存儲(chǔ)器)Dynamic Random-Access Memory. A type of RAM that maintains its contents only as long as the data stored in the device is refre
32、shed at regular intervals.The refresh cycles are usually performed by a peripheral called a DRAM controller.動(dòng)態(tài)隨機(jī)訪問(wèn)存儲(chǔ)器。一種 RAM存儲(chǔ)在其設(shè)備中的數(shù)據(jù)被定期刷新時(shí)才能保存它的內(nèi)容。刷新 周期一般由一個(gè)叫DRAM空制器的外設(shè)完成。EEPRO M電可擦的,可編程的只讀存儲(chǔ)器)Electrically Erasable, Programmable Read-Only Memory. (Pronounced"Double-E"-PROM.) A type of RO
33、M that can be erased electronically.電可擦的,可編程的只讀存儲(chǔ)器。一種ROM能被電擦除。EPROM可擦的,可編程的只讀存儲(chǔ)器)Erasable, Programmable Read-Only Memory. A type of ROM that can be erased by exposing it to ultraviolet light.Once erased, an EPROMcan be reprogrammed with the help of a deviceprogrammer.一種可用紫外線擦除的存儲(chǔ)器。一次擦除后,EPROI可以在設(shè)備編程
34、器的幫助下被重編程。embedded system (嵌入式系統(tǒng))A combination of computer hardware and software, and perhaps additional mechanical or other parts, designed to perform a dedicated function. In some cases, embedded systems are part of a larger system or product, as is the case of an anti-lock braking system in a car
35、. Contrast with general-purpose computer.計(jì)算機(jī)硬件和軟件的結(jié)合體,或許還加上機(jī)械等其他部分,被設(shè)計(jì)來(lái)完成專門的功能。在一些情 況下,嵌入式系統(tǒng)是一個(gè)大的系統(tǒng)或產(chǎn)品的一部分,就象汽車上的防抱死裝置。與通用計(jì)算機(jī)相對(duì)。Emulator( 仿真器 )Short for In-Circuit Emulator (ICE). A debugging tool that takes the placeof-emulates-the processor on your target board. Emulators frequently incorporate a
36、special "bond-out" version of the target processor that allows you to observe and record its internal state as your program is executing. 在線仿真器的簡(jiǎn)寫。一個(gè)在你的目標(biāo)板上放置仿真的處理器的調(diào)試 工具。仿真器經(jīng)常和一目標(biāo)處理器的一種“外合”版本合在一起, 這個(gè)版本的的處理器充許你運(yùn)行程 序時(shí)觀察和記錄它的內(nèi)部狀態(tài)。Executable (可執(zhí)行的)A file containing object code that is ready f
37、or execution on the target. All that remains is to place the object code into a ROM or download it via a debugging tool.一個(gè)包含準(zhǔn)備在目標(biāo)機(jī)上運(yùn)行的目標(biāo)代碼的文件。放置目標(biāo)代碼到ROM中或通過(guò)調(diào)試工具下載。Firmware (固件)Embeddedsoftware that is stored as object code within a ROM .This name is most commonamong the users of digital signal proce
38、ssors.是作為目標(biāo)代碼存貯在ROM中的嵌入式軟件。這個(gè)名字在數(shù)字信號(hào)處理器的用戶中相當(dāng)流行。flash memory (閃存)A RAM-ROM hybrid that can be erased and rewritten under software control. Such devices are divided into blocks, called sectors, that are individually-erasable. Flash memoryis common in systems that require nonvolatile data storage at v
39、ery low cost. In some cases, a large fash memory may even be used instead of a disk-drive.一種RAM-RO的混血兒,它能在軟件的控制下被擦除和重寫。一些設(shè)備被分成叫段組的塊,能個(gè) 別地可擦。 閃存用在需要很便宜的非易失數(shù)據(jù)存貯器的地方, 一個(gè)大容量的閃存甚至被用作磁盤驅(qū)動(dòng) 器。intertask communication (進(jìn)程間通訊)A mechanism used by tasks and interrupt service routines to share information and syn
40、chronize their access to shared resources. The most commonbuilding blocks of intertask communication are semaphores and mutexes.一種被用來(lái)在任務(wù)和中斷服務(wù)程序之間共享信息和同步它們對(duì)共享資源訪問(wèn)的機(jī)制。大部分進(jìn)程間通訊的建立的基石是信號(hào)燈和互斥。Kernel (內(nèi)核)An essential part of any multitasking operating system, the kernel contains just the scheduler and con
41、text-switch routine.任何多任務(wù)操作系統(tǒng)的本質(zhì)部分,內(nèi)核僅僅包含調(diào)度程序和上下文切換進(jìn)程Linker (連接程序)A software development tool that accepts one or more object files as input and outputs a relocatable program. The linker is thus run after all of the source files have been compiled or assembled.一種能把一個(gè)或更多目標(biāo)文件組合成可輸入和輸出的可重定位程序的開發(fā)工具。 連接程
42、序在所有 的源文件都被編譯或匯編之后運(yùn)行。Locator (定位程序)A software development tool that assigns physical addresses to the relocatable program produced by the linker. This is the last step in the preparation of software for execution by an embedded system and the resulting file is called an executable. In some cases, th
43、e locator"s function may be hidden with in the linker.一種分配物理地址給連接程序處理過(guò)的可重定位程序的軟件開發(fā)工具。 這是準(zhǔn)備一個(gè)軟件在嵌入 式系統(tǒng)中運(yùn)行的最后一步,并且結(jié)果文件叫做可執(zhí)行的。在一些情況下,定位程序功能隱藏在連接程 序中。logic analyzer (邏輯分析儀)A hardware debugging tool that can be used to capture the logic levels (0 or 1) of dozens, or even hundreds, of electrical sign
44、als in real-time. Logic analyzers can be quite helpful for debugging hardware problems and complex processor-peripheral interactions.一種硬件調(diào)試工具,能捕獲實(shí)時(shí)電信號(hào)的許多邏輯電平(0 或 1),邏輯分析儀在調(diào)試硬件問(wèn)題和復(fù)雜的處理外設(shè)交互時(shí)相當(dāng)有用。Oscilloscope (示波器)A hardware debugging tool that allows you to view the voltage on one or more electrical l
45、ines. For example, you might use an oscilloscope to determine if a particular interrupt is currently asserted.一種硬件調(diào)試工具, 它讓你能觀察到一個(gè)或更多電路上的電壓。 例如:如果一個(gè)特殊的中斷發(fā)生, 你可以用一個(gè)示波器去檢測(cè)它。PROIM可編程只讀存儲(chǔ)器)Programmable Read-Only Memory. A type of ROMthat can be written (programmed) with a device programmer. These memoryd
46、evices can be programmed only once, so they are sometimes referred to as write-once or one-time programmable devices.可編程只讀存儲(chǔ)器。能被設(shè)備編程器寫的一種ROM這種內(nèi)存設(shè)備可以被編程一次,所以它們有時(shí)被作為寫一次或一次性編程設(shè)備來(lái)看待。parallel processing (并行進(jìn)程)The ability to apply two or more processors to a single computation.一種在單個(gè)計(jì)算機(jī)上運(yùn)行兩個(gè)或多個(gè)程序的能力。proces
47、sor-independent (處理器無(wú)關(guān))A piece of software that is independent of the processor on which it will berun. Most programs that can be written in a high-level language are processor-independent. Contrast with processor-specific.一個(gè)與處理器無(wú)關(guān)的,并能在其上運(yùn)行的軟件。大多數(shù)用高級(jí)語(yǔ)言編寫程序是處理器無(wú)關(guān)的。相 對(duì)于處理器定制。processor-specific (處理器定制)
48、A piece of software that is highly dependent on theprocessor on which it will be run. Suchcode must usually be written in assembly language. Contrast with processor-independent.一個(gè)高度依賴處理器的軟件,在上其才能運(yùn)行。一些代碼必須用匯編語(yǔ)言編寫。相對(duì)于處理器無(wú) 關(guān)。嵌入式人才的發(fā)展方向 ( 一 ) 嵌入式系統(tǒng)無(wú)疑是當(dāng)前最熱門最有發(fā)展前途的 IT 應(yīng)用領(lǐng)域之一。嵌入式系統(tǒng)用在一些特定專用設(shè)備 上,通常這些設(shè)備的硬件資源(
49、如處理器、存儲(chǔ)器等)非常有限,并且對(duì)成本很敏感,有時(shí)對(duì)實(shí)時(shí)響 應(yīng)要求很高等。特別是隨著消費(fèi)家電的智能化,嵌入式更顯重要。像我們平常常見到的手機(jī)、PDA、電子字典、可視電話、VCD/DVD/MP3 Player、數(shù)字相機(jī)(DC)、數(shù)字?jǐn)z像機(jī)(DV)、U-Disk、機(jī)頂盒(Set Top Box)、高清電視(HDTV)游戲機(jī)、智能玩具、交換機(jī)、路由器、數(shù)控設(shè)備或儀表、汽車電 子、家電控制系統(tǒng)、醫(yī)療儀器、航天航空設(shè)備等等都是典型的嵌入式系統(tǒng)。嵌入式系統(tǒng)是軟硬結(jié)合的東西,搞嵌入式開發(fā)的人有兩類。 一類是學(xué)電子工程、通信工程等偏硬件專業(yè)出身的人,他們主要是搞硬件設(shè)計(jì),有時(shí)要開發(fā)一些與硬 件關(guān)系最密切的最
50、底層軟件,如 BootLoader 、 Board SupportPackage(像PC的BIOS一樣,往下驅(qū)動(dòng)硬件,往上支持操作系統(tǒng)),最初級(jí)的硬件驅(qū)動(dòng)程序等。他們 的優(yōu)勢(shì)是對(duì)硬件原理非常清楚, 不足是他們更擅長(zhǎng)定義各種硬件接口, 但對(duì)復(fù)雜軟件系統(tǒng)往往力不從 心(例如嵌入式操作系統(tǒng)原理和復(fù)雜應(yīng)用軟件等)。另一類是學(xué)軟件、計(jì)算機(jī)專業(yè)出身的人,主要從事嵌入式操作系統(tǒng)和應(yīng)用軟件的開發(fā)。如果我們學(xué)軟 件的人對(duì)硬件原理和接口有較好的掌握,我們完全也可寫B(tài)SP 和硬件驅(qū)動(dòng)程序。嵌入式硬件設(shè)計(jì)完后,各種功能就全靠軟件來(lái)實(shí)現(xiàn)了,嵌入式設(shè)備的增值很大程度上取決于嵌入式軟件,這占了嵌入式 系統(tǒng)的最主要工作 (目
51、前有很多公司將硬件設(shè)計(jì)包給了專門的硬件公司, 稍復(fù)雜的硬件都交給臺(tái)灣或 國(guó)外公司設(shè)計(jì),國(guó)內(nèi)的硬件設(shè)計(jì)力量很弱,很多嵌入式公司自己只負(fù)責(zé)開發(fā)軟件,因?yàn)楣径贾溃?嵌入式產(chǎn)品的差異很大程度在軟件上,在軟件方面是最有“花頭“可做的),所以我們搞軟件的人完 全不用擔(dān)心我們?cè)谇度胧绞袌?chǎng)上的用武之地,越是智能設(shè)備越是復(fù)雜系統(tǒng),軟件越起關(guān)鍵作用,而且 這是目前的趨勢(shì)。從事嵌入式軟件開發(fā)的好處是:(1) 目前國(guó)內(nèi)外這方面的人都很稀缺。一方面,是因?yàn)檫@一領(lǐng)域入門門檻較高,不僅要懂較底層軟件(例 如操作系統(tǒng)級(jí)、驅(qū)動(dòng)程序級(jí)軟件),對(duì)軟件專業(yè)水平要求較高(嵌入式系統(tǒng)對(duì)軟件設(shè)計(jì)的時(shí)間和空間 效率要求較高),而且必須懂
52、得硬件的工作原理,所以非專業(yè) IT 人員很難切入這一領(lǐng)域;另一方面, 是因?yàn)檫@一領(lǐng)域較新,目前發(fā)展太快,很多軟硬件技術(shù)岀現(xiàn)時(shí)間不長(zhǎng)或正在岀現(xiàn)(如ARM±理器、嵌入式操作系統(tǒng)、MPEG技術(shù)、無(wú)線通信協(xié)議等),掌握這些新技術(shù)的人當(dāng)然很找。嵌入式人才稀缺, 身價(jià)自然就高,越有經(jīng)驗(yàn)價(jià)格就越高。其實(shí)嵌入式人才稀少 , 根本原因可能是大多數(shù)人無(wú)條件接觸 , 這需要相應(yīng)的嵌入式開發(fā)板和軟件 , 另外需要有經(jīng)驗(yàn)的人進(jìn)行指導(dǎo)開發(fā)流程。( 2 ) 與企業(yè)計(jì)算等應(yīng)用軟件不同,嵌入式領(lǐng)域人才的工作強(qiáng)度通常低一些(但收入不低)。搞企業(yè)應(yīng)用軟 件的 IT 企業(yè),這個(gè)用戶的系統(tǒng)搞完了,又得去搞下一個(gè)用戶的,而且每
53、個(gè)用戶的需求和完成時(shí)間都 得按客戶要求改變,往往疲于奔命,重復(fù)勞動(dòng)。相比而言,搞嵌入式系統(tǒng)的公司,都有自己的產(chǎn)品計(jì) 劃,按自己的節(jié)奏行事。所開發(fā)的產(chǎn)品通常是通用的,不會(huì)因客戶的不同而修改。一個(gè)產(chǎn)品型號(hào)開發(fā) 完了,往往有較長(zhǎng)一段空閑時(shí)間(或只是對(duì)軟件進(jìn)行一些小修補(bǔ)),有時(shí)間進(jìn)行充電和休整。另外, 從事嵌入式軟件的每個(gè)人工作范圍相對(duì)狹窄,所涉及的專業(yè)技術(shù)范圍就是那些(ARM、 RTOS、 MPEG、802.11 等),時(shí)間長(zhǎng)了這些東西會(huì)越搞越有經(jīng)驗(yàn),賣賣老本,幾句指導(dǎo)也夠讓那些初入道者琢磨半 年的。若搞應(yīng)用軟件,可能下一個(gè)客戶要換成一個(gè)完全不同的軟件開發(fā)平臺(tái),那就苦了。( 3 ) 哪天若想創(chuàng)業(yè),搞
54、自已的產(chǎn)品,那么嵌入式是一個(gè)不錯(cuò)的主意,這可不像應(yīng)用軟件那樣容易被盜版。 土木學(xué)院有一個(gè)叫啟明星的公司開發(fā)岀一個(gè)好象叫“工程e”的掌上PDA(南校區(qū)門口有廣告),施工技術(shù)人員用該P(yáng)DA可當(dāng)場(chǎng)進(jìn)行土木概預(yù)算和其它土木計(jì)算,據(jù)說(shuō)銷路特好。我認(rèn)識(shí)的某大學(xué)老師, 他開發(fā)的飯館用的點(diǎn)菜 PDA( Win CE平臺(tái),可無(wú)線連網(wǎng)和上網(wǎng)),據(jù)他說(shuō)銷路不錯(cuò),飯館點(diǎn)點(diǎn)PDA讓客戶點(diǎn)菜,多顯派頭檔次。我記得 00級(jí)2+2班當(dāng)年有一組同學(xué)在學(xué) Windows程序設(shè)計(jì)課程時(shí)用VC+ 設(shè)計(jì)了一個(gè)功能很強(qiáng)的點(diǎn)菜系統(tǒng)做為課程項(xiàng)目,當(dāng)時(shí)真想建議他們將這個(gè)軟件做成PDA估計(jì)會(huì)有些銷路(上?;疖囌灸蠌V場(chǎng)的 Macdonald便使用
55、很漂亮的PDA給用戶點(diǎn)食品,像摸像樣的)。這些 PDA 的硬件設(shè)計(jì)一般都是請(qǐng)其它公司給訂做(這叫“貼牌”:OEM,都是通用的硬件,我們只管設(shè)計(jì)軟件就變成自己的產(chǎn)品了。從事嵌入式軟件開發(fā)的缺點(diǎn)是:(1) 入門起點(diǎn)較高,所用到的技術(shù)往往都有一定難度,若軟硬件基礎(chǔ)不好,特別是操作系統(tǒng)級(jí)軟件功底不 深,則可能不適于此行。(2) 這方面的企業(yè)數(shù)量要遠(yuǎn)少于企業(yè)計(jì)算類企業(yè)。 特別是從事嵌入式的小企業(yè)數(shù)量較多 (小企業(yè)要搞自己 的產(chǎn)品創(chuàng)業(yè)) ,知名大公司較少 (搞嵌入式的大公司主要有 Intel 、 Motorola 、 TI 、 Philip 、 Samsung、 Sony、 Futjtum 、 Bell-
56、Alcatel 、意法半導(dǎo)體、 Microtek 、研華、華為、中興通信、上廣電等制造類 企業(yè))。這些企業(yè)的習(xí)慣思維方式是到電子、通信等偏硬專業(yè)找人。由于我院以前畢業(yè)生以企業(yè)計(jì)算 為主,所以我院與這些企業(yè)聯(lián)系相對(duì)較少。我院正積極努力,目前已與其中部分公司建立了聯(lián)系,爭(zhēng) 取今后能有我院同學(xué)到這些企業(yè)中實(shí)習(xí)或就業(yè)。(3)有少數(shù)公司經(jīng)常要碩士以上的人搞嵌入式,主要是基于嵌入式的難度。但大多數(shù)公司也并無(wú)此 要求,只要有經(jīng)驗(yàn)即可。我院同學(xué)若學(xué)習(xí)嵌入式,顯然應(yīng)偏重于嵌入式軟件,特別是嵌入式操作系統(tǒng)方面,應(yīng)是我們的強(qiáng)項(xiàng)。對(duì)于搞嵌入式軟件的人,最重要募際蹕勻皇牽云導(dǎo)噬蝦芏喙鏡惱釁腹愀嬪暇褪欽庋吹模 ?BR&g
57、t;(1)掌握主流嵌入式微處理器的結(jié)構(gòu)與原理(2)必須掌握一個(gè)嵌入式操作系統(tǒng)(3)必須熟悉嵌入式軟件開發(fā)流程并至少做過(guò)一個(gè)嵌入式軟件項(xiàng)目。嵌入式軟件方面最重要的課程包括:(1)嵌入式微處理器結(jié)構(gòu)與應(yīng)用:這是一門嵌入式硬件基礎(chǔ)課程,我院用這門課取代了傳統(tǒng)的“微機(jī)原理 與接口”課程(目前國(guó)內(nèi)已有少部分高校IT專業(yè)這樣做了,因?yàn)橹vX86微機(jī)原理與接口很難找到實(shí)際用處,只為教學(xué)而已)。我們說(shuō)過(guò),嵌入式是軟硬件結(jié)合的技術(shù),搞嵌入式軟件的人應(yīng)對(duì)ARM±理器工作原理和接口技術(shù)有充分了解,包括ARM勺匯編指令系統(tǒng)。若不了解處理器原理,怎么能控制硬件工作,怎么能寫岀節(jié)省內(nèi)存又運(yùn)行高速的最優(yōu)代碼(嵌入式
58、軟件設(shè)計(jì)特別講究時(shí)空效率),怎么能 寫岀驅(qū)動(dòng)程序(驅(qū)動(dòng)程序都是與硬件打交道的)?很多公司招聘嵌入式軟件人員時(shí)都要求熟悉ARM處理器,將來(lái)若同學(xué)到公司中從事嵌入式軟件開發(fā),公司都會(huì)給你一本該設(shè)備的硬件規(guī)格說(shuō)明書(xxxSpecification),您必須能看懂其中的內(nèi)存分布和端口使用等最基本的說(shuō)明(就像x86匯編一樣),否則怎么設(shè)計(jì)軟件。有些同學(xué)覺得嵌入式處理器課程較枯燥,這主要是硬件課程都較抽象的原因,等 我們的嵌入式實(shí)驗(yàn)室10月份建好后,您做了一些實(shí)驗(yàn)后就會(huì)覺得看得見摸得著。還有同學(xué)對(duì)ARM匯編不感興趣,以為嵌入式開發(fā)用 C語(yǔ)言就足夠了。其實(shí)不應(yīng)僅是將匯編語(yǔ)言當(dāng)成一個(gè)程序設(shè)計(jì)語(yǔ)言, 學(xué)匯編主要是為了掌握處理器工作原理的。一個(gè)不熟悉匯編語(yǔ)言的人,怎么能在該處理器寫岀最優(yōu)的 C語(yǔ)言代碼。在嵌入式開發(fā)的一些關(guān)鍵部分,有時(shí)還必須寫匯編,如Bootloader等(可能還包括BSP。 特別是在對(duì)速度有極高要求的場(chǎng)合(如DSP處理器的高速圖像采集和圖像解壓縮),目前主要還要靠匯編寫程序(我看到過(guò)很多公司是這樣做的)。當(dāng)您在一個(gè)嵌入式公司工作時(shí),在查看描述原理的手 冊(cè)時(shí),可能很多都是用匯編描述的(我就遇到過(guò)),這是因?yàn)楹芏嘤布O(shè)計(jì)人
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年貧瘦煤合作協(xié)議書
- 2025年特異性植物源農(nóng)藥合作協(xié)議書
- 2025年二年級(jí)下冊(cè)班級(jí)工作總結(jié)(2篇)
- 2025年企業(yè)勞動(dòng)用工合同標(biāo)準(zhǔn)樣本(2篇)
- 2025年個(gè)人門面房租賃合同標(biāo)準(zhǔn)樣本(2篇)
- 2025年五年級(jí)下學(xué)期少先隊(duì)工作總結(jié)(五篇)
- 2025年中介服務(wù)合同范例(三篇)
- 戶外運(yùn)動(dòng)中心裝修合同終止
- 液體化工品國(guó)內(nèi)運(yùn)輸協(xié)議
- 寵物運(yùn)輸包車協(xié)議樣本
- 2025-2030年中國(guó)反滲透膜行業(yè)市場(chǎng)發(fā)展趨勢(shì)展望與投資策略分析報(bào)告
- 湖北省十堰市城區(qū)2024-2025學(xué)年九年級(jí)上學(xué)期期末質(zhì)量檢測(cè)道德與法治試題 (含答案)
- 山東省濰坊市2024-2025學(xué)年高三上學(xué)期1月期末 英語(yǔ)試題
- 春節(jié)節(jié)后收心會(huì)
- 《住院患者身體約束的護(hù)理》團(tuán)體標(biāo)準(zhǔn)解讀課件
- 中國(guó)心力衰竭診斷與治療指南解讀
- 人教版高中化學(xué)必修一第一章《物質(zhì)及其變化》教學(xué)課件
- 復(fù)工復(fù)產(chǎn)工作方案范本【復(fù)產(chǎn)復(fù)工安全工作方案】
- HyperMesh100基礎(chǔ)培訓(xùn)教程
- 現(xiàn)代機(jī)械強(qiáng)度理論及應(yīng)用課件匯總?cè)譸pt完整版課件最全教學(xué)教程整套課件全書電子教案
- 農(nóng)村信用社個(gè)人借款申請(qǐng)審批表
評(píng)論
0/150
提交評(píng)論