ARM嵌入式開(kāi)發(fā)實(shí)例(共30張PPT)_第1頁(yè)
ARM嵌入式開(kāi)發(fā)實(shí)例(共30張PPT)_第2頁(yè)
ARM嵌入式開(kāi)發(fā)實(shí)例(共30張PPT)_第3頁(yè)
ARM嵌入式開(kāi)發(fā)實(shí)例(共30張PPT)_第4頁(yè)
ARM嵌入式開(kāi)發(fā)實(shí)例(共30張PPT)_第5頁(yè)
已閱讀5頁(yè),還剩25頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1第1章

初識(shí)ARM嵌入式系統(tǒng)1.2ARM嵌入式系統(tǒng)的開(kāi)發(fā)要點(diǎn)與開(kāi)發(fā)環(huán)境ARM嵌入式系統(tǒng)的開(kāi)發(fā)ARM芯片的設(shè)計(jì)ARM芯片的開(kāi)發(fā)應(yīng)用1.2.1ARM嵌入式系統(tǒng)的開(kāi)發(fā)要點(diǎn)日期嵌入式系統(tǒng)的設(shè)計(jì)要求 嵌入式系統(tǒng)設(shè)計(jì)開(kāi)發(fā)不同于桌面系統(tǒng),它非常受制于功能和具體的應(yīng)用環(huán)境,所以嵌入式系統(tǒng)的設(shè)計(jì)具有一些特殊的要求:接口方便、操作容易穩(wěn)定可靠、維護(hù)簡(jiǎn)便功耗管理、降低成本功能實(shí)用、便于升級(jí)并發(fā)處理、及時(shí)響應(yīng)日期嵌入式系統(tǒng)開(kāi)發(fā)特點(diǎn)

需要軟硬件綜合開(kāi)發(fā),二者密切相關(guān)。原因:任何一個(gè)嵌入式產(chǎn)品都是軟件和硬件的結(jié)合體一旦嵌入式產(chǎn)品研發(fā)完成,軟件就固化在硬件環(huán)境中,嵌入式軟件是針對(duì)相應(yīng)的嵌入式硬件開(kāi)發(fā)的,是專(zhuān)用的。

嵌入式系統(tǒng)的這一特點(diǎn),決定了嵌入式應(yīng)用開(kāi)發(fā)方法不同于傳統(tǒng)的軟件工程方法。日期預(yù)備知識(shí)ARM嵌入式系統(tǒng)的概念和基本結(jié)構(gòu)印刷電路板設(shè)計(jì)知識(shí)模擬電子技術(shù)、數(shù)字電子技術(shù)等集成開(kāi)發(fā)環(huán)境編程語(yǔ)言匯編語(yǔ)言:ARM嵌入式指令集(初始化的啟動(dòng)程序)C語(yǔ)言C語(yǔ)言+匯編語(yǔ)言日期1、明確ARM嵌入式系統(tǒng)開(kāi)發(fā)的過(guò)程

嵌入式軟件的開(kāi)發(fā)流程與通用軟件的開(kāi)發(fā)流程大同小異,但開(kāi)發(fā)所使用的設(shè)計(jì)方法具有嵌入式開(kāi)發(fā)的特點(diǎn)。整個(gè)開(kāi)發(fā)流程可分為:需求分析階段設(shè)計(jì)階段生成代碼階段固化階段5日期日期日期需求和規(guī)格說(shuō)明

嵌入式系統(tǒng)應(yīng)用需求中最為突出的是注重應(yīng)用的時(shí)效性,需求分析階段的主要任務(wù)是:(1)對(duì)問(wèn)題的識(shí)別和分析對(duì)用戶(hù)提出的問(wèn)題進(jìn)行抽象識(shí)別用以產(chǎn)生以下的需求:功能需求、性能需求、環(huán)境需求、可靠性需求、安全需求、用戶(hù)界面需求、資源使用需求、軟件成本與開(kāi)發(fā)進(jìn)度需求。(2)制訂規(guī)格說(shuō)明文檔經(jīng)過(guò)對(duì)問(wèn)題的識(shí)別,產(chǎn)生了系統(tǒng)各方面的需求。通過(guò)對(duì)規(guī)格的說(shuō)明,文檔得以清晰、準(zhǔn)確地描述。這些說(shuō)明文檔包括需求規(guī)格說(shuō)明書(shū)和初級(jí)的用戶(hù)手冊(cè)等。(3)需求評(píng)審需求評(píng)審作為系統(tǒng)進(jìn)入下一階段前最后的需求分析復(fù)查手段,在需求分析的最后階段對(duì)各項(xiàng)需求進(jìn)行評(píng)估,以保證軟件需求的質(zhì)量。需求評(píng)審的內(nèi)容包括正確性、無(wú)歧義性、安全性、可驗(yàn)證性、一致性、可理解性、可修改性、可追蹤性等多個(gè)方面。日期嵌入式系統(tǒng)開(kāi)發(fā)要點(diǎn)交叉編譯器(Cross-compiler):是一種運(yùn)行在通用計(jì)算機(jī)上的、但是能夠生成在另一種處理器上運(yùn)行的目標(biāo)代碼的編譯器。交叉開(kāi)發(fā):在一臺(tái)通用計(jì)算機(jī)上進(jìn)行軟件的編輯、編譯,然后下載到嵌入式系統(tǒng)中運(yùn)行調(diào)試。

日期嵌入式系統(tǒng)開(kāi)發(fā)要點(diǎn)它分散在有通信連接的宿主機(jī)與目標(biāo)機(jī)環(huán)境之中:宿主機(jī)(Host)是一臺(tái)通用計(jì)算機(jī),一般是PC機(jī)。它通過(guò)串口或網(wǎng)絡(luò)連接與目標(biāo)機(jī)通信。目標(biāo)機(jī)(Target)可以是嵌入式應(yīng)用軟件的實(shí)際運(yùn)行環(huán)境(可以是能替代實(shí)際環(huán)境的仿真系統(tǒng))101.1

ARM嵌入式系統(tǒng)簡(jiǎn)介典型的開(kāi)發(fā)環(huán)境源程序編譯器目標(biāo)文件鏈接器可執(zhí)行文件日期2、熟悉開(kāi)發(fā)工具環(huán)境里的庫(kù)函數(shù)(了解三個(gè)方面)(1)考慮硬件對(duì)庫(kù)函數(shù)的支持;

注意:庫(kù)函數(shù)的使用并不是必須的。(2)符合目標(biāo)系統(tǒng)上的存儲(chǔ)器資源分布;(3)應(yīng)用程序運(yùn)行環(huán)境的初始化;111.1

ARM嵌入式系統(tǒng)簡(jiǎn)介日期3、熟悉ARM嵌入式系統(tǒng)的調(diào)試操作調(diào)試有三種基本方法模擬調(diào)試(Simulator)軟件調(diào)試(Debugger)仿真器調(diào)試(Emulator)

121.1

ARM嵌入式系統(tǒng)簡(jiǎn)介日期模擬調(diào)試(Simulator)

調(diào)試工具和待調(diào)試的嵌入式軟件都在主機(jī)上運(yùn)行,由主機(jī)提供一個(gè)模擬的目標(biāo)運(yùn)行環(huán)境,可以進(jìn)行語(yǔ)法和邏輯上的調(diào)試。優(yōu)點(diǎn):簡(jiǎn)單方便,不需要目標(biāo)板,成本低缺點(diǎn):功能非常有限,無(wú)法實(shí)時(shí)調(diào)試大多數(shù)調(diào)試工具都提供Simulator功能日期軟件調(diào)試(Debugger)(監(jiān)控器方式)

主機(jī)和目標(biāo)板通過(guò)某種接口(通常是串口)連接,主機(jī)上提供調(diào)試界面,待調(diào)試軟件下載到目標(biāo)板上運(yùn)行。這種方式的先決條件是要在Host和Target之間建立起通信聯(lián)系(目標(biāo)板上稱(chēng)為監(jiān)控程序Monitor)優(yōu)點(diǎn):純軟件,價(jià)格較低,簡(jiǎn)單,軟件調(diào)試能力較強(qiáng)缺點(diǎn):需要事先燒制Monitor(往往需多次試驗(yàn)才能成功)且目標(biāo)板工作正常,功能有限,特別是硬件調(diào)試能力較差。

PCTargetMonitor串口日期仿真器方式(Emulator)

這種方式用仿真器完全取代目標(biāo)板上的MCU,因而目標(biāo)系統(tǒng)對(duì)開(kāi)發(fā)者來(lái)說(shuō)完全是透明的、可控的。仿真器與目標(biāo)板通過(guò)仿真頭連接,與主機(jī)有串口、并口、網(wǎng)口或USB口等連接方式。由于仿真器自成體系,調(diào)試時(shí)既可以連接目標(biāo)板,也可以不連接目標(biāo)板(Standalone)。優(yōu)點(diǎn):功能非常強(qiáng)大,軟硬件均可做到完全實(shí)時(shí)在線調(diào)試缺點(diǎn):價(jià)格昂貴。一般高檔的微處理器都帶JTAG(JointTestActionGroup,聯(lián)合測(cè)試行動(dòng)組)接口,它是一種邊界掃描標(biāo)準(zhǔn),只需5根引腳就可以實(shí)現(xiàn)在線仿真的功能。日期JTAG調(diào)試有一個(gè)硬件調(diào)試體。該硬件調(diào)試體與目標(biāo)板通過(guò)JTAG調(diào)試接口相連,與主機(jī)通過(guò)串口、并口、網(wǎng)口或USB口相連。待調(diào)試軟件通過(guò)JTAG調(diào)試器下載到目標(biāo)板上運(yùn)行。

TargetPC接口JTAG日期17第1章

初識(shí)ARM嵌入式系統(tǒng)1.2.2ARM嵌入式系統(tǒng)的開(kāi)發(fā)環(huán)境編譯器/匯編器指令系統(tǒng)模擬器在線仿真器或調(diào)試探測(cè)器目標(biāo)開(kāi)發(fā)板跟蹤捕捉儀嵌入式操作系統(tǒng)常見(jiàn)的開(kāi)發(fā)環(huán)境日期18產(chǎn)品公司C編譯器產(chǎn)品說(shuō)明ARM公司ARM處理器在RealView開(kāi)發(fā)套件中有良好的技術(shù)支持。其中RealView-ICE可以用于連接調(diào)試硬件和調(diào)試環(huán)境。KEIL公司Keil公司最早以支持8051系列單片機(jī)的開(kāi)發(fā)受到廣大用戶(hù)的支持。而在最新版本的RealViewMDK開(kāi)發(fā)環(huán)境中,對(duì)ARM嵌入式系統(tǒng)的開(kāi)發(fā)具有很好的支持。其配套的仿真器是ULink和JLink。IARSystem公司英文全稱(chēng)為IAREmbeddedWorkbentchforARMandCortex。在該開(kāi)發(fā)環(huán)境中系統(tǒng)提供了C/C++編譯器和調(diào)試器。IAR開(kāi)發(fā)工具鏈跟Keil公司一樣,主要致力于AVR單片機(jī)的嵌入式系統(tǒng)開(kāi)發(fā)。其中,IAR配套的仿真器為JLink。Lauterbach公司提供JTAG仿真器以及JWT跟蹤設(shè)備。其他CodeSourcery公司推出的支持ARM嵌入式系統(tǒng)的GNU工具鏈。該工具鏈在市場(chǎng)上占有較小的份額,未能在嵌入式行業(yè)大面積推廣。常見(jiàn)ARM嵌入式系統(tǒng)C編譯器最流行、最通用日期1.2.1KeilMDK簡(jiǎn)介Keil開(kāi)發(fā)環(huán)境是德國(guó)知名公司Keil(現(xiàn)已并入ARM公司)開(kāi)發(fā)的嵌入式微控制器軟件開(kāi)發(fā)平臺(tái),也是目前ARM嵌入式單片機(jī)開(kāi)發(fā)的主流工具。在該軟件平臺(tái)中,uVision的界面與微軟VC++的界面類(lèi)似,具有友好的人機(jī)交互環(huán)境,啟動(dòng)界面如右圖所示。19日期在uVision開(kāi)發(fā)工具鏈中包含了指令模擬器,用戶(hù)可以通過(guò)使用該功能來(lái)模擬“純粹”的ARM嵌入式代碼,即用戶(hù)不需要外部硬件平臺(tái)的支持也可以在軟件平臺(tái)中模擬代碼的運(yùn)行,基本的界面框架如右圖所示。20RealViewMDK用戶(hù)操作界面日期Keil平臺(tái)開(kāi)發(fā)周期Keil平臺(tái)開(kāi)發(fā)ARM嵌入式軟件,開(kāi)發(fā)周期與其他的平臺(tái)環(huán)境的開(kāi)發(fā)周期是類(lèi)似的,大致有以下幾個(gè)步驟:創(chuàng)建新的項(xiàng)目工程,選擇正確的目標(biāo)芯片,對(duì)工程項(xiàng)目參數(shù)進(jìn)行配置;編寫(xiě)C語(yǔ)言代碼或匯編程序代碼,并添加到項(xiàng)目工程文件中;對(duì)項(xiàng)目工程進(jìn)行編譯、連接和調(diào)試;修改源代碼中的語(yǔ)法錯(cuò)誤和邏輯錯(cuò)誤,重新編譯至正確與硬件聯(lián)機(jī)調(diào)試至無(wú)誤;211.2

ARM嵌入式系統(tǒng)的開(kāi)發(fā)要點(diǎn)與開(kāi)發(fā)環(huán)境日期步驟一創(chuàng)建/打開(kāi)工程文件步驟二選擇ARM嵌入式芯片步驟三添加源代碼文件步驟四編譯程序步驟五程序的調(diào)試221.2.3KeilMDK開(kāi)發(fā)步驟1.2

ARM嵌入式系統(tǒng)的開(kāi)發(fā)要點(diǎn)與開(kāi)發(fā)環(huán)境日期231、創(chuàng)建/打開(kāi)工程文件在KeilMDK開(kāi)發(fā)環(huán)境中,用戶(hù)可以通過(guò)選擇“NewProject”下拉菜單來(lái)創(chuàng)建一個(gè)新的工程,如右圖所示。此時(shí),系統(tǒng)會(huì)彈出一個(gè)對(duì)話框,要求為新建的項(xiàng)目工程起一個(gè)名字。

在菜單中創(chuàng)建新的工程將新創(chuàng)建的工程命名為“test”1.2

ARM嵌入式系統(tǒng)的開(kāi)發(fā)環(huán)境日期242、選擇ARM嵌入式芯片

在創(chuàng)建完存放工程代碼的文件夾后,用戶(hù)就可以根據(jù)實(shí)際的工程需要,選擇需要的ARM嵌入式芯片。在建立工程項(xiàng)目文件后,用戶(hù)需要在該工程項(xiàng)目?jī)?nèi)添加源程序代碼。選擇菜單“File”|“New”或者點(diǎn)擊工具欄上的新建文件按鈕,就可以在項(xiàng)目工程窗口的右側(cè)打開(kāi)一個(gè)新的文本編輯窗口,用戶(hù)可以在該窗口中輸入程序代碼。在編輯完代碼之后,用戶(hù)需要將其保存為源文件,選擇菜單“File”|“Save”或者點(diǎn)擊工具欄的保存文件按鈕,可以實(shí)現(xiàn)對(duì)源文件的保存操作。在源文件編輯完成之后,用戶(hù)還需要將編寫(xiě)好的源文件添加到新建的項(xiàng)目工程中去。3、添加源代碼文件日期25添加源文件到項(xiàng)目工程中日期26添加源代碼對(duì)話框選擇其中的“AddFileToGroup‘SourceGroup1’”,系統(tǒng)彈出一個(gè)文件對(duì)話框,用戶(hù)可以在對(duì)話框中輸入源文件的路徑,點(diǎn)擊“確定”后就完成了對(duì)源文件的添加操作,具體如右圖所示。特別需要提醒讀者注意的是,在添加文件的時(shí)候,由于對(duì)話框不會(huì)自動(dòng)關(guān)閉,經(jīng)常會(huì)被誤認(rèn)為添加文件操作沒(méi)有成功而在此雙擊添加同一個(gè)文件,引起不必須要的錯(cuò)誤,系統(tǒng)也會(huì)彈出相應(yīng)的錯(cuò)誤提示對(duì)話框,如右圖所示。重復(fù)添加源代碼后的錯(cuò)誤提示日期4、編譯程序

在程序代碼編輯完之后就可以進(jìn)入編譯階段,用戶(hù)可以通過(guò)菜單、工具欄和浮動(dòng)菜單等多種方式對(duì)源代碼進(jìn)行編譯操作。同時(shí),在KeilMDK平臺(tái)中,用戶(hù)還可以通過(guò)批處理文件進(jìn)行相應(yīng)的編譯操作。一般實(shí)際的項(xiàng)目工程需要進(jìn)行批處理的操作不是很多,有興趣的讀者可以通過(guò)KeilMDK的技術(shù)支持文檔查看具體的操作步驟,在這里就不再贅述了。27日期28一般而言,項(xiàng)目工程文件通過(guò)編譯器的編譯后,只能說(shuō)明當(dāng)前的代碼沒(méi)有語(yǔ)法錯(cuò)誤。但在實(shí)際的調(diào)試過(guò)程中,除了編譯器能識(shí)別的語(yǔ)法錯(cuò)誤,還可能存在其他的錯(cuò)誤,如邏輯功能錯(cuò)誤等。用戶(hù)必須通過(guò)調(diào)試才能發(fā)現(xiàn)問(wèn)題并解決。5、程序的調(diào)試

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論