




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第1章嵌入式系統(tǒng)及應(yīng)用開發(fā)概述1.1嵌入式系統(tǒng)的定義及特點1.2嵌入式系統(tǒng)的開展及應(yīng)用1.3嵌入式系統(tǒng)的總體組成1.4常用的嵌入式處理器1.5常用的嵌入式操作系統(tǒng)1.6嵌入式系統(tǒng)的設(shè)計方法1.7嵌入式系統(tǒng)的應(yīng)用開發(fā)1.8嵌入式系統(tǒng)的學(xué)習(xí)探討習(xí)題1第1章嵌入式系統(tǒng)及應(yīng)用開發(fā)概述
本章概括地闡述了嵌入式系統(tǒng)及應(yīng)用開發(fā)的根本概念、根底知識、根本方法等,包括嵌入式系統(tǒng)的定義、開展應(yīng)用、總體組成、常用的嵌入式處理器、常用的嵌入式操作系統(tǒng)、嵌入式系統(tǒng)的設(shè)計方法、嵌入式系統(tǒng)的設(shè)計開發(fā)和嵌入式系統(tǒng)的學(xué)習(xí)探討等內(nèi)容。2
1.1嵌入式系統(tǒng)的定義及特點1.1.1嵌入式系統(tǒng)的定義IEEE的定義:嵌入式系統(tǒng)是用來控制、監(jiān)控或者輔助操作機(jī)器、裝置、工廠等大規(guī)模系統(tǒng)的設(shè)備。我國通常定義:嵌入式系統(tǒng)〔EmbeddedSystem〕就是嵌入到目標(biāo)體系中的專用計算機(jī)系統(tǒng)。嵌入性、專用性與計算機(jī)系統(tǒng)是嵌入式系統(tǒng)的3個根本要素。具體地講,嵌入式系統(tǒng)是指以應(yīng)用為中心,以計算機(jī)技術(shù)為根底,并且軟硬件可裁減,適用于應(yīng)用系統(tǒng)對功能、可靠性、本錢、體積、功耗有嚴(yán)格要求的專用計算機(jī)系統(tǒng)。3
1.1.2嵌入式系統(tǒng)的特點1.嵌入式系統(tǒng)是專用的計算機(jī)系統(tǒng)2.嵌入式系統(tǒng)須滿足系統(tǒng)應(yīng)用環(huán)境的要求3.嵌入式系統(tǒng)需滿足對象系統(tǒng)的控制要求4.嵌入式系統(tǒng)是一個知識集成應(yīng)用系統(tǒng)5.嵌入式系統(tǒng)具有較長的應(yīng)用生命周期6.嵌入式系統(tǒng)軟件固化在非易失性存儲器中7.多數(shù)嵌入式系統(tǒng)具有實時性要求8.嵌入式系統(tǒng)設(shè)計需專用的開發(fā)環(huán)境和工具41.2嵌入式系統(tǒng)的開展應(yīng)用1.嵌入式系統(tǒng)開展的4個階段1〕以單片機(jī)為核心的低級嵌入式系統(tǒng)主要特點是系統(tǒng)結(jié)構(gòu)和功能單一,處理效率不高,存儲容量較小,用戶接口簡單或沒有用戶接口,但它使用簡單,本錢低廉。2〕以嵌入式微處理器為根底的初級嵌入式系統(tǒng)主要特點是處理器種類多,通用性較弱;系統(tǒng)效率高,本錢低;操作系統(tǒng)具有兼容性、擴(kuò)展性,但用戶界面簡單。3〕以嵌入式操作系統(tǒng)為標(biāo)志的中級嵌入式系統(tǒng)主要特點是嵌入式系統(tǒng)能運行于各種不同嵌入式處理器上,兼容性好;操作系統(tǒng)內(nèi)核小、效率高,并且可任意裁剪;具有文件和目錄管理、多任務(wù)功能,支持網(wǎng)絡(luò)、具有圖形窗口以及良好的用戶界面;具有大量的應(yīng)用程序接口,嵌入式應(yīng)用軟件豐富。1.2.1嵌入式系統(tǒng)的開展54〕以Internet為標(biāo)志的高級嵌入式系統(tǒng)目前嵌入式系統(tǒng)大多孤立于Intemet,隨著網(wǎng)絡(luò)應(yīng)用的不斷深入,隨著信息家電的開展,嵌入式系統(tǒng)的應(yīng)用必將與Internet有機(jī)結(jié)合在一起,成為嵌入式系統(tǒng)開展的未來?;?2位/64位微處理器的嵌入式系統(tǒng)的優(yōu)點:①芯片內(nèi)外資源豐富,硬件系統(tǒng)簡單;②可運行各種操作系統(tǒng),降低了復(fù)雜系統(tǒng)應(yīng)用程序開發(fā)的難度;可運行多種操作系統(tǒng),應(yīng)用程序開發(fā)難度降低,系統(tǒng)人機(jī)界面友好;③系統(tǒng)數(shù)據(jù)處理能力強(qiáng),控制精度高;④有成熟的開發(fā)工具,豐富的開發(fā)資源和資料;⑤32位/64位的嵌入式系統(tǒng)的開發(fā)人群不斷增多,有助于降低企業(yè)工程開發(fā)本錢、保持開發(fā)的連續(xù)性。62.嵌入式系統(tǒng)的開展趨勢1〕嵌入式系統(tǒng)結(jié)構(gòu)將更加復(fù)雜,硬件向集成化開展,軟件將逐漸PC化2〕嵌入式系統(tǒng)的小型化、智能化、網(wǎng)絡(luò)化、可視化、微功耗和低本錢3〕不斷改善人機(jī)交互的手段,提供精巧的多媒體人機(jī)界面4〕云計算、可重構(gòu)、虛擬化等技術(shù)被進(jìn)一步應(yīng)用到嵌入式系統(tǒng)5〕嵌入式軟件開發(fā)平臺化、標(biāo)準(zhǔn)化、系統(tǒng)可升級,代碼可復(fù)用將更受重視其中:云計算〔Cloud〕是將計算分布在大量的分布式計算機(jī)上,這樣我們只需要一個終端,就可以通過網(wǎng)絡(luò)效勞來實現(xiàn)所需要的計算任務(wù),甚至是超級計算任務(wù)。可重構(gòu)性是指在一個系統(tǒng)中,其硬件模塊或〔和〕軟件模塊均能根據(jù)變化的數(shù)據(jù)流或控制流對系統(tǒng)結(jié)構(gòu)或算法進(jìn)行重新配置〔或重新設(shè)置〕。虛擬化是指計算機(jī)軟件在一個虛擬的平臺上而不是一個真實的硬件上運行。7嵌入式系統(tǒng)具有非常廣闊的應(yīng)用領(lǐng)域,是現(xiàn)代計算機(jī)技術(shù)改造傳統(tǒng)產(chǎn)業(yè)、提升多領(lǐng)域技術(shù)水平的有力主具,可以說嵌入式系統(tǒng)無處不在。其主要應(yīng)用領(lǐng)域包括智能產(chǎn)品〔智能儀表、智能和信息家電〕、工業(yè)自動化〔測控裝置、數(shù)控機(jī)床、數(shù)據(jù)采集與處理〕、辦公自動化〔通用計算機(jī)中的智能接口〕、電網(wǎng)平安、電網(wǎng)設(shè)備檢測、石油化工、商業(yè)應(yīng)用〔電子秤,POS機(jī),條碼識別機(jī)〕、平安防范〔防火、防盜、防泄漏等報警系統(tǒng)〕、網(wǎng)絡(luò)通信〔路由器、網(wǎng)關(guān)、、PDA、無線傳感器網(wǎng)絡(luò)〕、汽車電子與航空航天〔汽車防盜報警器、汽車和飛行器黑匣子〕以及軍事等各個領(lǐng)域,如圖1.1所示。1.2.2嵌入式系統(tǒng)的應(yīng)用8圖1.1嵌入式系統(tǒng)的應(yīng)用領(lǐng)域
91.3嵌入式系統(tǒng)的總體組成圖1.2基于控制領(lǐng)域的典型嵌入式系統(tǒng)101.3.1嵌入式系統(tǒng)的硬件圖1.3典型的嵌入式系統(tǒng)硬件組成11硬件層由嵌入式微處理器、存儲系統(tǒng)、通信模塊、人機(jī)接口、其他I/O接口(A/D、D/A、通用I/O等)以及電源等組成。嵌入式系統(tǒng)的硬件層以嵌入式微處理器為核心,在嵌入式微處理器根底上增加電源電路、時鐘電路和存儲器電路(RAM和ROM等),這就構(gòu)成了一個嵌入式核心控制模塊,操作系統(tǒng)和應(yīng)用程序都可以固化在ROM中。121.中間層程序中間層程序主要為上層軟件提供了設(shè)備的操作接口,它包括硬件抽象層〔HardwareAbstractionLayer,HAL〕、板級支持包〔BoardSupportPackage,BSP〕以及設(shè)備驅(qū)動程序。1〕硬件抽象層硬件抽象層〔HAL〕位于操作系統(tǒng)內(nèi)核與硬件電路之間的接口層,其目的就是將硬件抽象化,即可以通過程序來控制處理器、I/O接口以及存儲器等所有硬件的操作,這樣使系統(tǒng)的設(shè)備驅(qū)動程序與硬件設(shè)備無關(guān),提高了系統(tǒng)中的移植性。它包括相關(guān)硬件的初始化、數(shù)據(jù)的輸入/輸出操作、硬件設(shè)備的配置等操作。
1.3.2嵌入式系統(tǒng)的軟件132〕板級支持包板級支持包〔BSP〕介于嵌入式操作系統(tǒng)中驅(qū)動層程序與硬件電路之間,主要實現(xiàn)對嵌入式操作系統(tǒng)的支持,為上層的驅(qū)動程序提供訪問硬件設(shè)備存放器的函數(shù)包。BSP實現(xiàn)的功能主要有:①系統(tǒng)啟動時對硬件初始化;②為驅(qū)動程序提供訪問硬件的手段,BootLoader便屬于此類。143〕設(shè)備驅(qū)動程序系統(tǒng)安裝的硬件設(shè)備必須經(jīng)過驅(qū)動才能被使用,設(shè)備的驅(qū)動程序為上層軟件提供調(diào)用的操作接口。驅(qū)動程序除了實現(xiàn)根本的功能函數(shù)外〔初始化、中斷響應(yīng)、發(fā)送、接收等〕,還具備完善的錯誤處理函數(shù)。2.嵌入式操作系統(tǒng)嵌入式操作系統(tǒng)在復(fù)雜的嵌入式系統(tǒng)中發(fā)揮著非常重要的作用,有了嵌入式操作系統(tǒng),進(jìn)程管理、進(jìn)程間的通信、內(nèi)存管理、文件管理、驅(qū)動程序、網(wǎng)絡(luò)協(xié)議等方可實現(xiàn)。3.應(yīng)用軟件層應(yīng)用軟件是在嵌入式操作系統(tǒng)支持下通過調(diào)用API函數(shù),結(jié)合實際應(yīng)用編制的用戶軟件。如抄表系統(tǒng)的軟件、掌上信息查詢軟件等。15嵌入式微處理器〔EmbeddedMicrocomputerUnit,EMPU〕、嵌入式微控制器〔EmbeddedMicrocontrollerUnit,EMCU〕嵌入式數(shù)字信號處理器〔EmbeddedDigitalSignalProcessor,EDSP〕嵌入式片上系統(tǒng)〔SystemOnChip,SOC〕嵌入式可編程片上系統(tǒng)〔SystemOnaProgrammableChip,SOPC)。1.4常用的嵌入式處理器1.4.1嵌入式處理器的種類161.嵌入式微處理器嵌入式微處理器是由PC中的CPU演變而來的,與通用PC的微處理器不同的是,它只保存了與嵌入式應(yīng)用緊密相關(guān)的功能硬件。典型的EMPU有PowerPC、MIPS、MC68000、i386EX、AMDK62E以及ARM等,其中ARM是應(yīng)用最廣、最具代表性的嵌入式微處理器。2.嵌入式微控制器嵌入式微控制器的典型代表是單片機(jī),其內(nèi)部集成了ROM/EPROM/Flash、RAM、總線、總線邏輯、定時器、看門狗、I/O接口等各種必要的功能部件。典型的EMCU有51系列、MC68系列、PIC系列、MSP430系列等。3.嵌入式數(shù)字信號處理器嵌入式數(shù)字信號處理器〔DSP〕是專門用于數(shù)字信號處理的微處理器,在系統(tǒng)結(jié)構(gòu)和指令算法方面經(jīng)過特殊設(shè)計,因而具有很高的編譯效率和指令執(zhí)行速度。典型的EDSP有TMS32023系列、TMS32023系列等。174.嵌入式片上系統(tǒng)SOC是一個集成的復(fù)雜系統(tǒng),它一般將一個完整的產(chǎn)品的各功能集成在一個芯片上或芯片組上,其中可能包括處理器CPU、存儲器、硬件加速單元、與外圍設(shè)備的接口I/F,模數(shù)混合放大電路,甚至延伸到傳感器、微機(jī)電和微光電單元。SOC最大的特點是成功實現(xiàn)了軟硬件無縫結(jié)合,直接在處理器的片內(nèi)嵌入了操作系統(tǒng)。由于片上系統(tǒng)絕大局部系統(tǒng)構(gòu)件都是在系統(tǒng)內(nèi)部,整個系統(tǒng)就特別簡潔,不僅減小了系統(tǒng)的體積和功耗,而且提高了系統(tǒng)的可靠性和設(shè)計生產(chǎn)效率。
185.嵌入式可編程片上系統(tǒng)隨著EDA技術(shù)的快速開展和VLSI技術(shù)的不斷進(jìn)步,出現(xiàn)了SOPC??删幊唐舷到y(tǒng)SOPC是一種基于FPGA的可重構(gòu)SOC,它集成了硬IP核或軟IP核CPU、DSP、存儲器、外圍I/O及可編程邏輯,是更加靈活、高效的SOC解決方案。SOC與SOPC的區(qū)別:SOC是專用集成系統(tǒng),設(shè)計周期長,設(shè)計本錢高,SOPC是基于FPGA的可重構(gòu)SOC,是一種通用系統(tǒng),設(shè)計周期短,設(shè)計本錢低。IP核〔IntellectualPropertyCore〕稱為知識產(chǎn)權(quán)核,它是經(jīng)過預(yù)先設(shè)計、預(yù)先驗證,且符合產(chǎn)業(yè)界普遍認(rèn)同的設(shè)計標(biāo)準(zhǔn)和設(shè)計標(biāo)準(zhǔn),具有相對獨立的電路模塊或子系統(tǒng),可以復(fù)用于SOC、SOPC或復(fù)雜ASIC設(shè)計中。它是一種通過知識產(chǎn)權(quán)貿(mào)易在各設(shè)計公司間流通的完成特定功能的電路模塊或子系統(tǒng)。19英國ARM〔AdvancedRISCMachines〕公司成立于1990年。在1985年4月26日,第一個ARM原型在英國劍橋的Acorn計算機(jī)誕生〔在美國VLSI公司制造〕。目前,ARM架構(gòu)處理器已在高性能、低功耗、低本錢應(yīng)用領(lǐng)域中占據(jù)領(lǐng)先地位。ARM公司是嵌入式RISC處理器的知識產(chǎn)權(quán)IP供給商,它為ARM架構(gòu)處理器提供了ARM處理器內(nèi)核〔如ARM7TDMI、ARM9TDMI、ARM10TDMI等〕和ARM處理器宏核〔ARM720T、ARM920T/922T/940T、ARM1020E/1022E等〕,由各半導(dǎo)體公司〔ARM公司合作伙伴〕在上述處理器內(nèi)核或處理器宏核根底上進(jìn)行再設(shè)計,嵌入各種外圍和處理部件,形成各種嵌入式微處理器〔EMPU〕或嵌入式微控制器〔EMCU〕。1.4.2典型ARM微處理器系列2021圖5-1ARM的業(yè)務(wù)模型22ARM處理器目前包括ARM7系列、ARM9系列、ARM9E系列、ARM10E系列、ARM11系列、SecurCore系列、OptimoDE系列、StrongARM系列、XScale系列以及Cortex-A8系列等。ARM7、ARM9、ARM9E及ARM10E為4個通用嵌入式微處理器系列,每個系列提供一套相對獨特的性能來滿足不同應(yīng)用領(lǐng)域的要求,有多個廠家生產(chǎn);SecurCore系列那么是專門為平安性要求較高的場合而設(shè)計的;StrongARM是Intel公司生產(chǎn)的用于便攜式通信產(chǎn)品和消費電子產(chǎn)品的理想嵌入式微處理器,應(yīng)用于多家掌上電腦系列產(chǎn)品;Xscale是Intel公司推出的基于ARMv5TE體系結(jié)構(gòu)的全性能、高性價比、低功耗的嵌入式微處理器,應(yīng)用于數(shù)字移動、個人數(shù)字助理和網(wǎng)絡(luò)產(chǎn)品等場合。Cortex-A8處理器是第一款基于下一代ARMv7架構(gòu)的應(yīng)用處理器,使用了能夠帶來更高性能、功耗效率和代碼密度的Thumb?-2技術(shù)。23圖1.4基于ARM核的典型嵌入式處理器系列241.4.3典型ARM微處理器簡介1.S3C44B0X微處理器簡介S3C44B0X是三星公司專為手持設(shè)備和一般應(yīng)用提供的高性價比、高性能的16/32位RISC型嵌入式微處理器。它使用ARM7TDMI核,工作在75MHz。S3C44B0X采用0.25um制造工藝的CMOS標(biāo)準(zhǔn)宏單元和存儲編譯器,它耗能低、精簡及出色的全靜態(tài)設(shè)計非常適用于對本錢和功耗要求較高的場合。為了降低系統(tǒng)總本錢和減少外圍器件,這款芯片中還集成了假設(shè)干部件,主要包括8KBCache〔數(shù)據(jù)/指令〕、內(nèi)部SRAM、外部儲存器控制器、LCD〔LiquidCrystalDisplay〕控制器、4個DMA通道、帶自動握手的2通道UART、一個多主I2C〔InterIntegrateCircuit〕總線控制器、1個I2S〔InterIntegrateCircuitSoundBus〕總線控制器、5通道PWM定時器、一個看門狗定時器、71個通用I/O口、8個外部中斷源、具有日歷功能的實時時鐘RTC、8通道10位A/D轉(zhuǎn)化器、1個SIO接口以及PLL〔鎖相環(huán)〕時鐘發(fā)生器。S3C44B0X采用新型的總線結(jié)構(gòu),即三星ARMCPU嵌入式微處理器總線結(jié)構(gòu)SAMBAII。252.S3C2410X/S3C2440X微處理器簡介S3C2410X/S3C2440X是三星公司出品的基ARM920T核的嵌入式微處理器,它與基于ARM7的S3C44B0X的最大區(qū)別在于,S3C2410X/S3C2440X內(nèi)部帶有全性能的內(nèi)存管理單元〔MMU〕,適用于設(shè)計移動手持設(shè)備類產(chǎn)品,具有高性能、低功耗、接口豐富及體積小等優(yōu)良特性。S3C2410X/S3C2440X提供了豐富的內(nèi)部設(shè)備:如雙重別離的16KB的指令緩存和16KB的數(shù)據(jù)緩存、MMU虛擬存儲器管理部件、LCD控制器、支持NAND的Flash系統(tǒng)引導(dǎo)、外部存儲控制器、3通道UART、4通道DMA、4通道PWM定時器、I/O端口、定時器、8通道10位A/D轉(zhuǎn)換器、觸摸屏接口、I2C總線接口、USB主機(jī)、USB設(shè)備、SD主卡及MMC卡接口、2通道SPI以及內(nèi)部PLL時鐘倍頻器。263.LPC2000系列嵌入式微控制器簡介LPC2000系列嵌入式微控制器是基于ARM7TDMI-SCPU內(nèi)核的,它支持ARM和Thumb指令集,芯片內(nèi)集成豐富外設(shè),而且具有非常低的功率消耗。該系列微控制特別適用于工業(yè)控制、醫(yī)療系統(tǒng)、訪問控制和POS機(jī)等場合。有關(guān)其系列產(chǎn)品的主要信息見表1.1。4.AT91系列嵌入式微控制器簡介美國AtmelAT91系列微控制器是基于ARM7TDMI〔有的基ARM920T〕的嵌入式微處理器的16/32位微控制器,是目前國內(nèi)市場應(yīng)用最廣泛的ARM芯片之一。AT91系列微控制器定位在低功耗和實時控制應(yīng)用領(lǐng)域,它們已成功應(yīng)用在工業(yè)自動化控制、MP3/WMA播放器、數(shù)據(jù)采集產(chǎn)品、BP機(jī)、POS機(jī)、醫(yī)療設(shè)備、GPS和網(wǎng)絡(luò)系統(tǒng)產(chǎn)品中。AT91系列微控制器為工業(yè)級芯片,價格比較廉價?;贏RM技術(shù)的Atmel微控制器為AT91系列,其中有幾種類型,AT91RXXXX和AT91MXXXX〔內(nèi)部帶有RAM,但沒有程序存儲器類型〕、AT91RMXXXX〔內(nèi)部帶有RAM,有ROM類型〕,AT91FRXXXX〔內(nèi)部帶有RAM,有Flash程序存儲器類型〕。275.XScale微體系結(jié)構(gòu)微處理器簡介IntelXScale微體系結(jié)構(gòu)提供了一種全新的、高性價比、低功耗且基于ARMv5TE體系結(jié)構(gòu)的解決方案,支持16位Thumb指令和DSP擴(kuò)充?;赬Scale技術(shù)開發(fā)的微處理器,可用于、便攜式終端〔PDA〕、網(wǎng)絡(luò)存儲設(shè)備及骨干網(wǎng)〔BackBone〕路由器等。IntelPXA250微處理器芯片就是一款集成了32位IntelXScale微處理器核的應(yīng)用處理器。6.STR710F系列嵌入式處理器簡介STR710F系列嵌入式處理器產(chǎn)品是意法半導(dǎo)體〔STMicroelectronics〕生產(chǎn)的工業(yè)標(biāo)準(zhǔn)的ARM7TDMI32位RISCCPU為內(nèi)核,特別適用于需要尺寸緊湊、CPU功能強(qiáng)大的嵌入式系統(tǒng)和可升級的解決方案,如用戶界面要求高的系統(tǒng)、工廠自動化系統(tǒng)和銷售點〔POS〕應(yīng)用等。28嵌入式操作系統(tǒng)〔OperatingSystem,OS〕是支持嵌入式系統(tǒng)工作的操作系統(tǒng),它負(fù)責(zé)嵌入式系統(tǒng)的全部軟、硬件資源分配、調(diào)度、控制和協(xié)調(diào)等活動,它是嵌入式應(yīng)用軟件的開發(fā)平臺,用戶的其它應(yīng)用程序都建立在嵌入式操作系統(tǒng)之上。嵌入式操作系統(tǒng)通常包括與硬件相關(guān)的底層驅(qū)動軟件、系統(tǒng)內(nèi)核、設(shè)備驅(qū)動接口、通信協(xié)議、圖形界面、標(biāo)準(zhǔn)化瀏覽器等。嵌入式操作系統(tǒng)是嵌入式系統(tǒng)的靈魂,它使得嵌入式系統(tǒng)的開發(fā)效率大大提高,系統(tǒng)開發(fā)的總工作量大大減少,并且極大地提高了嵌入式軟件的可移植性。為了滿足嵌入式系統(tǒng)的要求,嵌入式操作系統(tǒng)必須包含操作系統(tǒng)的一些最根本的功能,用戶可以通過API函數(shù)來使用操作系統(tǒng)。嵌入式操作系統(tǒng)具有編碼體積小、面向應(yīng)用、實時性強(qiáng)、可移植性好、可靠性高以及專用性強(qiáng)等特點。1.5常用的嵌入式操作系統(tǒng)1.5.1嵌入式操作系統(tǒng)及其特點291.LinuxLinux是一種自由和開放源碼的類Unix操作系統(tǒng),它得名于計算機(jī)業(yè)余愛好者LinusTorvalds。目前存在著許多不同的Linux,,但它們都使用了Linux內(nèi)核。Linux可安裝在各種計算機(jī)硬件設(shè)備中,從、平板電腦、路由器和視頻游戲控制臺,到臺式計算機(jī)、大型機(jī)和超級計算機(jī)。Linux是一個領(lǐng)先的操作系統(tǒng),世界上運算最快的10臺超級計算機(jī)運行的都是Linux操作系統(tǒng)。一些流行的主流Linux發(fā)行版,包括Debian〔及其派生物Ubuntu〕,F(xiàn)edora和openSUSE等。2.μC/OS-IIμC/OS-II是一個可裁剪、源代碼開放、結(jié)構(gòu)小巧、搶先式的實時嵌入式操作系統(tǒng),主要用于中小型嵌入式系統(tǒng),具有執(zhí)行效率高、占用空間小、可移植性強(qiáng)、實時性能好和可擴(kuò)展性強(qiáng)等優(yōu)點。該操作系統(tǒng)支持多達(dá)64個任務(wù),大局部嵌入式微處理器均支持μC/OS-II。1.5.2幾種常用嵌入式操作系統(tǒng)303.WindowsCEMicrosoftWindowsCE是Microsoft公司產(chǎn)品,是從整體上為有限資源的平臺設(shè)計的多線程、完整優(yōu)先權(quán)、多任務(wù)的操作系統(tǒng)。它的模塊化設(shè)計允許它對從掌上電腦到專用的工業(yè)控制器的用戶電子設(shè)備進(jìn)行定制。該操作系統(tǒng)的根本內(nèi)核至少需要200KB的ROM。從游戲機(jī)到現(xiàn)在大局部的掌上電腦都采用了WindowsCE作為操作系統(tǒng),其缺點是系統(tǒng)軟件價格過高,影響整個產(chǎn)品的本錢控制。4.VxWorksVxWorks操作系統(tǒng)是美國WindRiver公司于1983年設(shè)計開發(fā)的一種實時操作系統(tǒng)。VxWorks擁有良好的持續(xù)開展能力、高性能的內(nèi)核以及友好的用戶開發(fā)環(huán)境,在實時操作系統(tǒng)領(lǐng)域內(nèi)占據(jù)一席之地。它以其良好的可靠性和卓越的實時性被廣泛地應(yīng)用在通信、軍事、航空、航天等高、精、尖技術(shù)及實時性要求極高的領(lǐng)域中,如衛(wèi)星通信、軍事演習(xí)、導(dǎo)彈制導(dǎo)、飛機(jī)導(dǎo)航等。但大多數(shù)的VxWorksAPI是專用的,VxWorks的價格昂貴。315.pSOSpSOS是ISI公司研發(fā)的產(chǎn)品。pSOS是一個模塊化、高性能、完全可擴(kuò)展的實時操作系統(tǒng),專為嵌入式微處理器設(shè)計,提供了一個完全多任務(wù)環(huán)境,在定制的或商業(yè)的硬件上具有高性能和高可靠性。6.PalmOS3COM公司的PalmOS在掌上電腦和PDA市場上占有很大的市場份額。它有開放的操作系統(tǒng)應(yīng)用程序接口,開發(fā)商可以根據(jù)需要自行開發(fā)所需的應(yīng)用程序。在開發(fā)環(huán)境方面,可以在Windows和Macintosh下安裝PalmPilotDesktop。7.QNXQNX是由加拿大QSSL公司開發(fā)的分布式實時操作系統(tǒng)。該操作系統(tǒng)既能運行于以IntelX86、Pentium等CPU為核心硬件環(huán)境下,也能運行于以PowerPC、MIPS等CPU為核心的硬件環(huán)境。它廣泛應(yīng)用于自動化、控制、機(jī)器人科學(xué)、電信、數(shù)據(jù)通信、航空航天、計算機(jī)網(wǎng)絡(luò)系統(tǒng)、醫(yī)療儀器設(shè)備、交通運輸、平安防衛(wèi)系統(tǒng)、POS機(jī)、零售機(jī)等任務(wù)關(guān)鍵型應(yīng)用領(lǐng)域。328.蘋果iOSiOS是由蘋果公司為iPhone開發(fā)的操作系統(tǒng)。它是以Darwin為根底的,主要是給iPhone、iPodtouch以及iPad使用。原本這個系統(tǒng)名為iPhoneOS,直到2023年6月7日WWDC大會上宣布改名為iOS。iOS的系統(tǒng)架構(gòu)分為四個層次:核心操作系統(tǒng)層、核心效勞層、媒體層、可輕觸層。系統(tǒng)操作占用大概240MB的存儲器空間。9.AndroidAndroid是一種以Linux為根底的開放源碼操作系統(tǒng),主要使用于便攜設(shè)備。Android操作系統(tǒng)最初由AndyRubin開發(fā),最初主要支持。2005年由Google收購注資,并拉攏多家制造商組成開放聯(lián)盟開發(fā)改進(jìn),逐漸擴(kuò)展到平板電腦及其他領(lǐng)域上。2023年末數(shù)據(jù)顯示,僅正式推出兩年的操作系統(tǒng)的Android已經(jīng)超越稱霸十年的諾基亞Symbian系統(tǒng),躍居全球最受歡送的智能平臺。33
1.6嵌入式系統(tǒng)的設(shè)計方法1.嵌入式微處理器及操作系統(tǒng)的選擇嵌入式微處理器可謂多種多樣,品種繁多,而且都在一定領(lǐng)域應(yīng)用廣泛。在嵌入式系統(tǒng)上運行的操作系統(tǒng)也有不少,如VxWorks、Linux,Nuc1ears、WindowsCE等,即使在一個公司之內(nèi),也會同時使用好幾種處理器,甚至幾種嵌入式操作系統(tǒng)。2.開發(fā)工具的選擇目前用于嵌入式系統(tǒng)設(shè)計的開發(fā)工具種類繁多,不僅各種操作系統(tǒng)有各自的開發(fā)工具,在同一系統(tǒng)下開發(fā)的不同階段也使用不同的開發(fā)工具。3.對目標(biāo)系統(tǒng)的觀察與控制要使系統(tǒng)能正常工作,軟件開發(fā)者必須要對目標(biāo)系統(tǒng)具有完全的觀察和控制能力,如硬件的各種存放器、內(nèi)存空間,操作系統(tǒng)的信號量、消息隊列、任務(wù)、堆棧等。1.6.1嵌入式系統(tǒng)的總體考慮341.6.2嵌入式系統(tǒng)的設(shè)計步驟圖1.5嵌入式系統(tǒng)設(shè)計的一般流程351.6.3嵌入式系統(tǒng)的設(shè)計方法圖1.6單片機(jī)系統(tǒng)和嵌入式系統(tǒng)的開發(fā)流程比較36圖1.7傳統(tǒng)嵌入式系統(tǒng)設(shè)計方法和嵌人式系統(tǒng)的軟硬件協(xié)同設(shè)計方法的比較軟硬件協(xié)同設(shè)計方法與傳統(tǒng)設(shè)計相比有2個顯著的特點:①描述軟、硬件使用統(tǒng)一的表示形式;②硬、軟件劃分可以選擇多種方案,直到滿足要求。37嵌入式系統(tǒng)的開發(fā)環(huán)境一般由三個局部組成:宿主機(jī)、調(diào)試仿真器和目標(biāo)機(jī)。其中宿主機(jī)用來完成源代碼編輯、編譯、顯示一局部運行結(jié)果等,操作系統(tǒng)可以是UNIX、Linux和Windows等,硬件可以是PC和工作站等。目標(biāo)機(jī)就是用戶嵌入式程序的運行環(huán)境,CPU可能是任何CPU,常用的有ARM、MIPS、PowerPC、DrangonBall等。操作系統(tǒng)常用的有Linux、μC/OS-II、WindowsCE、Vxworks、等,或者根本沒有操作系統(tǒng)。使用集成開發(fā)軟件開發(fā)基于ARM的應(yīng)用軟件,可以完成系統(tǒng)軟件的編輯、編譯、匯編和鏈接等工作;通過調(diào)試仿真器可以在PC上實現(xiàn)對應(yīng)用軟件的調(diào)試;再使用燒寫軟件,將開發(fā)成功的應(yīng)用系統(tǒng)從宿主機(jī)向目標(biāo)機(jī)下載移植,從而完成整個開發(fā)過程。1.7嵌入式系統(tǒng)的應(yīng)用開發(fā)1.7.1嵌入式系統(tǒng)的開發(fā)環(huán)境38圖1.8嵌入式系統(tǒng)的開發(fā)與調(diào)試環(huán)境示意圖391.指令集模擬器局部嵌入式系統(tǒng)集成開發(fā)環(huán)境提供了指令集模擬器,可方便用戶在PC上完成一局部簡單的調(diào)試工作,但是由于指令集模擬器與真實的硬件環(huán)境相差很大,因此即使用戶是用指令集模擬器調(diào)試通過的程序也有可能無法在真實的硬件環(huán)境下運行,用戶最終必須在硬件平臺上完成整個應(yīng)用的開發(fā)。2.駐留監(jiān)控軟件駐留監(jiān)控軟件〔ResidentMonitors〕是一段運行在目標(biāo)板上的程序,集成開發(fā)環(huán)境中的調(diào)試軟件通過以太網(wǎng)口、并行端口、串行端口等通信端口與駐留監(jiān)控軟件進(jìn)行交互,由調(diào)試軟件發(fā)布命令,通知駐留監(jiān)控軟件控制程序執(zhí)行、讀/寫儲存器、讀/寫存放器和設(shè)置斷點等。駐留監(jiān)控軟件是一種比較低廉有效的調(diào)節(jié)方式,不需要任何其它的硬件調(diào)試和仿真設(shè)備。駐留監(jiān)控軟件的不便之處在于它對硬件設(shè)備的要求比較高。1.7.2嵌入式系統(tǒng)的調(diào)試工具403.JTAG仿真器JTAG仿真器也稱為JTAG調(diào)試器,是通過ARM芯片的JTAG邊界掃描口進(jìn)行調(diào)試的設(shè)備。JTAG仿真器比較廉價,連接比較方便,通過現(xiàn)有的JTAG邊界掃描口與ARMCPU核通信,它無需目標(biāo)儲存器,不占用目標(biāo)端口的任何端口。另外,由于JTAG調(diào)試的目標(biāo)程序是在目標(biāo)板上執(zhí)行的仿真更接近于目標(biāo)硬件,因此,許多接口問題,如高頻操作限制、AC和DC參數(shù)不匹配、電線長度的限制等被最小化了。使用集成開發(fā)環(huán)境配合JTAG仿真器進(jìn)行開發(fā)是目前采用最多的一種調(diào)節(jié)方式。4.在線仿真器在線仿真器使用仿真頭完全取代目標(biāo)板上的CPU,可以完全仿真ARM芯片的行為,提供更加深入的調(diào)試功能。但這類仿真器為了能夠全速仿真時鐘速度高于100MHz的處理器,通常必須采用極其復(fù)雜的設(shè)計和工藝,因而價格比較昂貴。在線仿真器常用在ARM的硬件開發(fā)中,在軟件的開發(fā)中使用較少,其價格昂貴也是在線仿真器難以普及的因素。411.非操作系統(tǒng)層次的應(yīng)用非操作系統(tǒng)層次的應(yīng)用,主要是在一些結(jié)構(gòu)簡單的系統(tǒng)中或在實時性要求非常高的系統(tǒng)中,許多時候用于代替原來8位/16位單片機(jī)的應(yīng)用。隨著32位單片機(jī)本錢的不斷降低,其本錢已與8位單片機(jī)相差無幾。因此,非操作系統(tǒng)層次的應(yīng)用也越來越廣泛。2.操作系統(tǒng)非GUI層次的應(yīng)用操作系統(tǒng)非GUI層次的應(yīng)用,主要是指其應(yīng)用程序建立在操作系統(tǒng)根底上,是為了實現(xiàn)程序的多任務(wù)及實時性,此類應(yīng)用在人機(jī)交互方面沒有很高的要求,可選擇的操作系統(tǒng)有許多。3.操作系統(tǒng)GUI層次的應(yīng)用操作系統(tǒng)GUI層次的應(yīng)用,主要是為了方便實現(xiàn)人機(jī)交互功能、網(wǎng)絡(luò)功能、數(shù)據(jù)庫功能以及其它更復(fù)雜的應(yīng)用。GUI層次的開發(fā),除了借助于操作系統(tǒng)及GUI庫強(qiáng)大的功能,更重要的是可以讓程序開發(fā)人員把關(guān)注點集中在高層的目標(biāo)與任務(wù)的實現(xiàn)中,使嵌入式系統(tǒng)應(yīng)用的開發(fā)更簡單,讓開發(fā)速度及開發(fā)效率更高1.7.3嵌入式系統(tǒng)的應(yīng)用模式421.需要交叉編譯工具嵌入式系統(tǒng)采用的處理器一般與PC不同,結(jié)構(gòu)較簡單,功耗較低。由于嵌入式系統(tǒng)目標(biāo)機(jī)上的資源較為有限〔內(nèi)存外存容量小,顯示功能弱〕,直接在目標(biāo)機(jī)上開發(fā)和調(diào)試應(yīng)用軟件幾乎不可能。因此,目標(biāo)機(jī)的嵌入式應(yīng)用軟件開發(fā)需要放在高性能計算機(jī)上的集成開發(fā)環(huán)境上進(jìn)行,由于PC的大量普及和使用,現(xiàn)在的嵌入式集成開發(fā)環(huán)境也大多運行在PC上。需要交叉編譯工具的另一個原因是嵌入式系統(tǒng)處理器芯片的指令系統(tǒng)與PC處理器芯片的指令系統(tǒng)不同。一般情況下,PC的處理器芯片是X86芯片,使用的指令系統(tǒng)是X86指令系統(tǒng),而ARM9芯片運行的是ARM指令系統(tǒng),兩者有很大差異。因此,用ARMADS集成開發(fā)環(huán)境編寫的C語言程序需要經(jīng)過交叉編譯器才能生成運行在目標(biāo)機(jī)上的ARM9機(jī)器語言程序。1.7.4嵌入式應(yīng)用軟件的開發(fā)432.通過仿真手段進(jìn)行調(diào)試目標(biāo)機(jī)執(zhí)行程序經(jīng)過交叉編譯后,還要經(jīng)過調(diào)試排錯,確認(rèn)能夠正常運行才能使用。那么如何進(jìn)行調(diào)試排錯呢?顯然在目標(biāo)機(jī)上調(diào)試排錯是非常困難的。原因是輸入輸出方式較少,多數(shù)嵌入式系統(tǒng)顯示面積小,甚至沒有顯示屏,從而無法顯示調(diào)試信息;調(diào)試工具需要較大存儲空間,對嵌入式系統(tǒng)來說,比較困難。但對于臺式機(jī)而言,這些條件很容易滿足。因此,通常的調(diào)試也是在PC上完成的,方式就是仿真調(diào)試。3.目標(biāo)機(jī)是最終的運行環(huán)境對嵌入式應(yīng)用程序來說,其開發(fā)、調(diào)試往往是在PC上完成的,但它最終的運行環(huán)境是目標(biāo)機(jī)。嵌入式應(yīng)用程序開發(fā)調(diào)試完成后,要下載到目標(biāo)機(jī)上運行,正確無誤運行后才表示成功。如果不成功或需要進(jìn)一步完善,那么需重新回到PC上運行修改調(diào)試。444.執(zhí)行應(yīng)用程序的指令通常寫入操作系統(tǒng)
在常用的嵌入式系統(tǒng)中,應(yīng)用程序的啟動執(zhí)行指令通常需要預(yù)先寫入操作系統(tǒng)的任務(wù)調(diào)度程序里,編輯在目標(biāo)程序中。因此,嵌入式應(yīng)用程序許與操作系統(tǒng)有一定聯(lián)系,開發(fā)者不僅要了解應(yīng)用程序,也要了解操作系統(tǒng),知道如何讓一個應(yīng)用程序執(zhí)行。5.系統(tǒng)資源有限
在進(jìn)行嵌入式應(yīng)用軟件的開發(fā)時,就必須考慮可用資源問題。以存儲容量為例,嵌入式系統(tǒng)的ROM容量一般只有幾兆字節(jié),對目標(biāo)程序有嚴(yán)格的長度限制,這樣程序員在編程時就必須考慮這個限制。6.控制特定部件
在嵌入式應(yīng)用軟件開發(fā)過程中,程序員往往需要針對特定的部件做更加細(xì)致的編寫作業(yè)。45嵌入式系統(tǒng)的設(shè)計與開發(fā),就是利用嵌入式微處理器/微控制器內(nèi)部的特定資源和擴(kuò)展的外部資源,來設(shè)計和開發(fā)特定的目標(biāo)系統(tǒng)。對于基于ARM+Linux嵌入式系統(tǒng)的學(xué)習(xí),初步具備從事ARM嵌入式系統(tǒng)應(yīng)用開發(fā)的能力,應(yīng)掌握ARM嵌入式系統(tǒng)的硬件結(jié)構(gòu)與工作原理、程序設(shè)計語言、Linux開發(fā)環(huán)境的構(gòu)建、Linux操作系統(tǒng)的移植和開發(fā)工具的使用,ARM+Linux嵌入式系統(tǒng)的設(shè)計與開發(fā)方法,包括嵌入式系統(tǒng)的設(shè)計方法、ARM處理器芯片的選擇、嵌入式系統(tǒng)應(yīng)用與接口設(shè)計、嵌入式設(shè)計開發(fā)平臺的使用等內(nèi)容。同時應(yīng)熟悉與嵌入式系統(tǒng)開發(fā)相關(guān)的有關(guān)領(lǐng)域知識。增多,有助于降低企業(yè)工程開發(fā)本錢、保持開發(fā)的連續(xù)性。1.8嵌入式系統(tǒng)的學(xué)習(xí)探討1.8.1嵌入式系統(tǒng)的學(xué)習(xí)內(nèi)容46要學(xué)好嵌入式系統(tǒng)及其開發(fā)應(yīng)用,首先必須掌握嵌入式系統(tǒng)技術(shù)根底。嵌入式系統(tǒng)技術(shù)根底是進(jìn)行嵌入式設(shè)計和開發(fā)的關(guān)鍵。技術(shù)根底決定了一個人學(xué)習(xí)知識、掌握技能的能力。其次,對于嵌入式系統(tǒng)的學(xué)習(xí),必須要有一個較好的嵌入式系統(tǒng)開發(fā)平臺和開發(fā)環(huán)境。功能全面的開發(fā)平臺一方面為學(xué)習(xí)提供了良好的開發(fā)環(huán)境,另一方面開發(fā)平臺本身也是一般的典型實際應(yīng)用系統(tǒng)。最后,對于嵌入式系統(tǒng)的學(xué)習(xí),必須要有教師指導(dǎo),并選用幾本好的教材,采用適宜、有效的學(xué)習(xí)方法。嵌入式技術(shù),內(nèi)容新穎,綜合性強(qiáng),實踐性強(qiáng),實際應(yīng)用開展前景廣闊。因此需要理論與實踐相結(jié)合,課內(nèi)與課外相結(jié)合,研究性學(xué)習(xí)與課題開發(fā)相結(jié)合。在具備嵌入式系統(tǒng)及其開發(fā)應(yīng)用的根底知識和根本技能后,進(jìn)行課題的設(shè)計開發(fā)時一個非常有效的方法。1.8.2嵌入式系統(tǒng)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 代寫課題申報書多少錢
- 成囊材料市場分析及競爭策略分析報告
- 企業(yè)生產(chǎn)線用工合同范本
- 中國傳統(tǒng)文化學(xué)習(xí)心得體會
- 廠家求購鋼材合同范本
- 臨床護(hù)理習(xí)題(附答案)
- 機(jī)械制造基礎(chǔ)模擬試題含答案
- 代理經(jīng)營承包協(xié)議合同范本
- 箱包維修合同范本
- 流體力學(xué)復(fù)習(xí)題(含答案)
- 廣東省廣州市2025屆高三下學(xué)期一模考試數(shù)學(xué)試題含解析
- 環(huán)衛(wèi)車輛操作及維護(hù)培訓(xùn)方案
- 醫(yī)療器械質(zhì)量負(fù)責(zé)人崗位職責(zé)
- 湘陰縣易聚餐飲有限公司部門備用金業(yè)務(wù)財務(wù)融合流程設(shè)計
- 第十七屆山東省職業(yè)院校技能大賽機(jī)器人系統(tǒng)集成應(yīng)用技術(shù)樣題1學(xué)生賽
- 血管通路的介入治療
- 臨床三基考試題庫(附答案)
- 2024年浙江省杭州市拱墅區(qū)中考語文一模試卷
- 蘇科版八年級物理上冊同步學(xué)與練第14課光的反射(原卷版+解析)
- 2024年上海市中考語文真題卷及答案解析
- 校園直飲水機(jī)供貨安裝及售后服務(wù)方案
評論
0/150
提交評論