




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、嵌入式底層軟件開發(fā)方法自從 20世紀(jì) 70 年代單片機(jī)出現(xiàn)以來,嵌入式系統(tǒng)已獲得了較為深入的研究, 提出了一些嵌入式軟件的開發(fā)方法,但嵌入式系統(tǒng)仍處于發(fā)展階段,嵌入式系統(tǒng) 已經(jīng)顯示出廣闊的應(yīng)用前景。1. 嵌入式系統(tǒng)的定義嵌入式系統(tǒng)又稱為嵌入式計算機(jī)系統(tǒng),是指嵌入到對象體系中的專用計算機(jī)系 統(tǒng)。對象系統(tǒng)則是指嵌入式系統(tǒng)所嵌入的宿主系統(tǒng),嵌入性、專用性與計算機(jī)系統(tǒng) 是嵌入式系統(tǒng)的三個基本要素。嵌入式系統(tǒng)通常被描述為:以應(yīng)用為中心,以計 算機(jī)技術(shù)為基礎(chǔ),軟硬件可剪裁,適應(yīng)于應(yīng)用系統(tǒng)對功能、可靠性、成本、體積和 功耗有嚴(yán)格要求的專業(yè)計算機(jī)系統(tǒng)。2. 嵌入式系統(tǒng)的發(fā)展歷程 嵌入式系統(tǒng)是在硬件和軟件交替發(fā)
2、展的支撐下逐漸趨于穩(wěn)定和成熟的,它有著 悠久的歷史。從 20世紀(jì) 70年代單片機(jī)的出現(xiàn)到現(xiàn)在各種嵌入式微處理器、微控制 器的大規(guī)模應(yīng)用,嵌入式系統(tǒng)己經(jīng)有了 30 多年的發(fā)展歷史。縱觀嵌入式技術(shù)的發(fā)展, 大致經(jīng)歷了以下幾個發(fā)展階段。(1) 無操作系統(tǒng)階段:主要是以功能簡單的專用計算機(jī)或單片機(jī)為核心的可編 程控制器形式存在的系統(tǒng),具有監(jiān)測、伺服、設(shè)備指示等功能,一般沒有操作系統(tǒng) 的支持,通過匯編語言編程對系統(tǒng)進(jìn)行直接控制。主要特點是:系統(tǒng)結(jié)構(gòu)和功能都 相對單一,處理效率較低,存儲容量較小,幾乎沒有用戶接口,比較適合于各類專 用領(lǐng)域。(2) 以嵌入式處理器和嵌入式操作系統(tǒng)為標(biāo)志的嵌入式系統(tǒng):主要特點
3、是出現(xiàn) 了高可靠、低功耗的嵌入式處理器,嵌入式操作系統(tǒng)能運行于各種不同類型的微處 理器上,兼容性好;操作系統(tǒng)內(nèi)核精小、效率高,并且具有高度的模塊化和擴(kuò)展性; 片上系統(tǒng)(SystemOnChip, SOC)使得嵌入系統(tǒng)越來越小,具有大量的應(yīng)用程序接口, 開發(fā)應(yīng)用程序簡單,應(yīng)用軟件豐富。3. 嵌入式系統(tǒng)的構(gòu)成及其特點1) 嵌入式系統(tǒng)的組成嵌入式系統(tǒng)主要由嵌入式處理器、相關(guān)支撐硬件、嵌入式操作系統(tǒng)及應(yīng)用軟件 系統(tǒng)等組成,具有專用性、可嵌入性、實時性、可移植性和分布式等特點。其中, 嵌入式微處理器是嵌入式硬件系統(tǒng)的核心部分,它擔(dān)負(fù)著控制、協(xié)調(diào)系統(tǒng)工作的重 要任務(wù),通常具有實時多任務(wù)處理能力、中斷處理能
4、力、存儲器保護(hù)能力和低功耗 能力;支撐硬件主要包括存儲介質(zhì)、通信部件和顯示部件等;支撐硬件的驅(qū)動程 序、操作系統(tǒng)、應(yīng)用軟件等一起構(gòu)成嵌入式軟件。2) 嵌入式系統(tǒng)的特點嵌入式系統(tǒng)是一個軟件和硬件的集合體,它將先進(jìn)的計算機(jī)技術(shù)、半導(dǎo)體技術(shù)、 電子技術(shù)與應(yīng)用軟件開發(fā)技術(shù)相結(jié)合,是一個技術(shù)密集、資金密集、不斷創(chuàng)新的知 識集成系統(tǒng)。與通用計算機(jī)系統(tǒng)相比,嵌入式系統(tǒng)在很多方面獨具特色,下面介紹 了嵌入式系統(tǒng)的幾大特點。(1) 軟硬件緊密結(jié)合:嵌入式系統(tǒng)的主要特征之一是軟件與硬件的緊密結(jié)合, 其底層的組織結(jié)構(gòu)常常因為所選用硬件體系的不同而發(fā)生變化。平臺差異性是不存 在通用解決方案的主要原因之一,也使得嵌入式
5、系統(tǒng)具有多種專用工具和特殊方法。(2) 多樣性 (專用性、定制性 ):每個嵌入式計算機(jī)系統(tǒng)總是跟具體的應(yīng)用聯(lián)系在 一起,以應(yīng)用為中心,為具體的應(yīng)用服務(wù)。因此嵌入式系統(tǒng)是多樣化的,需要為滿 足不同的應(yīng)用需求而專門定制,其中既包括硬件系統(tǒng)的多樣性,也包括軟件系統(tǒng)的 多樣性。(3) 資源有限性:受制造工藝和應(yīng)用環(huán)境的限制,嵌入式系統(tǒng)擁有的資源十分 有限。主要表現(xiàn)在對整個計算機(jī)系統(tǒng)的體積、功耗、 CPU(Central ProcessingUnit, 中央處理器 )的處理能力、存儲器的容量和性能等方面都有較多的限制。(4) 高實時性:嵌入式系統(tǒng)的計算處理過程往往需要在規(guī)定時限內(nèi)完成,這就 要求系統(tǒng)對外
6、部事件的反應(yīng)要及時準(zhǔn)確。(5) 低功耗:功耗問題是嵌入式系統(tǒng)設(shè)計中普遍關(guān)注的熱點和難點,特別是對 于電池供電的系統(tǒng)。降低功耗不僅可以延長用電池供電的設(shè)備的工作時間,同時也 可以更容易解決系統(tǒng)的散熱問題。(6) 高可靠性:嵌入式系統(tǒng)對可靠性的要求與系統(tǒng)的規(guī)模、應(yīng)用環(huán)境和目的有 密切關(guān)系。一些實時系統(tǒng)對可靠性的要求極高,如航空航天技術(shù)。嵌入式系統(tǒng)的可 靠性涉及到很多方面,如機(jī)械設(shè)計的可靠性、嵌入式硬件與軟件的可靠性等。4 嵌入式系統(tǒng)開發(fā)的難點隨著電子技術(shù)的發(fā)展及制造工藝的提高,嵌入式系統(tǒng)的片內(nèi) ROM (Read Only Memory,只讀存儲器)容量不斷增大,CPU執(zhí)行速率不斷提高,尤其是嵌入
7、式操作 系統(tǒng)的出現(xiàn),這使得嵌入式系統(tǒng)在代碼實現(xiàn)上發(fā)展迅速,現(xiàn)已出現(xiàn)了多種嵌入式編 程語言及其編譯環(huán)境,如嵌入式 C、C+、Java、Linux 等等。盡管近幾年嵌入式系 統(tǒng)發(fā)展迅速,但嵌入式系統(tǒng)的特性及其開發(fā)方法的不完善,使得嵌入式系統(tǒng)的開發(fā) 非常復(fù)雜和昂貴,嵌入式開發(fā)仍面臨著以下重要的問題:(1) 嵌入式系統(tǒng)分析和設(shè)計方面沒有統(tǒng)一的標(biāo)準(zhǔn):分析設(shè)計方法不統(tǒng)一、從分 析設(shè)計到制作和編程沒有一個始終一貫的工程化方法,使得產(chǎn)品形成的每一個過程 受人為因素影響十分嚴(yán)重、分析設(shè)計的成果不能被開發(fā)類似項目或產(chǎn)品重用。(2) 嵌入式系統(tǒng)的專用性很強(qiáng),嵌入式系統(tǒng)的一個最大特點就是軟硬件緊密結(jié) 合,為此,嵌入式
8、軟件 (尤其是嵌入式底層軟件 )的設(shè)計和驗證要充分考慮硬件 因素。軟件需要根據(jù)系統(tǒng)硬件的變化和增減不斷進(jìn)行修改。而且嵌入式系統(tǒng) 中微處理器(Micro-ControllerUnit, MCU)的系列十分豐富,使得 MCU的編譯 環(huán)境無法做到完全的通用。(3) 在實際產(chǎn)品應(yīng)用中,嵌入式系統(tǒng)大多數(shù)是事件驅(qū)動的系統(tǒng),而且外部事件 是多發(fā)的和并發(fā)的隨機(jī)事件,即異步事件。嵌入式應(yīng)用軟件系統(tǒng)需要有效地處理 并發(fā)事件,所以往往采用多線程 (任務(wù))運行機(jī)制,以適應(yīng)這種復(fù)雜的并發(fā)環(huán)境,這 就增加了軟件設(shè)計的復(fù)雜度。(4) 嵌入式軟件運行在特定的硬件體系和環(huán)境中,在進(jìn)行設(shè)計時,不但需要考 慮各個節(jié)點間的通信和同步
9、問題,還需要考慮整個系統(tǒng)的時序問題。(5) 由于嵌入式系統(tǒng)多工作于工業(yè)企業(yè)現(xiàn)場或軍用裝備,不允許死機(jī)和系統(tǒng)重 啟發(fā)生,一旦出現(xiàn)故障,有可能造成整個生產(chǎn)的混亂,甚至產(chǎn)生嚴(yán)重后果,因此對 可靠性和安全性要求很高。這使得嵌入式系統(tǒng)對可靠性、防危性、和容錯性等功能有 更苛刻的要求。以上幾個方面的問題成為近幾年來制約嵌入式系統(tǒng)發(fā)展的主要瓶頸,使得大部 分從事嵌入式系統(tǒng)應(yīng)用開發(fā)的組織和團(tuán)體,基本上是采用小組甚至是作坊式的運作 模式。這使得開發(fā)較復(fù)雜或大型系統(tǒng)的工作變得十分困難甚至無法進(jìn)行,或因為系 統(tǒng)需求的不斷變化、小組成員的流動導(dǎo)致項目失敗。1978年L.L.Constantine和E.YOurdon提
10、出了結(jié)構(gòu)化的軟件設(shè)計方法,經(jīng)過 30 多年的研究及應(yīng)用,已成為技術(shù)最成熟、應(yīng)用最廣泛的軟件開發(fā)方法之一。結(jié)構(gòu)化方法強(qiáng)調(diào)過程抽象化和功能模塊化。其中,結(jié)構(gòu)是指系統(tǒng)內(nèi)各個組成 要素之間的相互聯(lián)系、相互作用的框架。結(jié)構(gòu)化方法的基本思想可以概括為:用系 統(tǒng)工程的思想和工程化的方法,按用戶至上的原則,自頂向下、逐步求精地對信息 系統(tǒng)進(jìn)行分析與設(shè)計。采用模塊化技術(shù)、分而治之的方法,將系統(tǒng)按功能分解為若 干模塊,模塊內(nèi)部由順序、分支、循環(huán)基本控制結(jié)構(gòu)組成,應(yīng)用子程序?qū)崿F(xiàn)模塊化結(jié)構(gòu)化方法是用基于功能分解的觀點來分析和解決問題的,即把一個復(fù)雜的系 統(tǒng)分解成若干個盡可能獨立的子系統(tǒng)、子模塊,采用 “自頂向下 ”逐
11、層分析,整個 過程從一個階段到另一個階段,其間有明顯的間隔。任何軟件系統(tǒng)都可以用數(shù)據(jù)流 圖表示,理論上,結(jié)構(gòu)化方法可以用于任意一種軟件系統(tǒng)的開發(fā)。使用結(jié)構(gòu)化方法 開發(fā)的軟件運行效率高,且能夠增加軟件規(guī)格說明的可讀性及系統(tǒng)的可靠性,因為 數(shù)據(jù)流圖容易理解,有利于開發(fā)人員與客戶的交流。4.1 結(jié)構(gòu)化方法的不足結(jié)構(gòu)化設(shè)計方法中,軟件系統(tǒng)結(jié)構(gòu)對系統(tǒng)功能的變化十分敏感,功能的變化往 往意味著需要重新設(shè)計。結(jié)構(gòu)化方法中過程抽象化和功能模塊化的特點使其在設(shè)計 過程中有如下不足:1) 與用戶交流不直觀,難以應(yīng)對需求變化結(jié)構(gòu)化分析設(shè)計是一種面向過程的方法,形成的系統(tǒng)模型實際上是信息的一種 抽取,這種模型用戶難以
12、理解。結(jié)構(gòu)化分析設(shè)計對需求變化的適應(yīng)能力比較弱,當(dāng) 用戶需求信息發(fā)生變化或外界條件改變時,設(shè)計者無法直觀地改變系統(tǒng),必須映象 為數(shù)據(jù)流及過程后才有可能實現(xiàn)。2) 開發(fā)過程繁瑣,從分析到設(shè)計難以實現(xiàn)結(jié)構(gòu)化分析設(shè)計中的數(shù)據(jù)流程圖是分層次展現(xiàn)系統(tǒng)模型的,這樣的設(shè)計方法難 以詳細(xì)地了解整個系統(tǒng);而且結(jié)構(gòu)化方法中設(shè)計文檔很難與分析文檔對應(yīng),因為二 者的表示體系不一致,從分析到設(shè)計的 “轉(zhuǎn)換” 不存在可靠的轉(zhuǎn)換規(guī)則,而更多地 是帶有人為的隨意性,容易因理解上的錯誤而埋下隱患。3) 開發(fā)周期長結(jié)構(gòu)化分析設(shè)計強(qiáng)調(diào)弄清楚用戶信息需求,事實上很多情況下信息需求是難以 一次性弄清的,特別是比較大型的系統(tǒng)。而且,設(shè)計
13、過程中從結(jié)構(gòu)化分析到結(jié)構(gòu)化 程序設(shè)計的轉(zhuǎn)換不可靠,設(shè)計出的軟件難以重用,進(jìn)而延緩了開發(fā)的進(jìn)度。目前嵌入式系統(tǒng)的應(yīng)用越來越廣泛,作為嵌入式系統(tǒng)主要部分的嵌入式軟件的 需求也越來越大,但因為嵌入式系統(tǒng)實時性、安全性、硬件體系的多樣性等特性的 要求,在不同的嵌入式硬件體系上開發(fā)出高質(zhì)量、符合各種要求的嵌入式軟件的困 難也越來越大。在嵌入式系統(tǒng)的開發(fā)過程中,不僅要盡可能的縮減開發(fā)周期和費 用,更重要的是開發(fā)出高質(zhì)量的嵌入式應(yīng)用程序。這些嵌入式軟件不僅要符合嵌入 式系統(tǒng)可靠性、穩(wěn)定性、實時性等要求,還要求滿足軟件的可重用性、可配置性和 可擴(kuò)展性,以提高嵌入式軟件的開發(fā)效率和質(zhì)量。嵌入式系統(tǒng)規(guī)模不斷擴(kuò)大,
14、嵌入式軟件開發(fā)已變成一項極具挑戰(zhàn)性、較復(fù)雜的 任務(wù)。嵌入式系統(tǒng)的基本特點對嵌入式軟件系統(tǒng)的開發(fā)具有重要影響,這些影響主 要包括:1) 實時性的影響實時性是嵌入式系統(tǒng)的重要特性之一,影響著嵌入式軟件設(shè)計的多個方面,如 構(gòu)件模型、應(yīng)用設(shè)計、系統(tǒng)設(shè)計等方面。在設(shè)計構(gòu)件模型時,必須有效地表示實時 屬性,即構(gòu)件的實現(xiàn)模型應(yīng)該提供機(jī)制保證對構(gòu)件接口的調(diào)用能夠滿足實時性要求; 在設(shè)計軟件體系結(jié)構(gòu)時要特別重視解決并行、異步、中斷等問題,以滿足系統(tǒng)對實 時性的要求;而在系統(tǒng)設(shè)計時,對構(gòu)件的選擇、修改、組裝、系統(tǒng)驗證與評估時都 必須將實時性作為一個主要的設(shè)計要素。2) 資源有限性的影響 資源有限性是嵌入式系統(tǒng)的獨
15、特點,其影響主要表現(xiàn)在構(gòu)件模型和系統(tǒng)設(shè)計等 方面。在分析設(shè)計模型時,要求對有限的資源作出顯式的描述,方便在系統(tǒng)設(shè)計階 段對構(gòu)件的選用和對系統(tǒng)的驗證,節(jié)省嵌入式系統(tǒng)的硬件資源 (例如內(nèi)存 );而整體 系統(tǒng)設(shè)計時,要充分考慮系統(tǒng)的有限資源,進(jìn)行合理的系統(tǒng)設(shè)計。3) 應(yīng)用專用性的影響專用性是嵌入式系統(tǒng)的三個基本要素之一,主要體現(xiàn)為嵌入式硬件體系的多樣 性。為滿足多樣性的要求,在應(yīng)用分析和設(shè)計時,要求識別出應(yīng)用的共同點,確定 應(yīng)用的變化點,預(yù)測應(yīng)用可能的變化,以設(shè)計出靈活易變的體系結(jié)構(gòu)以適應(yīng)領(lǐng)域內(nèi) 各種潛在的變化,使構(gòu)件的重用性更高。4) 軟件代碼健壯性的要求 嵌入式系統(tǒng)往往工作環(huán)境惡劣、受電噪聲干擾
16、較大,而且隨著軟件復(fù)雜度越來 越高,系統(tǒng)運行不穩(wěn)定的可能性愈來愈高,因此,嵌入式系統(tǒng)應(yīng)用對軟件的健壯性 提出了更高的要求,追求更高的健壯性、可靠性是嵌入式軟件的特點之一。5) 底層硬件驅(qū)動程序 (底層軟件 )的特殊要求 嵌入式系統(tǒng)與普通的軟件系統(tǒng)不同,它不僅包括高端的應(yīng)用軟件,還有底層的 硬件體系及其底層軟件。底層軟件完全針對硬件體系,專用性強(qiáng);嵌入式軟件是應(yīng) 用在嵌入式設(shè)備上的應(yīng)用軟件,這就決定了它比傳統(tǒng) PC 機(jī)上的軟件更多地暴露給 用戶對硬件的操作接口。4.2 結(jié)構(gòu)化的嵌入式軟件開發(fā)方法結(jié)構(gòu)化的嵌入式軟件設(shè)計流程是:按照系統(tǒng)總體規(guī)劃和總體設(shè)計,由設(shè)計人員 分別編程設(shè)計各功能模塊;接著依據(jù)
17、軟件結(jié)構(gòu)和程序流程,將功能模塊組成結(jié)構(gòu)化 程序,實現(xiàn)系統(tǒng)整體功能,滿足系統(tǒng)要求,解決實際問題。具有如下特點:(1) 執(zhí)行效率:結(jié)構(gòu)化方 法比面向?qū)ο?、?gòu) 件化方法的執(zhí) 行效率要高,因為它 可以產(chǎn)生更直接、效率更高的代碼,所以對于一些嵌入式的系統(tǒng),結(jié)構(gòu)化方法產(chǎn)生 的系統(tǒng)更小、運行效率更高。(2) 可重用性:結(jié)構(gòu)化設(shè) 計方法中各功能通 過接口與外界 交互,當(dāng)接口發(fā)生變 化時往往造成系統(tǒng)結(jié)構(gòu)較大變動,難以擴(kuò)充新的功能接口,因此結(jié)構(gòu)化的設(shè)計方法 復(fù)用性差;面向?qū)ο蠛蜆?gòu)件化設(shè)計方法分別通過調(diào)用對象和構(gòu)件來設(shè)計系統(tǒng),遇到 類似的問題時,只需要根據(jù)要求修改對象或構(gòu)件即可,因此這兩種方法具有很好的 可重用性。
18、(3) 應(yīng)用的范圍:結(jié)構(gòu)化 方法適用于數(shù)據(jù)少 而操作多的問 題,實踐證明對于以 功能為主的系統(tǒng),結(jié)構(gòu)化方法比較適用。5 嵌入式底層構(gòu)件開發(fā)技術(shù)現(xiàn)有的嵌入式開發(fā)方法多集中在嵌入式軟件開發(fā)方面,尤其是基于嵌入式操作 系統(tǒng)的嵌入式應(yīng)用軟件開發(fā)。而嵌入式系統(tǒng)開發(fā)區(qū)別與普通軟件開發(fā)的最大之處就 是:嵌入式系統(tǒng)是軟硬件緊密結(jié)合的系統(tǒng),所有的嵌入式軟件(嵌入式應(yīng)用程序和嵌 入式操作系統(tǒng))都必須運行在特定的硬件體系上。鑒于嵌入式系統(tǒng)需要硬件體系支持的特殊性,嵌入式底層軟件 (即硬件驅(qū)動程序 ) 的開發(fā)便成為嵌入式軟件開發(fā)的重要組成環(huán)節(jié)。在硬件構(gòu)件基礎(chǔ)的上,本節(jié)給出應(yīng) 用于嵌入式底層軟件上的底層構(gòu)件 (Embe
19、ddedU nderl ying Comp on e nt EUC)的定義。5.1 基于硬件構(gòu)件的嵌入式底層構(gòu)件嵌入式底層構(gòu)件(EUC)是在硬件構(gòu)件的基礎(chǔ)上,根據(jù)硬件構(gòu)件的實際功能和接 口,實現(xiàn)與之相對應(yīng)的硬件驅(qū)動模塊的分解,并將硬件驅(qū)動底層程序的實現(xiàn)、頭文 件定義及其文件描述封裝成一個可重用的構(gòu)件實體,并提供一系列規(guī)范的輸入/輸出 接口,供其他嵌入式應(yīng)用程序調(diào)用。一個底層構(gòu)件對應(yīng)一個硬件構(gòu)件,但并不是所有的硬件構(gòu)件都需要底層構(gòu)件驅(qū) 動,如只需要硬件接線的電源硬件構(gòu)件。底層構(gòu)件同硬件構(gòu)件一樣,也具有被獨立 部署和被第三方組裝的特性。實現(xiàn)內(nèi)部硬件構(gòu)件功能稱之為內(nèi)部底層構(gòu)件,同樣實 現(xiàn)外部硬件構(gòu)件
20、功能稱之為外部底層構(gòu)件。5.2 底層構(gòu)件的實現(xiàn)1. 底層構(gòu)件的實現(xiàn)過程底層構(gòu)件的實現(xiàn)為嵌入式系統(tǒng)底層軟件開發(fā)提供具有重用性的功能構(gòu)件,是開 發(fā)嵌入式底層軟件的一種重要方法。與硬件構(gòu)件的實現(xiàn)過程相似,底層構(gòu)件也注重 構(gòu)件的重用性與移植性,同樣方便修改、發(fā)布和替換,得到了實驗人員的認(rèn)可。底層構(gòu)件的概念模型參加圖 4.1,從圖中可以看出,底層構(gòu)件可以分為底層軟件、 頭文件、接口描述和文件描述四個部分。其中,頭文件用于實現(xiàn)底層構(gòu)件的外部硬 件接線和內(nèi)部寄存器的定義轉(zhuǎn)換,即硬件構(gòu)件的引腳定義和寄存器定義;接口是底 層構(gòu)件與其他構(gòu)件交互的唯一通道,是應(yīng)用程序調(diào)用底層構(gòu)件的通道;文件描述用 于描述整個底層構(gòu)
21、件的相關(guān)信息;底層軟件用于實現(xiàn)構(gòu)件的具體邏輯功能,對外界 而言底層軟件是一個不可見的黑盒,只是通過接口實現(xiàn)交互。EUC=底層軟件,頭文件,接口描述,文件描述底層軟件=各種具體硬件構(gòu)件的軟件方法描述的實現(xiàn)過程頭文件=實現(xiàn)底層構(gòu)件與具體硬件接線及寄存器之間的對應(yīng)接口描述=接口實體接口實體=硬件構(gòu)件的方法描述方法描述=Direction Return_TypeFunctionName(Parameter_list)Directi on :接口方向In :輸入;Out :輸出Return_Type :返回值類型FunctionName:功能函數(shù)名稱Parameter_list:參數(shù)列表模塊描述=模塊功
22、能描述,頭文件信息描述,對外接口描述,注意事項等圖 5.1 底層構(gòu)件的概念模型底層構(gòu)件的主要設(shè)計思想是:在嵌入式底層軟件開發(fā)過程中,根據(jù)硬件系統(tǒng)中 設(shè)計完成的硬件構(gòu)件,分析硬件構(gòu)件的功能和接口,設(shè)計實現(xiàn)與之對應(yīng)的功能程序 (即底層軟件 )、頭文件以及相應(yīng)的外部接口模塊,并封裝成底層構(gòu)件,應(yīng)用時供設(shè) 計者選擇使用。底層構(gòu)件的實現(xiàn)過程如圖 4.3 所示,是為嵌入式底層軟件提供具有 重用性和移植性的底層功能函數(shù)的過程。2. 底層構(gòu)件的應(yīng)用過程底層構(gòu)件的應(yīng)用過程就是在系統(tǒng)硬件體系設(shè)計實現(xiàn)后,根據(jù)硬件體系中選用的 硬件構(gòu)件,調(diào)用相應(yīng)的底層構(gòu)件;并根據(jù)硬件構(gòu)件的接口實現(xiàn),修改底層構(gòu)件頭文 件中的引腳定義;
23、最后,將這些底層構(gòu)件添加到工程文件中,通過接口即可實現(xiàn)應(yīng) 用程序?qū)Φ讓訕?gòu)件的調(diào)用。主程序、中斷子程序、功能程序接口底層程序底層程序硬件驅(qū)動程序構(gòu)件模型 1構(gòu)件模型 2可重用底層構(gòu)件底層構(gòu)件庫頭文件頭文件頭文件硬件構(gòu)件圖 5.2 底層構(gòu)件實現(xiàn)過程5.3 基于底層構(gòu)件 的嵌入式底層軟 件編程思想1) 底層構(gòu)件與硬 件構(gòu)件相分離的命 名規(guī)則由于底層構(gòu)件與硬件構(gòu)件存在對應(yīng)關(guān)系,底層軟件中包含許多與硬件構(gòu)件密切 相關(guān)的寄存器、標(biāo)志位和變量等信息,因此,為了滿足底層構(gòu)件可重用與可移植的 思想,底層軟件中與硬件構(gòu)件密切相關(guān)的信息命名時要與硬件構(gòu)件分離,只是在頭 文件的引腳定義、寄存器定義(在頭文件的封裝原則中詳細(xì)講解)中實現(xiàn)二者的對應(yīng) 關(guān)系即可。2) 底層構(gòu)件中頭 文件的封裝原則頭文
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 江蘇生物試題及答案2024高考
- 大學(xué)物理經(jīng)典案例題及答案2025
- 文秘技師試題及答案
- 探討農(nóng)業(yè)電商的趨勢試題及答案
- 注冊土木工程師課堂學(xué)習(xí)試題及答案
- 教師教育教學(xué)方法探討試題及答案
- 電商助力農(nóng)業(yè)結(jié)構(gòu)調(diào)整考題及答案
- 施工現(xiàn)場安全風(fēng)險管理試題
- 幼兒園入園測試卷及答案
- 英語四級試卷及答案語文
- 2024用電信息采集系統(tǒng)技術(shù)規(guī)范第2部分:集中器和采集器
- 代理招商合作合同樣本
- 2023年非車險核??荚囌骖}模擬匯編(共396題)
- 人作與天開-中國古典園林藝術(shù) 課件-2024-2025學(xué)年高中美術(shù)人美版(2019)美術(shù)鑒賞
- 2024年重慶市中考化學(xué)試題(A卷)含答案
- 你比我猜題庫課件
- 貴州省遵義市2024-2025學(xué)年高三上學(xué)期10月第一次適應(yīng)性考試 物理 含答案
- 《技改革新方法與實踐(第三版)》考試復(fù)習(xí)題庫大全(含答案)
- 2024新高考I卷全國統(tǒng)一考試高考生物試題(真題+答案)
- 2025陜西省高二學(xué)業(yè)水平考試物理模擬試卷試題(含答案詳解)
- 【肖邦升C小調(diào)夜曲作品賞析2800字(論文)】
評論
0/150
提交評論