來自老師第2章_第1頁
來自老師第2章_第2頁
來自老師第2章_第3頁
來自老師第2章_第4頁
來自老師第2章_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費閱讀

付費下載

下載本文檔

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

文檔簡介

第二章ADS1.2開發(fā)環(huán)境創(chuàng)建與簡介

2.1.1ADS1.2概述通用計算機---“宿主機”的ARM集成開發(fā)環(huán)境(ARMDeveloperSuit)。8部分組成:

編譯器、鏈接器、符號調(diào)試器、fromELF、armar、CodeWarrior、調(diào)試器、C和C++庫最新版本:ADS1.2支持操作系統(tǒng):Windows和Linux等多種操作環(huán)境。1.編譯器含多種編譯器,以支持ARM和Thumb(采用16位字長)指令的編譯:armcc:是ARMC編譯器tcc:是ThumbC編譯器armcpp:是ARMC++編譯器tcpp:是ThumbC++編譯器armasm:是ARM和Thumb的匯編語言編譯器

2鏈接器:armlink,將編譯得到的一個或多個目標文件和相關(guān)的一個或多個庫文件進行鏈接,生成一個可執(zhí)行文件,或?qū)⒍鄠€目標文件鏈接成一個目標文件,供進一步的鏈接。3符號調(diào)試器:armsd,進行源碼級程序調(diào)試。(單步調(diào)試、設置斷點、查看變量值和內(nèi)存單元的內(nèi)容等)4fromELF:將ELF格式的文件轉(zhuǎn)換為各種格式的輸出文件(如:BIN(二進制)格式映像文件、Motorola32位S格式映像文件、Intel32位格式映像文件和Verilog十六進制文件)5armar:ARM庫函數(shù)生成器。將一系列ELF格式的目標文件以庫函數(shù)的形式集合在一起。6CodeWarrior:集成開發(fā)環(huán)境,管理和開發(fā)項目提供了簡單多樣化的圖形用戶界面。7.調(diào)試器3個調(diào)試器:AXD、Armsd和ADW/ADU。調(diào)試方式:

(1)Multi-ICE:Multi-processorIn-CircuitEmulator,

ARM公司自己的JTAG在線仿真器。

(2)ARMulator:ARM指令集仿真器,集成在ARM的調(diào)試器AXD中,提供對ARM處理器的指令集的仿真,為ARM和Thumb提供精確的模擬。在硬件尚未做好的情況下開發(fā)程序代碼,利用模擬器方式調(diào)試。

(3)Angel:ARM公司常駐在目標機Flash中的監(jiān)控程序,通過RS-232C串口與PC主機相連,對目標機進行監(jiān)控器方式的調(diào)試。8.C和C++庫ANSIC庫函數(shù)和C++庫函數(shù),支持被編譯的C和C++代碼??梢园袰庫中的與目標相關(guān)的函數(shù)作為自己應用程序中的一部分,重新進行代碼的實現(xiàn)。2.1.2ADS1.2的安裝安裝盤中運行setup.exe,同意許可協(xié)議,選擇安裝路徑和典型安裝模式(Typiflcation),按Next進入下一步,均按Next,開始安裝。安裝許可文件(InstallLicense)和注冊。創(chuàng)建快捷方式。IDE快捷鍵圖標

打開計算機,雙擊IDE快捷鍵圖標,進入CodeWarrior集成開發(fā)環(huán)境。2.2ADS集成開發(fā)環(huán)境的使用

ADS對用戶的程序進行項目管理,一個項目包括:

匯編語言程序、C/C++語言程序、C語言頭文件、庫文件等。

文件還可以以文件夾的形式加入項目。2.2.1建立一個新工程運行ADS1.2,點擊File|NewProject選項卡:選擇ARMExecutableImage(通用模板),生成ARM的執(zhí)行文件。Projectname欄:輸入項目的名稱Location欄:輸入其存放的位置(路徑)。按確定保存項目。2.2.2開發(fā)環(huán)境設置

在新建的工程中,選擇Debug版本,使用Edit|DebugSettings菜單對Debug版本進行參數(shù)設置。

包括選項:

Target,Lanagesetting

,Linker,Editor,Debugger創(chuàng)建模板:要將該項目工程文件改一個合適的名字;在ADS1.2軟件安裝的目錄下新建一個合適的模板目錄名;將剛剛設置完項目文件存放到該目錄下。文件加入及分類:執(zhí)行菜單Project|AddFiles把和工程有關(guān)的文件加入;通過Project|CreateGroup來創(chuàng)建文件夾,把加入的文件選中,移入文件夾?;蚴髽朔旁谖募罴訁^(qū),右鍵點擊更改Edit|Preference窗口內(nèi)文本編輯的顏色、字體大小、形狀、變量、函數(shù)的顏色等等設置。2.2.3其他開發(fā)環(huán)境介紹名稱:IAREmbeddedWorkbenchforARM,簡稱IAREWARM。

特點:IAREWARM具有入門容易、使用方便和代碼緊湊等特點。

開發(fā)公司:IAR----瑞典愛亞軟件技術(shù)咨詢公司2.3用AXD進行代碼仿真、調(diào)試

項目建立并加入相應文件后,“目標機”和“宿主機”通過JTAG的仿真器進行連接。用AXD進行代碼仿真、調(diào)試。2.3.1AXD簡介項目編譯:在CodeWarriorIDE開發(fā)環(huán)境中雙擊Make,或Project|make

雙擊Debug鍵,進入AXD界面

1.在AXD中打開調(diào)試文件選擇AXD的File∣Loadimage命令,打開Loadimage對話框,找到要裝入的.axf映像文件,單擊“打開”按鈕,就可以把映像文件裝載到目標內(nèi)存中,

2.查看存儲器、寄存器、變量內(nèi)容選擇AXD的ProcessorViews∣Memory命令或按Ctrl+M鍵后,查看或修改存儲器中的值

3.查看或修改存儲器地址

在MemoryStartaddress文本框圖上,根據(jù)要查看或修改的存儲器地址輸入起始地址,在下面的表格中會列出連續(xù)的64個地址。注意大端模式和小端模式。4.斷點設置、查看

在程序調(diào)試時經(jīng)常設置斷點,即在程序的某處設置斷點,程序執(zhí)行到斷點處停下。

設置方法:將光標移到需設置斷點處,使用快捷鍵F9在此處設置斷點。2.3.2JTAG概述

在使用AXD對項目進行調(diào)試時,整個軟件調(diào)試工作在“宿主機”上進行;程序的運行是在“目標”機上實現(xiàn)?!八拗鳈C”和“目標”之間通過計算機并口使用JTAG的仿真器相連接,實現(xiàn)信息的上傳和下載。

JTAG---JointTestActionGroup(聯(lián)合測試行動小組)IEEE1149.1標準。

2.3.3Nor和NandFlash的區(qū)別和使用程序調(diào)試結(jié)束,可執(zhí)行文件燒寫(或稱固化)到目標機中某種Flash中運行。Flash稱作“非易失快閃存儲器”。Nor和Nand是現(xiàn)在市場上兩種主要的非易失閃存技術(shù)。Intel公司于1988年首先開發(fā)出NorFlash技術(shù)。東芝公司1989年開發(fā)出NandFlash區(qū)別:性能、容量和成本、接口技術(shù)2.3.4燒寫Flash

程序調(diào)試結(jié)束,將其可執(zhí)行文件燒寫(或稱固化)到目標機中Flash運行。通過一個轉(zhuǎn)門的下載軟件來進行,該軟件有多款。(注:其安裝和使用請參考具體設備)2.3.5程序的運行

程序固化到FLASH中后,運行前往往將其復制到SDRAM中去,以提高運行速度。2.4ARMC語言程序的基本規(guī)則和系統(tǒng)初始化程序

ARMC語言程序的基本規(guī)則和普通C語言程序有一定區(qū)別難點:系統(tǒng)初始化程序的編寫和項目調(diào)試的仿真器設置2.4.1ARM使用C語言編程基本規(guī)則純匯編語言來完成,工作量巨大,并且不易移植。ARM的程序執(zhí)行速度較高,存儲器的存儲速度和存儲量也很高。C語言的特點:應用程序的開發(fā)時間可以縮短,代碼的移植十分方便,程序的重復使用率提高,程序架構(gòu)清晰易懂,管理較為容易等。匯編語言采用:在大量讀寫硬件寄存器可以縮短程序執(zhí)行時間。如:啟動代碼,操作系統(tǒng)的移植代碼等

C語言與匯編的混合編程:程序簡潔,內(nèi)嵌匯編,程序復雜時,匯編以文件形式加入項目,通過ATPCS的規(guī)定與C程序相互調(diào)用與訪問。ATPCS:ARM、Thumb的過程調(diào)用標準匯編語言的子程序應滿足的3個條件:在子程序編寫時,必須遵守相應的ATPCS規(guī)堆棧的使用要遵守相應的ATPCS規(guī)則;在匯編編譯器中使用atpcs選項。(注:具體規(guī)則無需了解)

1.匯編程序調(diào)用C程序2.C程序調(diào)用匯編程序(了解相互調(diào)用方法即可)基本的ATPCS規(guī)定,詳情請見相關(guān)PDF文檔,簡單說明就是:

1.匯編程序調(diào)用C程序

2.C程序調(diào)用匯編程序2.4.2初始化程序和開發(fā)環(huán)境設置系統(tǒng)的基本初始化內(nèi)容一般包括:分配中斷向量表初始化存儲器系統(tǒng)初始化各工作模式的堆棧初始化

溫馨提示

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

評論

0/150

提交評論