嵌入式系統(tǒng)設(shè)計(jì)與開發(fā)ARM嵌入式開發(fā)工具_(dá)第1頁(yè)
嵌入式系統(tǒng)設(shè)計(jì)與開發(fā)ARM嵌入式開發(fā)工具_(dá)第2頁(yè)
嵌入式系統(tǒng)設(shè)計(jì)與開發(fā)ARM嵌入式開發(fā)工具_(dá)第3頁(yè)
嵌入式系統(tǒng)設(shè)計(jì)與開發(fā)ARM嵌入式開發(fā)工具_(dá)第4頁(yè)
嵌入式系統(tǒng)設(shè)計(jì)與開發(fā)ARM嵌入式開發(fā)工具_(dá)第5頁(yè)
已閱讀5頁(yè),還剩77頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

嵌入式系統(tǒng)設(shè)計(jì)與開發(fā)

第9章ARM嵌入式開發(fā)工具本章提要

9.1ARM下層開發(fā)工具

9.2ARM開發(fā)工具概述

9.3ARM的ADS

9.4EmbestIDE的介紹9.1ARM下層開發(fā)工具由于程序的編譯環(huán)境和運(yùn)行環(huán)境不同,所以ARM嵌入式開發(fā)采用交叉編譯方法進(jìn)行。首先,在通用計(jì)算機(jī)上對(duì)源程序進(jìn)行編寫、編譯、匯編、連接形成可以在目標(biāo)系統(tǒng)上運(yùn)行的目標(biāo)文件;接著,通過(guò)連接/調(diào)試裝置將目標(biāo)文件下載到目標(biāo)系統(tǒng)上運(yùn)行;源程序在目標(biāo)系統(tǒng)上運(yùn)行的情況連接裝置在計(jì)算機(jī)中反映出來(lái),開發(fā)人員通過(guò)反映出的情況根據(jù)開發(fā)項(xiàng)目的需要進(jìn)行相應(yīng)的修改并重復(fù)上述操作直至達(dá)到項(xiàng)目開發(fā)預(yù)期結(jié)果。因此,可以把ARM嵌入式開發(fā)工具分為上層裝在計(jì)算機(jī)中的開發(fā)工具、中間的連接裝置和下層的ARM芯片本身具有的支持嵌入式開發(fā)的工具。ARM嵌入式系統(tǒng)實(shí)時(shí)開發(fā)組織結(jié)構(gòu)圖9.1.1JTAG接口

JTAG接口標(biāo)準(zhǔn)是由測(cè)試聯(lián)合行動(dòng)組(jointtestactiongroup)于1986~1988年推出的基于邊界掃描機(jī)制的標(biāo)準(zhǔn)化草案。1990年IEEE組織將這些草案標(biāo)準(zhǔn)化,并命名為IEEE1149.1標(biāo)準(zhǔn),俗稱JTAG調(diào)試標(biāo)準(zhǔn)。JTAG除了實(shí)現(xiàn)通常意義上的調(diào)試功能外,還可實(shí)現(xiàn)代碼下載或單步執(zhí)行程序等功能。

邊界掃描機(jī)制主要的思想是:通過(guò)在內(nèi)部邏輯之間,即在內(nèi)部邏輯的邊界上增加串行的可讀寫的邊界掃描單元,從而提供芯片級(jí)、板級(jí)、系統(tǒng)級(jí)的標(biāo)準(zhǔn)測(cè)試框架。邊界掃描機(jī)制可以實(shí)現(xiàn)下列目標(biāo):測(cè)試不同單元之間的連接。測(cè)試單個(gè)單元的功能。應(yīng)用邊界掃描寄存器完成其他測(cè)試功能,如偽隨機(jī)測(cè)試、特征分析和靜態(tài)測(cè)試等。JTAG接口的6個(gè)主要信號(hào):1)TestClockInput(TCK)。TCK為TAP的操作提供了一個(gè)獨(dú)立的、基本的時(shí)鐘信號(hào),TAP的所有操作都是通過(guò)這個(gè)時(shí)鐘信號(hào)來(lái)驅(qū)動(dòng)的。TCK在IEEE1149.1標(biāo)準(zhǔn)里是強(qiáng)制要求的。2)TestModeSelectionInput(TMS)。TMS信號(hào)用來(lái)控制TAP狀態(tài)機(jī)的轉(zhuǎn)換,通過(guò)TMS信號(hào),可以控制TAP在不同的狀態(tài)間相互轉(zhuǎn)換。TMS信號(hào)在TCK的上升沿有效。TMS在IEEE1149.1標(biāo)準(zhǔn)里是強(qiáng)制要求的。3)TestDataInput(TDI)。TDI是數(shù)據(jù)輸入接口。所有要輸入到特定寄存器的數(shù)據(jù)都是通過(guò)TDI接口一位一位串行輸入的(由TCK驅(qū)動(dòng))。TDI在IEEE1149.1標(biāo)準(zhǔn)里是強(qiáng)制要求的。4)TestDataOutput(TDO)。TDO是數(shù)據(jù)輸出的接口。所有要從特定邊界掃描鏈采樣的保存在寄存器中的數(shù)據(jù)都是通過(guò)TDO接口一位一位串行輸出的(由TCK驅(qū)動(dòng));在芯片串行測(cè)試時(shí),將數(shù)據(jù)傳送給下一個(gè)芯片。TDO在IEEE1149.1標(biāo)準(zhǔn)里是強(qiáng)制要求的。5)TestResetInput(TRST/nTRST)。TRST可以用來(lái)對(duì)TAPController進(jìn)行復(fù)位(初始化)即JTAG復(fù)位。該信號(hào)接口在IEEE1149.1標(biāo)準(zhǔn)里是可選的,因?yàn)橥ㄟ^(guò)TMS也可以對(duì)TAPController進(jìn)行復(fù)位/初始化。為了防止誤觸發(fā),應(yīng)在該端加適當(dāng)上拉電阻。6)SystemReset(nSRST/SRST)。與目標(biāo)板上的系統(tǒng)復(fù)位信號(hào)相連。可以直接對(duì)目標(biāo)系統(tǒng)復(fù)位,同時(shí)可以檢測(cè)目標(biāo)系統(tǒng)的復(fù)位情況。該信號(hào)接口在IEEE1149.1標(biāo)準(zhǔn)里是可選的,并不是強(qiáng)制要求的。20針JTAG接口信號(hào)

20針JTAG接口連接

9.1.2JTAGTAP

JTAG測(cè)試訪問(wèn)端口JTAGTAP是一個(gè)通用端口,是外部JTAG接口連接芯片的通道,由JTAGTAP控制器和掃描鏈構(gòu)成。通過(guò)TAP可以訪問(wèn)芯片提供的所有數(shù)據(jù)寄存器(DR,dataregister)和指令寄存器(IR,instructionregister)。對(duì)整個(gè)TAP的控制是通過(guò)TAPController完成的。TAP有5個(gè)接口信號(hào):TCK、TMS、TDI、TDO和TRST,提供給JTAG接口。掃描鏈鏈?zhǔn)怯捎煽拷酒妮斴斎?輸出出管腳腳上各各增加加一個(gè)個(gè)用于于實(shí)現(xiàn)現(xiàn)對(duì)芯芯片輸輸入/輸出出信號(hào)號(hào)進(jìn)行行觀察察和控控制的的移位位寄存存器單單元,,相互互連接接構(gòu)成成。即即在芯芯片/內(nèi)部部邏輯輯的周周圍形形成一一個(gè)邊邊界掃掃描鏈鏈(boundary-scanchain)。。如果需需要捕捕獲芯芯片某某個(gè)管管腳上上的輸輸出,,首先先需要要把該該管腳腳上的的輸出出裝載載到邊邊界掃掃描鏈鏈的寄寄存器器單元元里,,然后后通過(guò)過(guò)TDO輸輸出,,得到到相應(yīng)應(yīng)管腳腳的輸輸出信信號(hào)。。如果要要在芯芯片的的某個(gè)個(gè)管腳腳上加加載一一個(gè)特特定的的信號(hào)號(hào),則則首先先通過(guò)過(guò)TDI把把期望望的信信號(hào)移移位到到與相相應(yīng)管管腳相相連的的邊界界掃描描鏈的的寄存存器單單元里里,然然后把把該寄寄存器器單元元的值值加載載到相相應(yīng)的的芯片片管腳腳。在IEEE1149.1標(biāo)標(biāo)準(zhǔn)里里面,,寄存存器分分為兩兩大類類:數(shù)數(shù)據(jù)寄寄存器器DR和指指令寄寄存器器IR。邊界掃掃描鏈鏈屬于于數(shù)據(jù)據(jù)寄存存器的的一種種,用用來(lái)實(shí)實(shí)現(xiàn)對(duì)對(duì)芯片片的輸輸入/輸出出的觀觀察和和控制制,而而指令令寄存存器用用來(lái)實(shí)實(shí)現(xiàn)對(duì)對(duì)數(shù)據(jù)據(jù)寄存存器的的控制制。如在芯芯片提提供的的所有有邊界界掃描描鏈中中選擇擇一條條指定定的邊邊界掃掃描鏈鏈作為為當(dāng)前前的目目標(biāo)掃掃描鏈鏈,并并作為為訪問(wèn)問(wèn)對(duì)象象就是是由相相應(yīng)指指令寄寄存器器完成成的。。通過(guò)TAP接口口,對(duì)對(duì)數(shù)據(jù)據(jù)寄存存器進(jìn)進(jìn)行訪訪問(wèn)的的一般般過(guò)程程是::1)通通過(guò)指指令寄寄存器器,選選定一一個(gè)需需要訪訪問(wèn)的的數(shù)據(jù)據(jù)寄存存器。。2)把把選定定的數(shù)數(shù)據(jù)寄寄存器器連接接到TDI和TDO之間間。3)由由TCK驅(qū)驅(qū)動(dòng),,通過(guò)過(guò)TDI,,把需需要的的數(shù)據(jù)據(jù)輸入入到選選定的的數(shù)據(jù)據(jù)寄存器中中,同同時(shí)把把選定定的數(shù)數(shù)據(jù)寄寄存器器中的的數(shù)據(jù)據(jù)通過(guò)過(guò)TDO讀讀出來(lái)來(lái)。JTAGTAP控控制制器狀狀態(tài)轉(zhuǎn)轉(zhuǎn)換圖圖指令寄寄存器器和數(shù)數(shù)據(jù)寄寄存器器工作作過(guò)程程:1)系系統(tǒng)上上電后后在TMS信號(hào)號(hào)驅(qū)動(dòng)動(dòng)下,,TAPController進(jìn)入入Test-LogicReset狀態(tài)態(tài),然然后可可依次次進(jìn)入入Run-Test/Idle→→Select-DR-Scan→Select-IR-Scan→→Capture-IR→Shift-IR→→Exit1-IR→→Pause-IR→Exit2-IR→→Update-IR,,最后后回到到Run-Test/Idle狀狀態(tài)。。在Capture-IR狀狀態(tài)中中,一一個(gè)特特定的的指令令加載載到指指令寄寄存器器中,,進(jìn)入入到Shift-IR狀狀態(tài)。。在Shift-IR狀狀態(tài)下下,通通過(guò)TCK的驅(qū)驅(qū)動(dòng),,可以以將該該指令令送到到指令令寄存存器中中。每每條指指令都都將確確定一一個(gè)相相應(yīng)的的數(shù)據(jù)據(jù)寄存存器。。然后后可以以沿著著Shift-IR→Exit1-IR→→Pause-IR→Exit2-IR→→Update-IR路路徑進(jìn)進(jìn)行,,也可可以沿沿著其其他的的路徑徑到達(dá)達(dá)Update-IR狀狀態(tài)。。在Update-IR狀態(tài)態(tài),剛剛才輸輸入到到指令令寄存存器中中的指指令將將更新新指令令寄存存器成成為當(dāng)當(dāng)前指指令。。最后后,進(jìn)進(jìn)入到到Run-Test/Idle狀狀態(tài),,指令令生效效,完完成對(duì)對(duì)指令令寄存存器的的訪問(wèn)問(wèn)。2)對(duì)當(dāng)當(dāng)前數(shù)據(jù)據(jù)寄存器器的訪問(wèn)問(wèn)由指令令寄存器器中的當(dāng)當(dāng)前指令令決定。。要訪問(wèn)問(wèn)由指令令選定的的數(shù)據(jù)寄寄存器,,需要以以Run-Test/Idle為起起點(diǎn)在TMS信信號(hào)驅(qū)動(dòng)動(dòng)下,依依次進(jìn)入入Select-DR-Scan→→Capture-DR→→Shift-DR→Exit1-DR→Pause-DR→Exit2-DR→Update-DR,最最后回到到Run-Test/Idle狀態(tài)態(tài)。在這這個(gè)過(guò)程程中,被被當(dāng)前指指令選定定的數(shù)據(jù)據(jù)寄存器器會(huì)被連連接在TDI和和TDO之間。。通過(guò)TDI和和TDO,就可可以將新新的數(shù)據(jù)據(jù)加載到到數(shù)據(jù)寄寄存器中中,同時(shí)時(shí),也可可以捕獲獲數(shù)據(jù)寄寄存器中中的數(shù)據(jù)據(jù)?,F(xiàn)在常用用的ARM7和和ARM9的微微內(nèi)核ARM7TDMI與ARM9TDMI都提供了了4條掃掃描鏈::1)ScanChain0測(cè)測(cè)試鏈2)ScanChain1調(diào)試試鏈3)ScanChain2編程程鏈4)ScanChain3外圍圍測(cè)試鏈鏈ARM9TDMI邊界界掃描鏈鏈1的另另外兩個(gè)個(gè)信號(hào)DDEN和SYSSPEED的作用是是:DDEN在ARM9TDMI內(nèi)部測(cè)測(cè)試模式式下,是是可獲取取、可測(cè)測(cè)試的。。在ARM9TDMI外部測(cè)測(cè)試模式式下低電電平表示示將獲取取數(shù)據(jù)總總線上輸輸入的數(shù)數(shù)據(jù),高高電平表表示將要要輸出掃掃描鏈上上存儲(chǔ)的的數(shù)據(jù)。。在ARM9TDMI進(jìn)進(jìn)入調(diào)試試狀態(tài)時(shí)時(shí),SYSSPEED將輸出出。低電電平表示示微內(nèi)核核現(xiàn)在進(jìn)進(jìn)入斷點(diǎn)點(diǎn)調(diào)試,,高電平平表示微微內(nèi)核進(jìn)進(jìn)入觀察點(diǎn)調(diào)試試狀態(tài)。。9.1.3EmbeddedICE嵌入入式在線線仿真器器系統(tǒng)中內(nèi)內(nèi)核調(diào)試試功能,,主要由由4部分分組成::ARM核核內(nèi)的一一組調(diào)試試擴(kuò)展。。EmbeddedICE宏宏。EmbeddedICE宏宏接口。?;贘TAG接接口的在在主機(jī)和和內(nèi)核之之間的調(diào)調(diào)試通信信通道。。EmbeddedICE寄寄存器地址寬度功能地址寬度功能000006調(diào)試控制寄存器011009觀察點(diǎn)0控制值寄存器000015調(diào)試狀態(tài)寄存器011018觀察點(diǎn)0控制屏蔽寄存器000101中止?fàn)顟B(tài)寄存器1000032觀察點(diǎn)1地址值寄存器001006調(diào)試通信控制寄存器1000132觀察點(diǎn)1地址屏蔽寄存器0010132調(diào)試通信數(shù)據(jù)寄存器1001032觀察點(diǎn)1數(shù)據(jù)值寄存器0100032觀察點(diǎn)0地址值寄存器1001132觀察點(diǎn)1數(shù)據(jù)屏蔽寄存器0100132觀察點(diǎn)0地址屏蔽寄存器101009觀察點(diǎn)1控制值寄存器0101032觀察點(diǎn)0數(shù)據(jù)值寄存器101018觀察點(diǎn)1控制屏蔽寄存器0101132觀察點(diǎn)0數(shù)據(jù)屏蔽寄存器調(diào)試控制制寄存器器(debugcontrolregister))用來(lái)控控制EmbeddedICE,6位分別別對(duì)應(yīng)6種控制制信號(hào),,從低到到高依次次是DBGACK、DBGRQ、INTDIS、、SBZ/RAZ、MonitorModeEnable和EmbeddedICE。DBGRQ調(diào)試試請(qǐng)求信信號(hào),通通過(guò)將該該信號(hào)置置1,可可以強(qiáng)制制ARM7TDMI/ARM9TDMI暫暫停當(dāng)前前的指令令,進(jìn)入入調(diào)試狀狀態(tài);INTDIS用用來(lái)控制制中斷;;SBZ/RAZ任何何時(shí)候都都必須被被置0;;MonitorModeEnable用來(lái)來(lái)控制是是否進(jìn)入入Monitor模式式;EmbeddedICE-RTDisable用來(lái)來(lái)控制整整個(gè)EmbeddedICE-RT,是是啟用還還是禁用用,如果果禁用的的話,ARM7TDMI/ARM9TDMI將一一直保持持在正常常的運(yùn)行行狀態(tài)。。通過(guò)調(diào)試試狀態(tài)寄寄存器((debugstatusregister)可以以查詢當(dāng)當(dāng)前系統(tǒng)統(tǒng)的狀態(tài)態(tài)。調(diào)試試狀態(tài)寄寄存器是是可讀可可寫的,,但一般般只進(jìn)行行讀操作作。5位位信號(hào)從從低位到到高位分分別是::DBGACK、DBGRQ、IFEN、、CGENL和和TBIT,其其中DBGACK標(biāo)識(shí)識(shí)當(dāng)前系系統(tǒng)是否否處于調(diào)調(diào)試狀態(tài)態(tài),置1表示處處于調(diào)試試狀態(tài);;DBGRQ標(biāo)標(biāo)識(shí)DBGRQ信號(hào)的的當(dāng)前狀狀態(tài);IFEN標(biāo)識(shí)系系統(tǒng)的中中斷狀態(tài)態(tài)是啟用用還是禁禁用;CGENL標(biāo)識(shí)識(shí)調(diào)試狀狀態(tài)下對(duì)對(duì)存儲(chǔ)器器的訪問(wèn)問(wèn)是否完完成;TBIT用來(lái)判判斷是從從ARM還是Thumb模式式進(jìn)入調(diào)調(diào)試狀態(tài)態(tài)。中止?fàn)顟B(tài)態(tài)寄存器器(abortstatusregister)用用來(lái)確定定異常的的產(chǎn)生原原因:斷斷點(diǎn)、觀觀察點(diǎn)還還是真的的異常。。調(diào)試通信信控制寄寄存器((debugcommscontrolregister)和和調(diào)試通通信數(shù)據(jù)據(jù)寄存器器(debugcommsdataregister))是用來(lái)來(lái)控制和和操作調(diào)調(diào)試通信信通道。。其他的的寄存器器都是關(guān)關(guān)于觀察察點(diǎn)WATCHPOINT的寄存存器,用用于設(shè)置置斷點(diǎn)和和觀察點(diǎn)點(diǎn)。剩下的12個(gè)寄寄存器可可以表示示成如下下形式::觀察點(diǎn)0/1地地址值/屏蔽寄寄存器。。觀察點(diǎn)0/1數(shù)數(shù)據(jù)值/屏蔽寄寄存器。。觀察點(diǎn)0/1控控制值/屏蔽寄寄存器。。9.1.4ETM嵌入式式跟蹤宏宏ETM能能捕獲指指令和數(shù)數(shù)據(jù)序列列,訪問(wèn)問(wèn)并把它它們的記記錄發(fā)送送給芯片片上或芯芯片外的的緩沖器器,ARM的ETM既既可設(shè)置置成允許許觸發(fā)器器工作也也可設(shè)置置成允許許跟蹤結(jié)結(jié)果被濾濾出。使使用ETM的過(guò)過(guò)濾功能能,可以以只捕獲獲特別中中斷的或或特殊文文件的代代碼執(zhí)行行,即相相當(dāng)于提提供了對(duì)對(duì)代碼的的壓縮功功能。ETM由由如下兩兩部分組組成:跟蹤端口口,用于于實(shí)時(shí)執(zhí)執(zhí)行的跟跟蹤。代代碼執(zhí)行行時(shí),CPU發(fā)發(fā)送串行行、經(jīng)過(guò)過(guò)編碼、、壓縮的的分支目目標(biāo)地址址、管線線狀態(tài)、、讀寫數(shù)數(shù)據(jù)給ETM。。觸發(fā)裝置置,規(guī)范范已被開開發(fā)。該該規(guī)范允允許指定定特定應(yīng)應(yīng)用所需需的觸發(fā)發(fā)源的準(zhǔn)準(zhǔn)確集合合。資源源包括地地址和數(shù)數(shù)據(jù)比較較器、計(jì)計(jì)數(shù)器和和定序器器。9.2ARM開發(fā)發(fā)工具概概述9.2.1JTAG仿真真器JTAG仿真器器也稱為為JTAG調(diào)試試器,是是通過(guò)ARM芯芯片的JTAG邊界掃描口口進(jìn)行調(diào)調(diào)試的設(shè)設(shè)備。JTAG仿真器器連接比比較方便便,通過(guò)過(guò)現(xiàn)有的JTAG邊界掃掃描口與與ARMCPU核核通信信,屬于于完全非非插入式(即即不使用用片上資資源)調(diào)調(diào)試,它它無(wú)需目目標(biāo)存儲(chǔ)儲(chǔ)器,不不占用目標(biāo)系統(tǒng)統(tǒng)的任何何端口,,而這些些是駐留留監(jiān)控軟軟件所必必需的。。另外,由于于JTAG調(diào)試試的目標(biāo)標(biāo)程序是是在目標(biāo)標(biāo)板上執(zhí)執(zhí)行,仿仿真更接接近于目標(biāo)標(biāo)硬件,,因此,,許多接接口問(wèn)題題,如高高頻操作作限制、、AC和和DC參數(shù)數(shù)不匹配配與電線線長(zhǎng)度的的限制等等均被最最小化了了。使用用集成開發(fā)環(huán)境境配合JTAG仿真器器進(jìn)行開開發(fā)是目目前采用用最多的的一種調(diào)調(diào)試方式。。JTAG仿真器器通過(guò)ARM處處理器的的JTAG調(diào)試試接口與與目標(biāo)機(jī)機(jī)通信,,通過(guò)并口口或串口口、網(wǎng)口口、USB口與與宿主機(jī)機(jī)通信。。通過(guò)JTAG方式可以完完成:讀出/寫寫入CPU的寄寄存器,,訪問(wèn)控控制ARM處理理器內(nèi)核核。讀出/寫寫入內(nèi)存存,訪問(wèn)問(wèn)系統(tǒng)中中的存儲(chǔ)儲(chǔ)器和系系統(tǒng)端口口。訪問(wèn)ASIC系統(tǒng)。。訪問(wèn)I/O系統(tǒng)統(tǒng)??刂瞥绦蛐蜻\(yùn)行、、停止、、單步執(zhí)執(zhí)行和實(shí)實(shí)時(shí)執(zhí)行行程序、、設(shè)置程程序斷點(diǎn)點(diǎn)。復(fù)位目標(biāo)標(biāo)系統(tǒng)、、下載代代碼到目目標(biāo)ARM。實(shí)時(shí)的設(shè)設(shè)置基于于指令地地址值、、數(shù)據(jù)值值的斷點(diǎn)點(diǎn)。目前國(guó)內(nèi)內(nèi)最常用用的幾種種該類型型仿真器器:1.EmbestPowerICEforARMEmbestPowerICEforARM是英英蓓特公公司開發(fā)發(fā)的實(shí)時(shí)時(shí)在線仿仿真器。2.RealViewICERealViewICE是是ARM公司最最新仿真真器。3.TRACE32-ICDTRACE32-ICD是德德國(guó)Lauterbach公公司開發(fā)發(fā)的基于于BDM、JTAG和OCDS等調(diào)調(diào)試接口口的仿真真工具。。在在線仿仿真器ICE在線仿真真器ICE(in-circuitemulator)是一一種模擬擬CPU的設(shè)備,在線線仿真器器使用仿仿真頭完完全取代代目標(biāo)板板上的CPU,,可以完完全仿真ARM芯芯片的行行為,提提供更加加深入的的調(diào)試功功能。在在和宿主主機(jī)連接的的接口上上,在線線仿真器器也是通通過(guò)串行行端口或或并行端端口、網(wǎng)口和USB口口通信。。在線仿仿真器為為了能夠夠全速仿仿真時(shí)鐘鐘速度很很高的ARM處理理器,通通常必須須采用極極其復(fù)雜雜的設(shè)計(jì)計(jì)和工藝藝,因而而其價(jià)格比比較昂貴貴。在線線仿真器器通常用用在ARM硬件件開發(fā)中中,軟件件開發(fā)中使使用較少少。集集成開開發(fā)環(huán)境境本身帶帶的仿真真軟件以Embest為例,,編譯好好運(yùn)行在在目標(biāo)系系統(tǒng)上的的文件后后,在ProjectSettings對(duì)話框框的Remote選項(xiàng)項(xiàng)卡上,,選擇Remotedevice下下拉列表表框的SimArm7選項(xiàng),,即可通通過(guò)軟件件形式在在IDE中進(jìn)行仿仿真。EmbestIDE軟件仿仿真設(shè)置置Multi2000模塊與與應(yīng)用系系統(tǒng)該IDE開發(fā)環(huán)環(huán)境主要要包括::工程生成成工具((projectbuiler))源代碼調(diào)調(diào)試器((source-leveldebugger)事件分析析器(eventanalyzer)性能剖析析器(performanceprofiler)實(shí)時(shí)運(yùn)行行錯(cuò)誤檢檢查工具具(run-timeerrorchecking)圖形化瀏瀏覽器((graphicalbrower)文本編輯輯器(texteditor)版本控制制工具((versioncontrolsystem)9.2.5RVDS集成成開發(fā)環(huán)環(huán)境RealViewDeveloperSuite工具是是ARM公司繼繼ADS之后推推出的新一代ARM集集成開發(fā)發(fā)環(huán)境,,是RealViewARM新一一代開發(fā)發(fā)工具集中的集集成開發(fā)發(fā)環(huán)境部部分,目目前的最最新版本本是2.2。RealViewARM完完整的開開發(fā)工具具,包括括集成開開發(fā)環(huán)境境、在線線調(diào)試工具仿仿真器等等。適用用于采用用多ARM內(nèi)核核結(jié)構(gòu)或或ARM內(nèi)核加加DSP內(nèi)內(nèi)核混合合結(jié)構(gòu)的的系統(tǒng),,為開發(fā)發(fā)人員提提供一個(gè)個(gè)“認(rèn)識(shí)識(shí)操作系系統(tǒng)(OS-aware))”的多多內(nèi)核調(diào)調(diào)試器。。新產(chǎn)品品是第一一個(gè)能對(duì)對(duì)多ARM和DSP內(nèi)核真真正同步步進(jìn)行高高集成度度調(diào)試的的調(diào)試器器。它通通過(guò)單一一內(nèi)核程序序進(jìn)行多多內(nèi)核調(diào)調(diào)試,并并采用了了MentorGraphics的嵌入入技術(shù)。支持持的操作作系統(tǒng)包包括Symbian、、ThreadX和Nucleus等。RVDS集成開開發(fā)環(huán)境境的主要要特性包包括編譯譯工具、、調(diào)試工工具和指指令集仿真真工具。。編譯工具具和調(diào)試試工具的的特點(diǎn)::(1)RealView編譯譯工具全面優(yōu)化化ISOC++編譯譯器。ARM、、Thumb、、C、C++編編譯,ARM、、Thumb匯匯編和宏宏匯編。。ARM連連接器。。庫(kù)的連接接和管理理。映像文件件轉(zhuǎn)化功功能。(2)RVD調(diào)調(diào)試工具具支持多核核(ARM+DSP))調(diào)試和和單核ARM/DSP調(diào)試。。自動(dòng)識(shí)別別Symbian、ThreadX和Nucleus等等操作系系統(tǒng)。具有跟蹤蹤、分析析程序功功能。9.3ARM的ADSADS即即ARMDeveloperSuite,,是ARM公司司推出的的新一代代ARM集成開發(fā)發(fā)工具,,用來(lái)取取代ARM公司司在此前前推出的的開發(fā)工工具ARMSDT(ARMsoftwaredevelopmenttoolkit)。9.3.1ADS介紹ARMADS使用CodeWarriorIDE集集成開發(fā)發(fā)環(huán)境替替代了SDT的的工程管理器器APM,使用用AXD(ARMextendeddebugger)替替換了SDT的的調(diào)試工工具ADW,可可以在Windows和RedHatLinux上運(yùn)運(yùn)行。CodeWarriorIDE為為用戶提提供下面面的功能能:源代碼編編輯器,,集成在在CodeWarriorIDE瀏覽器器中,能能夠根據(jù)據(jù)語(yǔ)法格格式,使使用不同同的顏色色顯示代代碼。源代碼瀏瀏覽器,,保存了了在源碼碼中定義義的所有有符號(hào),,能夠使使用戶在在源碼中中快速方方便的跳跳轉(zhuǎn)。查找和替替換功能能,用戶戶可在多多個(gè)文件件中,利利用字符符串通配配符,進(jìn)進(jìn)行字符符串的搜搜索和替替換。文件比較較功能,,可以使使用戶比比較路徑徑中的不不同文本本文件內(nèi)內(nèi)容。ARMADS由6部部分組成成:1)代碼碼生成工工具。2)集成成開發(fā)環(huán)環(huán)境。3)調(diào)試試器。4)指令令集模擬擬器。5)ARM開發(fā)發(fā)包。6)ARM應(yīng)用用庫(kù)。9.3.2ADS應(yīng)用1.建建立一一個(gè)工程程工程將所所有的源源碼文件件組織在在一起,,并能夠夠決定最最終生成成文件存放路徑徑,輸出出文件格格式等。。1)首先先在CodeWarrior中新建建一個(gè)工工程的方方法有兩兩種,可可以在工具欄中中單擊New按按鈕,也也可以在在File菜單單中選擇擇New命令。。CodeWarrior初始始工程對(duì)對(duì)話框?qū)υ捒蛑兄袨橛脩魬籼峁┝肆?種可可選擇的的工程類類型:ARMExecutableImage:用用于由ARM指指令的代代碼生成成一個(gè)ELF格格式的可可執(zhí)行映映像文件件。ARMObjectLibrary::用于由由ARM指令的的代碼生生成一個(gè)個(gè)armar格格式的目目標(biāo)文件件庫(kù)。EmptyProject:用于于創(chuàng)建一一個(gè)不包包含任何何庫(kù)或源源文件的的工程。。MakefileImporterWizard::用于將將VisualC的的nmake或或GNUmake文文件轉(zhuǎn)入入到CodeWarriorIDE工工程文件件。ThumbARMInterworkingImage:用于于由ARM指令令和Thumb指令的的混和代代碼生成成一個(gè)可可執(zhí)行的的ELF格式的的映像文文件。ThumbExecutableimage:用于于由Thumb指令創(chuàng)創(chuàng)建一個(gè)個(gè)可執(zhí)行行的ELF格式式的映像像文件。。ThumbObjectLibrary:用用于由Thumb指令令的代碼碼生成一一個(gè)armar格式的的目標(biāo)文文件庫(kù)。。選擇ARMExecutableImage工程,,在Projectname文本本框中輸輸入工程程文件名名如Test,,單擊Set按按鈕,可可更改該該工程保保存的路路徑,將將這些設(shè)設(shè)置好后后,單擊擊“確定定”即可可建立一一個(gè)新的的名為Test.mcp的ADS工工程。*.mcp文件件是ARM的的工程文文件,當(dāng)當(dāng)建立一一個(gè)工程程文件后后,可以以通過(guò)打打開該工工程的*.mcp文件件在CodeWarrior中打開開該工程程。這時(shí)會(huì)出出現(xiàn)Test.mcp的窗口口??梢钥吹降剿J(rèn)認(rèn)的目標(biāo)標(biāo)調(diào)試環(huán)環(huán)境是DebugRel,單擊擊旁邊的的下三角按鈕鈕,可以以看到還還有另外外兩個(gè)可用用的目標(biāo)標(biāo)調(diào)試環(huán)環(huán)境,分分別為Release和和Debug。。工程窗口口這3個(gè)目目標(biāo)調(diào)試試系統(tǒng)的的含義::DebugRel:表表示在生生成目標(biāo)標(biāo)的時(shí)候候,會(huì)為為每一個(gè)個(gè)源文件件生成調(diào)調(diào)試信息息。Debug:表表示該目目標(biāo)為每每一個(gè)源源文件生生成最完完全的調(diào)調(diào)試信息息。Release:表示示該目標(biāo)標(biāo)不會(huì)生生成任何何調(diào)試信信息。有3個(gè)標(biāo)標(biāo)簽,分分別為Files、LinkOrder和Target,默默認(rèn)的是是顯示第第一個(gè)Files選項(xiàng)項(xiàng)卡。通通過(guò)在該該空白的的選項(xiàng)卡卡上右擊擊,選擇擇AddFiles命令可可以把要要用到的的源程序序添加到到該工程程中。2)打開開ADS的MetrowerksCodeWarrior集集成開發(fā)發(fā)環(huán)境IDE,,單擊工具欄欄上的新新建文本本文件的的圖標(biāo),,可在在出現(xiàn)的的IDE下的空空白頁(yè)面上上輸入要要調(diào)試的的源文件件,并以以Test1.s為文文件名后后綴保存。3)將文文件保存存在剛才才所建工工程的文文件夾下下,文件件名為Test1.s。最小小化該頁(yè)頁(yè)面,也也可以在在Project菜單單中,選選擇AddFiles命令令,打開開文件對(duì)對(duì)話框,,用戶可可以把已已經(jīng)存在在的文件件添加到工程中中,也可可以在剛剛才所建建工程中中添加該該工程。。在工程中中添加文文件2.編編譯和鏈鏈接工程程(1)生生成目標(biāo)標(biāo)的配置置選擇Edit|DebugRelSettings命令令或直接接單擊工工具欄上上的DebugRelSettings圖標(biāo)標(biāo),可以以對(duì)生成成的目標(biāo)標(biāo)文件進(jìn)進(jìn)行配置置。這個(gè)選項(xiàng)會(huì)會(huì)因創(chuàng)建建工程時(shí)時(shí)選擇目目標(biāo)調(diào)試試系統(tǒng)不不同而不不同。DebugRel設(shè)置置對(duì)話框框1)Target設(shè)置置選項(xiàng)。。TargetName文本本框顯示示了當(dāng)前前的目標(biāo)標(biāo)設(shè)置。。Linker下下拉列表表框供用用戶選擇擇要使用用的鏈接接器。這這里默認(rèn)認(rèn)的是ARMLinker,使用用該鏈接接器,將將使用ARMLinker鏈接編編譯器和和匯編器器生成的的工程文文件作為為相應(yīng)目目標(biāo)文件件。另外兩個(gè)個(gè)可選項(xiàng)項(xiàng),None表表示不用用任何鏈鏈接器即即工程中中的所有有文件都都不會(huì)被被編譯器器或匯編編器處理理。ARMLibrarian表表示將編編譯或匯匯編得到到的目標(biāo)標(biāo)文件轉(zhuǎn)轉(zhuǎn)換為ARM庫(kù)庫(kù)文件。。這里使使用默認(rèn)認(rèn)的鏈接接器ARMLinker。。Post-Linker下拉拉列表框框表示鏈鏈接后,,對(duì)輸出出文件進(jìn)進(jìn)行怎樣樣的操作作。2)LanguageSettings。ARMADS的匯編編器是armasm。。如圖所所示,這這里可以以進(jìn)行很很多設(shè)置,包包括運(yùn)行行的目標(biāo)標(biāo)處理器器的內(nèi)核核系列,,可根據(jù)據(jù)運(yùn)行的的目標(biāo)板處理器器類型進(jìn)進(jìn)行選擇擇。命令行工工具選項(xiàng)項(xiàng)設(shè)置3)Linker設(shè)置置。選中ARMLinker,,打開對(duì)對(duì)話框。。對(duì)話框框的主要要標(biāo)簽選選項(xiàng)對(duì)最最終生成成的文件件有著直直接的影影響。在選項(xiàng)卡卡Output中,Linktype選項(xiàng)項(xiàng)中提供供了3種種鏈接方方式。Partial方式表表示鏈接接器只進(jìn)進(jìn)行部分分鏈接,,經(jīng)過(guò)部部分鏈接接生成的的目標(biāo)文文件,可可以作為為以后進(jìn)進(jìn)一步鏈鏈接時(shí)的的輸入文文件。Simple方方式是默默認(rèn)的鏈鏈接方式式,它鏈鏈接生成成簡(jiǎn)單的的ELF格式的的目標(biāo)文文件,使使用的是是鏈接器器選項(xiàng)中中指定的的地址映映射方式式。Scattered方式式使鏈接接器根據(jù)據(jù)scatter格式式文件指指定地址址映射,,生成復(fù)復(fù)雜的ELF格格式的映映像文件件,這個(gè)個(gè)選項(xiàng)一一般情況況下不用用。這里里選擇常常用默認(rèn)認(rèn)的Simple方式式。鏈接器設(shè)設(shè)置在選中Simple方方式后,,就會(huì)出出現(xiàn)Simpleimage,其其各項(xiàng)含含義:ROBase:即Read-only段段,段是是指描述述映像文文件的代代碼或數(shù)數(shù)據(jù)塊。。該段的的加載域域和運(yùn)行行域?yàn)橥粋€(gè)地地址,默默認(rèn)是0x8000。。這里要要根據(jù)實(shí)實(shí)際的硬硬件SDRAM的地址址空間來(lái)來(lái)修改這這個(gè)地址址,保證證在這里里填寫的的地址,,是程序序運(yùn)行時(shí)時(shí)SDRAM地地址空間間所能覆覆蓋的地地址。RWBase:即Read-write段,這這個(gè)文本本框設(shè)置置了包含含RW和和ZI((zero-initialized)輸輸出段的的運(yùn)行域域地址。。如果選選中split選項(xiàng),,鏈接器器生成的的映像文文件將包包含兩個(gè)個(gè)加載域域和兩個(gè)個(gè)運(yùn)行域域。此時(shí)時(shí),在RWBase中所輸輸入的地地址為包包含RW和ZI輸出段段的域設(shè)設(shè)置了加加載域和和運(yùn)行域域地址。。Ropi:選中中這個(gè)復(fù)復(fù)選框?qū)⒏嬖V鏈鏈接器使使包含有有RO輸輸出段的的運(yùn)行域域位置無(wú)無(wú)關(guān)。使使用這個(gè)個(gè)選項(xiàng),,鏈接器器將保證證:首先先檢查各各段之間間的重地地址是否否有效,,其次確確保任何何由ARM鏈接接器armlink自自身生成成的代碼碼是只讀讀位置無(wú)無(wú)關(guān)的。。Rwpi:選中中該復(fù)選選框?qū)?huì)會(huì)告訴鏈鏈接器使使包含RW和ZI輸出出段的運(yùn)運(yùn)行域位位置無(wú)關(guān)關(guān)。如果果它沒(méi)有有被選中中,域就就標(biāo)識(shí)為為絕對(duì)。。每一個(gè)個(gè)可寫的的輸入段段必須是是讀寫位位置無(wú)關(guān)關(guān)的。如如果被選選中,鏈鏈接器檢檢查可讀讀/可寫寫屬性的的運(yùn)行域域的輸入入段是否否設(shè)置了了位置無(wú)無(wú)關(guān)屬性性,檢查查在各段段之間的的重地址址是否有有效。SplitImage:選中這個(gè)個(gè)復(fù)選框把包包含RO和RW輸出段的的加載域分成成兩個(gè)加載域域:一個(gè)是包包含RO輸出出段的域,一一個(gè)是包含RW輸出段的的域。Relocatable:選中這個(gè)個(gè)復(fù)選框保留留了映像文件件的重地址偏偏移量。這些些偏移量為程程序加載器提提供了有用信信息。Options選項(xiàng)卡,,用于指明存存儲(chǔ)器的替換換方法、調(diào)試試信息的設(shè)置置和映像文件件的初始入口口地址等信息息。鏈接器的操作作選項(xiàng)卡設(shè)置置(2)進(jìn)行編編譯和鏈接選擇Project|make命令或單擊擊工具欄上的的Make圖圖標(biāo),就可以以對(duì)工程進(jìn)行編編譯和鏈接了了。在工程Test所在在目錄下,會(huì)會(huì)生成一個(gè)名為“工程程名_data目錄”,,在本例中就就是“Test_data目錄”,,在這個(gè)目錄下不不同類別的目目標(biāo)對(duì)應(yīng)不同同目錄。本例例使用的是DebugRel目標(biāo),,所以生成的的最終文件都都應(yīng)該在該目目錄下。進(jìn)入到DebugRel目目錄中,會(huì)看看到生成的映映像文件和二二進(jìn)制文件,映像文件件用于調(diào)試,,二進(jìn)制文件件可以燒寫到到開發(fā)板或?qū)崒?shí)驗(yàn)箱的Flash中運(yùn)行。。編譯和鏈接過(guò)過(guò)程3.用AXD進(jìn)行代碼碼調(diào)試AXD是ADS軟件中獨(dú)獨(dú)立于CodeWarriorIDE的代碼碼調(diào)試工具,,打開AXD軟件,默認(rèn)認(rèn)打開的目標(biāo)標(biāo)是ARMulator。ARMulator是在主系統(tǒng)統(tǒng)上用軟件模模擬各種ARM處理器核核行為的程序序。這是最常常用的一種調(diào)調(diào)試工具,要要使用AXD必須首先打打開已經(jīng)生成成的.axf文件,該文文件就是含有有調(diào)試信息的的可執(zhí)行ELF格式的映映像文件。在沒(méi)有添加其其他仿真驅(qū)動(dòng)動(dòng)程序前,Target項(xiàng)只有兩兩項(xiàng)分別為ADDP((JTAG硬硬件仿真)和和ARMUL(即ARMulator軟件仿真真)。如果使使用其他硬件件仿真器連接接到相應(yīng)的目目標(biāo)板或?qū)嶒?yàn)驗(yàn)箱上,可以以打開AXD工具欄的Options|ConfigureTarget命令進(jìn)行行添加。在添添加之前首先先要進(jìn)行相應(yīng)應(yīng)仿真器驅(qū)動(dòng)動(dòng)程序的安裝裝,將仿真器器的驅(qū)動(dòng)文件件復(fù)制到ADS的BIN目錄下,如如C:\ProgramFiles\ARM\ADSv1_2\BIN。AXD的選擇擇目標(biāo)環(huán)境對(duì)對(duì)話框AXD調(diào)試環(huán)環(huán)境9.4EmbestIDE介介紹概概述1.EmbestIDE集集成開發(fā)環(huán)境境EmbestIDE的的英文全稱是是EmbestIntegratedDevelopmentEnvironment,是由深圳圳市英蓓特信信息技術(shù)有限限公司開發(fā),,應(yīng)用于嵌入式軟軟件開發(fā)的集集成開發(fā)環(huán)境境。提供嵌入入式應(yīng)用軟件件開發(fā)平臺(tái),包括括一整套完備備的面向嵌入入式系統(tǒng)的開開發(fā)和調(diào)試工工具:有編輯輯器、編譯器器、鏈接器、、調(diào)試器、工工程管理器和和底層調(diào)試接口設(shè)設(shè)備(BDM/JTAG仿真器)等等。集成開發(fā)發(fā)環(huán)境IDE的界面同MicrosoftVisualStudio環(huán)境相似似,可以在EmbestIDE集成開開發(fā)環(huán)境中創(chuàng)創(chuàng)建工程、打打開工程,建建立、打開和和編輯文件,編譯、、鏈接、運(yùn)行行、調(diào)試嵌入入式應(yīng)用程序序。EmbestIDE工工具集示意圖圖2.EmbestIDE主要特特征EmbestIDE可可運(yùn)行于Windows系列操作系系統(tǒng),支持ARM7和ARM9系列列處理器、Motorola公司的的部分處理器器。與處理器器和調(diào)試設(shè)備相關(guān)關(guān)模塊采用即即插即用方式式,可以在同同一個(gè)工作區(qū)區(qū)中同時(shí)管理多個(gè)個(gè)應(yīng)用軟件和和庫(kù)工程,各各工程均可配配置不同的處處理器和仿真器,,用戶可以在在各工程中無(wú)無(wú)縫切換。EmbestIDEforARM的主要要特性:支持開發(fā)語(yǔ)言言:ANSIC、EmbeddedC++、匯編語(yǔ)言言。類似VisualStudio的的用戶界面,,支持打印功功能,支持文文件內(nèi)查找功功能和FindinFiles功能,支持持C語(yǔ)言程序序函數(shù)列表及及定位。工程管理器::以project為單單位管理用戶戶的應(yīng)用程序序,進(jìn)行編譯譯鏈接選項(xiàng)定定制。源碼編輯器::支持標(biāo)準(zhǔn)的的文本編輯功功能、syntax-color、、用戶定義語(yǔ)語(yǔ)言模板、語(yǔ)語(yǔ)法關(guān)鍵字、、關(guān)鍵字色彩彩顯示和Hex文件編輯輯器。編譯工具:使使用自由軟件件GNU的GCC編譯鏈鏈接器,同時(shí)時(shí)兼容ARMSDT編編譯工具套件件,支持C語(yǔ)語(yǔ)言、匯編語(yǔ)語(yǔ)言等。調(diào)試器:源碼碼級(jí)調(diào)試,提提供了圖形和和命令行兩種種調(diào)試方式。。可進(jìn)行斷點(diǎn)點(diǎn)設(shè)置、單步步執(zhí)行、異常常處理,可查查看修改存儲(chǔ)儲(chǔ)器、寄存器器、變量等,,可查看函數(shù)數(shù)棧、堆棧;;可進(jìn)行反匯匯編、提供圖圖形界面操作作和命令行操操作方式,支支持源程序、、反匯編程序序和混合窗口口顯示,還提提供了程序下下載功能等。。3.EmbestIDE主框架架窗口EmbestIDE主主界面圖開發(fā)環(huán)境主框框架窗口由標(biāo)標(biāo)題欄、菜單單欄、工具欄欄、工作區(qū)、、客戶區(qū)、輸輸出窗口和狀狀態(tài)欄等組成成。主框架窗窗口的最上端端為標(biāo)題欄,,用于顯示當(dāng)當(dāng)前打開的文文件名。標(biāo)題題欄下面為菜菜單欄和工具具欄,工具欄欄的下面為工工作區(qū)和客戶戶區(qū)。工作區(qū)區(qū)用于顯示當(dāng)當(dāng)前打開工程程的有關(guān)信息息,包括工程程的文件組成成等內(nèi)容??涂蛻魠^(qū)用于文文本編輯器進(jìn)進(jìn)行C、匯編編等源文件的的編輯。輸出出窗口通常在在工作區(qū)和客客戶區(qū)的下面面,用于輸出出編譯信息、、調(diào)試信息、、命令行輸入入/輸出和輸輸出一些查詢?cè)兘Y(jié)果信息等等。主框架窗窗口的最底端端為狀態(tài)欄,,用于顯示關(guān)關(guān)于菜單欄、、工具欄等的的簡(jiǎn)單說(shuō)明信信息以及文本本編輯器中當(dāng)當(dāng)前光標(biāo)所在在的行列號(hào)等等。各個(gè)欄、、區(qū)的功能和和VisualStudio中基基本相同,這這里不再贅述述。工工程示例例從一個(gè)簡(jiǎn)單工工程的創(chuàng)建、、編譯、下載載到調(diào)試運(yùn)行行來(lái)說(shuō)明EmbestIDE的應(yīng)用。1.工程的創(chuàng)創(chuàng)建打開EmbestIDE軟件,選選擇File|NewWorkspace命命令建立一個(gè)新的的工程,在彈彈出的對(duì)話框框中輸入工程程的名稱,并并確定工程存放的的路徑。單擊擊OK按鈕保保存自己的設(shè)設(shè)置。工程對(duì)話框2.輸入源源文件并加到到工程中選擇File|New命令或單單擊工具欄上上的新建文本本文件圖標(biāo),,在客戶區(qū)中輸輸入自己的源源文件。該文文件完成將十十六進(jìn)制的AA、56存儲(chǔ)到內(nèi)內(nèi)存中0x8000開始始的存儲(chǔ)單元元中。保存文件到工工程Test所在的目錄錄下,注意文文件名應(yīng)以.s為擴(kuò)展名,這里保存存為Test.s。在工作區(qū)的ProjectSourceFiles中中右擊,在彈彈出的對(duì)話框框中選擇AddFilestoFolder命命令,添加Test.s到工程Test中。3.編譯工工程在編譯工程前前先要對(duì)工程程文件將要運(yùn)運(yùn)行的目標(biāo)環(huán)環(huán)境進(jìn)行設(shè)置置。選擇Project|Settings命令,彈彈出對(duì)話框。。設(shè)置完CPU的類型和和所用的編譯譯工具后,單單擊OK按鈕鈕。單擊工具欄上上的Build圖標(biāo),,或按按F7快捷鍵鍵對(duì)工程進(jìn)行行編譯。如果果文件有錯(cuò)誤誤會(huì)在輸出窗窗口輸出錯(cuò)誤誤信息,可根根據(jù)錯(cuò)誤信息息進(jìn)行修改。。如果沒(méi)錯(cuò)誤誤將輸出Command(s)successfullyexecuted信息。處理器設(shè)置選選項(xiàng)卡4.連接的的設(shè)置這里指的是計(jì)計(jì)算機(jī)和目標(biāo)標(biāo)板之間連接接的仿真器設(shè)設(shè)置,可根據(jù)據(jù)實(shí)際的連接形式式進(jìn)行設(shè)置。常規(guī)調(diào)試屬性性配置頁(yè)下載信息屬性性配置頁(yè)5.調(diào)試和和下載選項(xiàng)設(shè)設(shè)置選擇Project|Setting命令令中的Debug標(biāo)簽對(duì)對(duì)軟件調(diào)試進(jìn)進(jìn)行相關(guān)設(shè)置。調(diào)試設(shè)設(shè)置有3個(gè)類類別選擇頁(yè),,分別為調(diào)試試常規(guī)(General)信息息配置頁(yè)、下下載(Download)信息配置置頁(yè)和內(nèi)存映像(MemoryMap)配配置頁(yè)。符號(hào)文件欄((Symbolfile)用于輸輸入待調(diào)試的的符號(hào)文件名名稱及其目錄錄。符號(hào)文件件含有調(diào)試信信息內(nèi)容,常常見(jiàn)的有Elf格式、Coff格式式,提供調(diào)試試所需要的調(diào)調(diào)試信息。本本文件空缺時(shí)時(shí),用戶只能能進(jìn)行匯編級(jí)級(jí)調(diào)試。下載載文文件件欄欄((Downloadfile))用用于于輸輸入入下下載載到到目目標(biāo)標(biāo)系系統(tǒng)統(tǒng)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論