日韓欧美三级片,精品久久久久久中文字幕人妻,肉多荤文高H学生民工文,黑人又粗又大又硬A片

嵌入式軟件開發(fā)流程(嵌入式工程師)

軟件開發(fā) 2337
本篇文章給大家談?wù)勄度胧杰浖_發(fā)流程,以及嵌入式工程師對應(yīng)的知識點,希望對各位有所幫助,不要忘了收藏本站喔。 本文目錄一覽: 1、嵌入式系統(tǒng)的設(shè)計流程是什么?

本篇文章給大家談?wù)勄度胧杰浖_發(fā)流程,以及嵌入式工程師對應(yīng)的知識點,希望對各位有所幫助,不要忘了收藏本站喔。

本文目錄一覽:

嵌入式系統(tǒng)的設(shè)計流程是什么?

一、嵌入式系統(tǒng)開發(fā)流程?

1、系統(tǒng)需求分析:根據(jù)需求,確定設(shè)計任務(wù)和設(shè)計目標(biāo),指定設(shè)計說明書。?

2、體系結(jié)構(gòu)設(shè)計:描述系統(tǒng)如何實現(xiàn)所述的功能需求,包括對硬件、軟件和執(zhí)行裝置的功能劃分以及系統(tǒng)的軟件、硬件選型。

3、硬件/軟件協(xié)同設(shè)計:基于體系結(jié)構(gòu)的設(shè)計結(jié)果,對系統(tǒng)的硬件、軟件進行詳細設(shè)計。一般情況下嵌入式系統(tǒng)設(shè)計的工作大部分都集中在軟件設(shè)計上,現(xiàn)代軟件工程經(jīng)常采用的方法是面向?qū)ο蠹夹g(shù)、軟件組件技術(shù)和模塊化設(shè)計。?

4、系統(tǒng)集成:把系統(tǒng)的硬件、軟件和執(zhí)行裝置集成在一起進行調(diào)試,發(fā)現(xiàn)并改進設(shè)計過程中的不足之處。

5、系統(tǒng)測試:對設(shè)計好的系統(tǒng)進行測試,檢驗系統(tǒng)是否滿足實際需求。

?

二、嵌入式軟件開發(fā)?

嵌入式軟件開發(fā)的一般流程為需求分析、軟件概要設(shè)計、軟件詳細設(shè)計、軟件實現(xiàn)和軟件測試。與一般的軟件開發(fā)區(qū)別主要在于軟件實現(xiàn)的編譯和調(diào)試兩部分即為交叉編譯與交叉調(diào)試。

嵌入式軟件開發(fā)方法

根據(jù)使用的開發(fā)工具套件不同,軟件開發(fā)流程會有差異,但主要步驟大致相同。對于使用宿主機(PC)的集成化開發(fā)環(huán)境,軟件開發(fā)流程一般包括創(chuàng)建項目、添加文件、編譯連接、下載調(diào)試等步驟,如下圖所示。

圖1:嵌入式軟件開發(fā)流程

(1)創(chuàng)建工程項目:在配置硬件設(shè)備和安裝軟件開發(fā)工具后,就可以開始創(chuàng)建工程項目,通常需要選擇項目文件的存儲位置及目標(biāo)處理器。

(2)添加項目文件:開發(fā)人員需要創(chuàng)建源程序文件,編寫應(yīng)用程序代碼,并添加到工程項目中;還將使用設(shè)備驅(qū)動程序的庫文件,包括啟動代碼、頭文件和一些外設(shè)控制函數(shù),甚至中間件(Middleware)等。這些文件也需要添加到項目中。

(3)配置工程選項:源于硬件設(shè)備的多樣性和軟件工具的復(fù)雜性,工程項目提供了不少選項,需要開發(fā)人員配置,如輸出文件類型和位置、編譯選項和優(yōu)化類型等,還要根據(jù)選用的開發(fā)板和在線仿真器,配置代碼調(diào)試和下載選項等。

(4)交叉編譯連接:利用開發(fā)軟件工具對項目的多個文件分別編譯,生成相應(yīng)的目標(biāo)文件,然后連接生成最終的可執(zhí)行文件映像,以下載到目標(biāo)設(shè)備的文件格式保存。如果編譯連接有錯誤,返回修改;如果沒有錯誤,先進行軟件模擬運行和調(diào)試,再下載到開發(fā)板運行和調(diào)試。

(5)程序下載:目前,絕大多數(shù)微控制器都使用閃存(Flash Memory)保存程序。創(chuàng)建可執(zhí)行文件映像后,需要使用在線仿真器(或串口、網(wǎng)口)將其下載到微控制器的閃存中,實現(xiàn)閃存的編程;還可以將可執(zhí)行文件下載到SRAM中運行。

(6)運行和調(diào)試:程序下載后,可以啟動運行,看是否正常工作。如果有問題,連接在線仿真器,借助軟件開發(fā)工具的調(diào)試環(huán)境進行斷點和單步調(diào)試,觀察程序操作的詳細過程。如果應(yīng)用程序運行有錯誤,返回修改。

什么是嵌入式軟件開發(fā)

嵌入式軟件開發(fā)屬于軟件開發(fā)的一種。

嵌入式軟件與嵌入式系統(tǒng)是密不可分,嵌入式軟件是基于嵌入式系統(tǒng)設(shè)計的軟件,是計算機軟件的一種。

嵌入式系統(tǒng)的開發(fā)主要分為系統(tǒng)總體開發(fā)、嵌入式硬件開發(fā)和嵌入式軟件開發(fā)3大部分。

嵌入式軟件開發(fā)總體流程分為需求分析、軟件概要設(shè)計、軟件詳細設(shè)計、軟件實現(xiàn)和軟件測試,嵌入式系統(tǒng)的軟件開發(fā),主要是軟件實現(xiàn)部分,可分為編譯和調(diào)試兩部分,嵌入式軟件開發(fā)主要針對計算能力有限的CPU進行的軟件開發(fā)。

嵌入式系統(tǒng)的應(yīng)用和開發(fā)

嵌入式系統(tǒng)的應(yīng)用和開發(fā)

基于嵌入式系統(tǒng)的具體產(chǎn)品應(yīng)用是計算機工程史上的里程碑。深入到了各行各業(yè),其已成為高科技領(lǐng)域中必不可少的工具。 我下面為你整理了關(guān)于嵌入式系統(tǒng)的應(yīng)用和開發(fā)的文章,希望對你有所幫助。

1嵌入式系統(tǒng)簡介

嵌入式系統(tǒng)可以抽象出一個典型的組成模型,其可劃分為硬件層、軟件層及功能層。

1.1嵌入式系統(tǒng)定義

嵌入式系統(tǒng)最通用的定義是以應(yīng)用為中心,以計算機技術(shù)為基礎(chǔ),軟硬件可裁剪、功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計算機[1]。

根據(jù)IEEE9(國際電氣和電子工程師協(xié)會)的定義,嵌入式系統(tǒng)也可定義為控制監(jiān)視或輔助設(shè)備機器和車間運行裝置。

嵌入式系統(tǒng)的定義很多,統(tǒng)一起來很難。對于其定義有疑問的部分研究人員將嵌入式系統(tǒng)定義為:“嵌入式系統(tǒng)是以嵌入式微處理器為內(nèi)核,以微電子技術(shù),計算機技術(shù),電子技術(shù)、對象技術(shù)為基礎(chǔ),軟硬件可根據(jù)對象需要所設(shè)置,并且嵌入到對象器件內(nèi),適用于應(yīng)用系統(tǒng)對功能、可靠性、成本、體積、功耗有嚴(yán)格要求的專用智能化的控制系統(tǒng)?!盵2]

1.2嵌入式系統(tǒng)的特點

嵌入式系統(tǒng)是面向?qū)I(yè)應(yīng)用領(lǐng)域的,從其應(yīng)用角度分析,具有以下特點:

(1)硬件層,是所有軟件的運行基礎(chǔ),嵌入式系統(tǒng)至少擁有一個高性能處理器為硬件平臺。如ARM處理器。

(2)軟件層,其能擴充和充分發(fā)揮硬件層功能。嵌入式系統(tǒng)需有一個多任務(wù)操作系統(tǒng)的軟件平臺,來控制管理計算機硬件和軟件資源以及合理的組織計算機工作流程。如Liunx,UC/OSⅡ等操作系統(tǒng)。

(3)嵌入式系統(tǒng)是先進的技術(shù)及資金密集、知識產(chǎn)業(yè)化不斷創(chuàng)新的集成系統(tǒng)。其將先進的電子科學(xué)技術(shù)與各行各業(yè)的具體應(yīng)用相結(jié)合。

(4)是面向用戶、產(chǎn)品及特定應(yīng)用的。

(5)具有較長的生命周期。與實際產(chǎn)品相結(jié)合,并與產(chǎn)品升級同步進行。

(6)對程序質(zhì)量要求較高。一般都將系統(tǒng)中的軟件固化在存儲器中,大部分都具有較高的實時性。

(7)嵌入式系統(tǒng)不具備在其上進行進一步開發(fā)的能力。需要借助專門的開發(fā)工具和環(huán)境來滿足產(chǎn)品設(shè)計完成后的程序功能修改工作。

2基于ARM的嵌入式系統(tǒng)技術(shù)應(yīng)用及開發(fā)方法

2.1ARM的技術(shù)應(yīng)用特點

ARM(Advanced RISC Machines)是一種嵌入式微處理器,它具有低功耗、低成本、高性能的特點,采用RISC體系結(jié)構(gòu),大量使用寄存器,具有高效的指令系統(tǒng),在實際嵌入式應(yīng)用中,只保留和嵌入式應(yīng)用緊密相關(guān)的功能硬件,去除其他的冗余功能部分,來實現(xiàn)嵌入式應(yīng)用的特殊要求[3]?;贏RM微處理器的嵌入式系統(tǒng)不同于單片機、DSP系統(tǒng),其高性能的特點,在硬件部分的電路板設(shè)計方面是比較困難的,絕大多數(shù)的ARM板都要在4層以上。其實ARM最關(guān)鍵的是軟件部分的操作系統(tǒng),系統(tǒng)開發(fā)應(yīng)更側(cè)重于軟件方面,包括系統(tǒng)裁減,底層驅(qū)動和應(yīng)用程序等。

2.2ARM嵌入式系統(tǒng)的開發(fā)流程

基于ARM的嵌入式系統(tǒng)設(shè)計的開發(fā)流程如圖1所示。

2.3ARM嵌入式系統(tǒng)的開發(fā)方法

(1)建立系統(tǒng)的開發(fā)環(huán)境

嵌入式系統(tǒng)資源受限制,如果在其硬件平臺上直接編寫軟件,比較困難。因此根據(jù)其特點須在特定的開發(fā)環(huán)境下進行。搭建相應(yīng)的軟硬件平臺:在宿主機(HOST)也就是PC機上安裝開發(fā)工具,并將編寫好的軟件程序進行交叉編譯生成二進制代碼,最后將其移植到目標(biāo)板的特定位置運行。這種在宿主機(HOST)環(huán)境下開發(fā),在目標(biāo)板(TARGET)上運行的開發(fā)模式叫交叉開發(fā)模式,交叉開發(fā)模型如圖2所示。

(2)Boot Loader引導(dǎo)程序開發(fā)

Boot loader是在嵌入式操作系統(tǒng)內(nèi)核運行前運行的一段程序,與我們經(jīng)常提到的BIOS功能相近,每種體系結(jié)構(gòu)都有與其相匹配的Boot Loader。通過Boot loader程序的運行,可以初始化硬件設(shè)備,建立系統(tǒng)的內(nèi)存空間映射圖,這樣就可以將系統(tǒng)的軟、硬件環(huán)境設(shè)定在一個合適的狀態(tài),方便于最終調(diào)用操作系統(tǒng)內(nèi)核,并且為運行用戶應(yīng)用程序準(zhǔn)備好正確的環(huán)境。

Boot loader程序由匯編和C程序兩部分組成,程序執(zhí)行過程也分為匯編和C程序代碼部分兩個階段。匯編程序與硬件設(shè)備相關(guān),不便移植,第一階段需要完成初始化看門狗、設(shè)置中斷異常向量表、堆棧、配置存儲器等,之后再跳轉(zhuǎn)到第二階段的C語言程序入口處。C程序代碼部分主要完成初始化本階段所需要的外部設(shè)備,調(diào)用NANDFLASH的API函數(shù),配置SDRAM空間,并將用戶的`程序代碼從NANDFLASH存儲器中復(fù)制到SDRAM中,最后再跳轉(zhuǎn)到用戶程序的入口[4]。

3嵌入式技術(shù)的應(yīng)用領(lǐng)域

嵌入式技術(shù)無處不在,已經(jīng)深入到了生活的各個領(lǐng)域,為我們的生活帶來了很大的方便。

(1)無線通訊領(lǐng)域。特別是智能手機,全球95%的手機采用了ARM芯片,隨著手機功能愈像電腦,手機更需要功能強大的嵌入式芯片?,F(xiàn)在,全球售出的每一部手機中平均就有2.4塊ARM芯片。

(2)工業(yè)控制領(lǐng)域?;贏RM核的32位微控制器芯片逐漸向低端微控制器應(yīng)用領(lǐng)域擴展,在工業(yè)控制領(lǐng)域發(fā)揮了很大的作用。

(3)網(wǎng)絡(luò)應(yīng)用。網(wǎng)絡(luò)寬帶技術(shù)不斷發(fā)展,基于ARM技術(shù)的ADSL芯片也逐步進入競爭范圍,并取得一定優(yōu)勢。而且,語音及視頻處理也應(yīng)用了ARM技術(shù),同時對DSP的應(yīng)用領(lǐng)域提出了新的挑戰(zhàn)。

(4)儀器儀表方面。有智能儀器、智能儀表、醫(yī)療器械、色譜儀、示波器等。

(5)民用方面。如電子玩具、電子字典、游戲機、錄像機、復(fù)讀機、投影儀、照相機、空調(diào)、冰箱、洗衣機、調(diào)制解調(diào)器、防盜控制器、激光驅(qū)動器、變速控制器、汽車點火控制器、避雷控制、農(nóng)業(yè)節(jié)水控制系統(tǒng)、保安控制系統(tǒng)等方面。

(6)導(dǎo)航控制方面。如導(dǎo)彈控制、航天導(dǎo)航系統(tǒng)、電子干擾系統(tǒng)等。

(7)數(shù)據(jù)處理方面。如圖文圖表終端、復(fù)印機、硬盤驅(qū)動器等。

(8)農(nóng)業(yè)交通方面。智能公路(汽車導(dǎo)航、流量控制、信息監(jiān)測與汽車服務(wù))、植物工廠(特種植物工廠、無土栽培技術(shù)、智能種子工程)、虛擬顯示VR機器人、信息家電(家用電器的網(wǎng)絡(luò)化)等等。

除此以外,眾多領(lǐng)域都用到了基于ARM微處理器的嵌入式技術(shù),在生活的各個領(lǐng)域得到了廣泛的應(yīng)用。

;

關(guān)于嵌入式軟件開發(fā)流程和嵌入式工程師的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。

掃碼二維碼