H-JTAG調(diào)試手冊_第1頁
H-JTAG調(diào)試手冊_第2頁
H-JTAG調(diào)試手冊_第3頁
H-JTAG調(diào)試手冊_第4頁
H-JTAG調(diào)試手冊_第5頁
已閱讀5頁,還剩79頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、H-JTAG 用戶使用手冊WWW.HJTAG.COMH-JTAG用戶使用手冊Copyright 2009 WWW.HJTAG.COM All Rights Reserved修改記錄日期 版本 改動2007-10-01 A 發(fā)布第一版本2007-11-30 B 修改版本2008-03-03 C 更正了 TAP 的設(shè)置說明2009-01-08 D 軟件更新版權(quán)聲明1. 文檔中出現(xiàn)的 JTAG 表述,為 IEEE-1149標(biāo)準(zhǔn),其所有權(quán)屬于國際電子電氣協(xié)會;2. 文檔中出現(xiàn)的所有 ARM 標(biāo)識和表述,均為 ARM 公司的注冊商標(biāo),其所有權(quán)屬于 ARM 公司;3. 文檔中提及的任何第三方的注冊商標(biāo)和產(chǎn)

2、品標(biāo)識,均屬于第三方公司所有;4. 如果文檔當(dāng)中有任何地方侵犯了您的權(quán)利和版權(quán),請和我們聯(lián)系,我們將及時修改;5. 本文檔為開放文檔,用戶可以在保證文檔完整性的前提下,自由分發(fā);官方主頁HTTP:/WWW.HJTAG.COM技術(shù)支持論壇HTTP:/FORUM.HJTAG.COM目 錄前言A. 關(guān)于本手冊 .IVB. 適合的讀者 .IVC. 意見反饋 .IV第一章 H-JTAG 介紹1.1 H-JTAG 介紹 .1-1 1.2 H-JTAG 調(diào)試 /燒寫結(jié)構(gòu) .1-1第二章 H-JTAG 的安裝和 GUI2.1H-JTAG 的安裝 .2-1 2.2 H-JTAG 的卸載 .2-3 2.3 H-J

3、TAG 的 GUI.2-3 2.4 H-FLASHER 的 GUI.2-7 第三章 H-JTAG USB 仿真器3.1 USB 仿真器硬件接口 .3-1 3.2 安裝 USB 仿真器驅(qū)動程序 .3-2 第四章 H-JTAG 的使用和配置詳解4.1 檢測調(diào)試目標(biāo) .4-1 4.2 復(fù)位調(diào)試目標(biāo) .4-1 4.3 FLASH 自動下載 4-1 4.4 設(shè)置初始化腳本 .4-2 4.5USB/LPT接口選擇 .4-3 4.6 設(shè)置 JTAG.4-3 4.7 設(shè)置并口 .4-6 4.8 設(shè)置調(diào)試目標(biāo) .4-6 4.9 添加芯片 ID.4-6 4.10 TAP設(shè)置 .4-7 4.11H-JTAG 常用選

4、項(xiàng) .4-8 4.12 檢查軟件更新 .4-9 第五章 H-FLASHER 的使用和配置詳解5.1H-FLASHER 工作流程 .5-1 5.2H-FLASHER 編程向?qū)?.5-2 5.3 常見提示 .5-5 5.4 燒寫實(shí)例 1-AT91SAM7X256.5-6 5.5 燒寫實(shí)例 2-LPC2210 + SST39VF1601.5-10第六章 初始化腳本6.1 初始化腳本的定義 .6-1 6.2 初始化腳本的編輯 .6-3第七章 調(diào)試軟件的配置7.1 AXD的配置 .7-1 7.2 RVDS的配置 .7-4 7.3 IAR的配置 .7-8 7.4 KEIL的配置 .7-12前 言A. 關(guān)于

5、本手冊H-JTAG 用戶使用手冊簡單介紹了 H-JTAG 和 H-FLASHER 的基本使用和配置,手冊同時也提供了一 些簡單的例子供用戶參考。如果用戶需要更多的相關(guān)信息,請訪問 H-JTAG 主頁 WWW.HJTAG .COM 或技 術(shù)支持論壇 HTTP:/FORUM.HJTAG.COM 。B. 適合的讀者如果你是一個初級用戶,打算使用 H-JTAG 進(jìn)行調(diào)試和開發(fā),本手冊可作為一個快速入門指南。如果 你是高級用戶,本手冊可以作為參考,用戶可以選擇性的閱讀某些章節(jié)。C. 意見反饋如 果 你 發(fā) 現(xiàn) 本 手 冊 中 有 不 正 確 的 地 方 , 或 者 有 什 么 好 的 建 議 , 請 發(fā)

6、 送 電 子 郵 件 至 twentyone。第一章 H-JTAG介紹1.1H-JTAG 介紹H-JTAG 是一款簡單易用的的調(diào)試代理軟件,功能和流行的 MULTI-ICE 類似。 H-JTAG 包括三個工具 軟件:H-JTAG SERVER, H-FLASHER 和 H-CONVERTER 。 其中, H-JTAG SERVER實(shí)現(xiàn)調(diào)試代理的功能, H-FLASHER 實(shí)現(xiàn)了 FLASH 燒寫的功能, H-CONVERTER 是一個簡單的文件格式轉(zhuǎn)換工具,支持常見文 件格式的轉(zhuǎn)換。 H-JTAG 的基本結(jié)構(gòu)如下圖所示。 圖 1-1 H-JTAG軟件結(jié)構(gòu)H-JTAG 支持所有基于 ARM7,

7、ARM9, XSCALE 和 CORTEX-M3芯片的調(diào)試,并且支持大多數(shù)主流 的 ARM 調(diào)試軟件,如 ADS 、 RVDS 、 IAR 和 KEIL 。通過靈活的接口配置, H-JTAG 可以支持 WIGGLER , SDT-JTAG ,用戶自定義的各種 JTAG 調(diào)試小板和 H-JTAG USB仿真器。同時,附帶的 H-FLASHER 燒寫 軟件還支持常用片內(nèi)片外 FLASH 的燒寫。使用 H-JTAG ,用戶能夠方便的搭建一個簡單易用的 ARM 調(diào)試 開發(fā)平臺。 H-JTAG 的功能和特定總結(jié)如下:1. 支持 RDI 1.5.0 以及 1.5.1;2. 支持 所有 ARM7, ARM9

8、, XSCALE 及 CORTEX-M3芯片;3. 支持 THUMB 以及 ARM 指令;4. 支持 LITTLE-ENDIAN 以及 BIG-ENDIAN;5. 支持 SEMIHOSTING;6. 支持 WIGGLER, SDT-JTAG ,自定義 JTAG 調(diào)試板和 H-JTAG USB仿真器;7. 支持 WINDOWS 9.X/NT/2000/XP;8.支持常用 FLASH 芯片的編程燒寫;9. 支持 LPC2000, AT91SAM , LUMINARY 和 STM32F 系列的片內(nèi) FLASH 自動下載;1.2H-JTAG 調(diào)試 /燒寫結(jié)構(gòu)H-JTAG 支持 ARM 公司的 RDI

9、接口。 通過 RDI 接口, H-JTAG 能夠支持大多數(shù)主流的 ARM 調(diào)試軟件。 調(diào)試的結(jié)構(gòu)如圖 1-2所示。 圖 1-2 H-JTAG調(diào)試結(jié)構(gòu)調(diào)試軟件(AXD/RVDS/IAR/KEIL通過 RDI 接口與 H-JTAG SERVER進(jìn)行交互。 H-JTAG SERVER通過并口 /USB連接 JTAG 仿真器。 H-JTAG 提供了靈活的 JTAG 接口設(shè)置, 同時支持并口及 USB 接口仿真 器。通過設(shè)置, H-JTAG 可以支持不同類型的 JTAG 調(diào)試板,例如流行的 WIGGLER , SDT-JTAG ,用戶也 可以根據(jù)自己的需要使用自定義的 JTAG 調(diào)試板。 除了調(diào)試,用戶

10、還可以通過 H-FLASHER 將程序和數(shù)據(jù)燒寫 /下載到 FLASH 芯片中去。目前, H-FLASHER 支持的常見的片內(nèi)和片外 FLASH 芯片。 隨著軟件的更新和升級, H-FLASHER 支持的芯片類 型也會不斷的增加。在執(zhí)行 FLASH 燒寫時, H-FLASHER 與 H-JTAG SERVER的連接如下圖所示: 圖 1-3 H-FLASHER與 H-JTAG SERVER的連接 燒寫 FLASH 時, H-FLASHER 與 H-JTAG 的連接交互和調(diào)試的時候十分類似。 H-FLASHER 通過 RDI 接口與 H-JTAG SERVER進(jìn)行交互,以訪問和控制目標(biāo)開發(fā)板。根據(jù)

11、用戶提供的配置文件, H-FLASHER 最終完成 FLASH 燒寫工作。第二章 H-JTAG的安裝和 GUI 介紹本章將簡單介紹 H-JTAG 的安裝和卸載, 以及 H-JTAG 與 H-FLASHER 的 GUI (圖形用戶接口 。 具體 的使用和設(shè)置,請參考 4-7章節(jié)。2.1 H-JTAG的安裝用戶可以從 H-JTAG 的主頁 WWW.HJTAG .COM 下載最新版本的 H-JTAG 安裝程序。一般情況下,用 戶下載的是一個壓縮文件(RAR/ZIP 。解壓后,可以得到 H-JTAG 的安裝文件:H-JTAG .EXE 。雙擊該文 件,就可以開始進(jìn)行安裝。首先,用戶會看到一個歡迎頁面,

12、如圖 2-1所示。點(diǎn)擊 NEXT ,就可以進(jìn)入到安裝的下一步。 圖 2-1 H-JTAG安裝步驟 1在第二步,用戶會看到 H-JTAG 的使用協(xié)議,如圖 2-2所示。請仔細(xì)閱讀該協(xié)議。在同意后,請選擇 “ I agree with the above terms and conditions” ,表示接受。然后點(diǎn)擊 NEXT ,就可以進(jìn)入到安裝的下一步。 圖 2-2 H-JTAG安裝步驟 2在第三步,用戶會看到如圖 2-3所示的頁面。在該頁面,用戶可以選擇 H-JTAG 的安裝目錄,或者使 用默認(rèn)的安裝目錄。選擇好目錄后,點(diǎn)擊 NEXT 進(jìn)入安裝的下一步。 圖 2-3 H-JTAG安裝步驟 3

13、在第四步當(dāng)中,用戶將會看到如圖 2-4所示的安裝進(jìn)度。該圖表示安裝正在進(jìn)行, H-JTAG 將自動安 裝必要的文件和驅(qū)動程序。 圖 2-4 H-JTAG安裝步驟 4安裝完成后,用戶將會看到如圖 2-5所示的提示,表示安裝完成。按照提示,點(diǎn)擊 FINISH 就可以完 成最后的安裝。 圖 2-5 H-JTAG安裝步驟 5安裝完成后, H-JTAG 會在開始菜單和桌面上創(chuàng)建相應(yīng)的快捷方式,如圖 2-6所示。 圖 2-6 H-JTAG快捷方式2.2 H-JTAG的卸載如果用戶要卸載 H-JTAG ,請運(yùn)行 H-JTAG 菜單下的 UNSTALL 程序。該程序?qū)⒆詣有遁d H-JTAG ,并 刪除所有的相

14、關(guān)文件。卸載過程當(dāng)中,只需要按照提示操作即可。2.3 H-JTAG的 GUIH-JTAG 運(yùn)行時, 用戶主界面如圖 2-7所示。 其中, (1 為 H-JTAG 菜單; (2 為 H-JTAG 工具欄; (3 為 H-JTAG 檢測到的目標(biāo) CPU 的類型; (4 為目標(biāo) CPU 的芯片 ID ; (5 依次顯示了當(dāng)前的調(diào)試軟件, RDI 接口版本和硬件接口。 圖 2-7 H-JTAG主界面H-JTAG 的菜單包括了 H-JTAG 的所有操作和設(shè)置,而工具欄則包括了大部分常用的操作和設(shè)置。當(dāng) H-JTAG 檢測到連接的目標(biāo)開發(fā)板后,在主界面的中央部分會顯示芯片的類型和其 32位芯片 ID 。如

15、果檢 測失敗, 或者芯片無法識別, H-JTAG 將會顯示 UNKNOWN , 提示用戶 H-JTAG 無法檢測 /識別目標(biāo)開放板。2.3.1 H-JTAG菜單介紹FILE 菜單,如圖 2-8所示: 圖 2-8 H-JTAG FILE菜單 EXIT 退出 H-JTAG 。OPERATIONS 菜單,如圖 2-9所示: 圖 2-9 H-JTAG OPERATIONS菜單 RESET TARGET 復(fù)位調(diào)試目標(biāo) DETECT TARGET 檢測調(diào)試目標(biāo)KILL CONNECTION 斷開當(dāng)前連接FLASHER 菜單,如圖 2-10所示: 圖 2-10 H-JTAG FLASHER菜單 START

16、FLASHER 啟動 H-FLASHERAUTO DOWNLOAD 啟用 /禁用自動 FLASH 下載SCRIPT 菜單,如圖 2-11所示: 圖 2-11 H-JTAG SCRIPT菜單INIT SCRIPT 設(shè)置初始化腳本AUTOINIT 啟用 /禁用自動初始化SETTINGS 菜單,如圖 2-12所示: 圖 2-12 H-JTAG SETTINGS菜單 USB/LPTSELECTION 并口 /USB接口選擇 USB JTAG SETTING USB JTAG設(shè)置LPT JTAG SETTING LPT JTAG 設(shè)置LPT PORT SETTING 并口設(shè)置TARGETSETTING

17、調(diào)試目標(biāo)設(shè)置TARGETMANAGER 芯片 ID 管理器TAP CONFIGURATION TAP設(shè)置OPTIONS 菜單,如圖 2-13所示: 圖 2-13 H-JTAG OPTIONS菜單 OPTIONSWINDOW 打開選項(xiàng)設(shè)置主窗口 VECTOR CATCH CONFIG 中斷捕獲設(shè)置 DISABLE SEMIHOSTING 禁用 SEMIHOSTING 功能 DISABLE VECTOR CATCH 禁用中斷向量捕獲功能 AUTO SYSTEM RESET 啟用 /禁用自動系統(tǒng)復(fù)位 AUTO SOFTWARE RESET 啟用 /禁用自動軟件復(fù)位 REPORT DATA ABORT

18、 啟用 /禁用數(shù)據(jù)異常報告 HELP 菜單,如圖 2-14所示: 圖 2-14 H-JTAG HELP菜單H-JTAG HOME 訪問 H-JTAG 主頁 CHECK UPDATE 檢查更新 ABOUT H-JTAG 關(guān)于 H-JTAG2.3.2 H-JTAG 工具欄介紹H-JTAG工具欄包括了菜單中使用頻率比較高的大部分操作, 方便用戶使用。 H-JTAG 的工具欄如下圖 所示。 圖 2-15 H-JTAG工具欄工具欄上每個按鈕的功能定義如下:復(fù)位調(diào)試目標(biāo) 檢測調(diào)試目標(biāo) 斷開當(dāng)前連接 啟動 H-FLASHER 設(shè)置初始化腳本 LPT/USB接口選擇 調(diào)試目標(biāo)設(shè)置 芯片 ID 管理器 打開選項(xiàng)

19、設(shè)置窗口 退出 H-JTAG 2.3.3 H-JTAG系統(tǒng)托盤菜單當(dāng) H-JTAG 最小化的時候,主窗口會自動隱藏來,只在系統(tǒng)托盤上顯示 H-JTAG 的圖標(biāo)。左鍵單擊該 圖標(biāo),可以恢復(fù) H-JTAG 的主窗口。右鍵單擊該圖標(biāo),可以顯示系統(tǒng)托盤菜單,其中包括了常用的一些操 作和設(shè)置按鈕。系統(tǒng)托盤菜單如圖 2-16所示: 圖 2-16 H-JTAG系統(tǒng)托盤菜單H-JTAG系統(tǒng)托盤菜單的功能定義如下:RESTORE 恢復(fù)主窗口 H-JTAG HOME 訪問主頁ABOUT H-JTAG 關(guān)于 H-JTAGOPTIONS 選項(xiàng)菜單SCRIPT腳本菜單FLASHER H-FLASHER 菜單KILL C

20、ONNECTION 斷開當(dāng)前連接DETECT TARGET 檢測調(diào)試目標(biāo)RESET TARGET 復(fù)位調(diào)試目標(biāo)EXIT 退出 H-JTAG2.4 H-FLASHER的 GUIH-FLASHER 運(yùn)行時,其主窗口如圖 2-17所示。其中(1為菜單; (2為 FLASH 編程向?qū)^(qū)域; (3 為 FLASH 燒寫 /配置區(qū)域。在 FLASH 編程向?qū)М?dāng)中,可以選擇不同的步驟。根據(jù)當(dāng)前向?qū)е械倪x擇,配 置區(qū)域會顯示不同的設(shè)置。具體請參考第五章。 圖 2-17 H-FLASHER主界面2.4.1 H-FLASHER的菜單介紹H-FLASHER的主菜單如圖 2-18所示: 圖 2-18 H-FLASHE

21、R主菜單H-FLASHER 菜單的具體定義如下:NEW 創(chuàng)建新的配置文件LOAD 裝載配置文件SA VE 保存當(dāng)前配置文件SA VEAS 將當(dāng)前的配置文件另存為OPTIONS 設(shè)置選項(xiàng)EXIT 退出 H-FLASHERABOUT 關(guān)于 H-FLASHER2.4.2 H-FLASHER的系統(tǒng)托盤菜單當(dāng) H-FLASHER 最小化的時候,主窗口會自動隱藏來,只在系統(tǒng)托盤上顯示 H-FLASHER 的圖標(biāo)。左 鍵單擊該圖標(biāo),可以恢復(fù) H-FLASHER 的主窗口。右鍵單擊該圖標(biāo),可以顯示系統(tǒng)托盤菜單,如圖 2-19所示: 圖 2-19 H-FLASHER系統(tǒng)托盤菜單H-FLASHER系統(tǒng)托盤菜單的具

22、體定義如下:RESTORE 恢復(fù)主窗口ABOUT 關(guān)于 H-FLASHEREXIT 退出 H-FLASHER2.4.3 H-FLASHER的編程向?qū)н@個章節(jié)將簡單介紹 H-FLASHER 的編程向?qū)?具體的設(shè)置請參考后面的章節(jié)。編程向?qū)Э偣舶ㄎ?個步驟與一個幫助部分。下面我們一起看看每個步驟的設(shè)置。(1 Flash SelectionFlashSelection 是編程向?qū)е械牡谝徊? 如下圖所示。 在這一步, 用戶需要確定燒寫的目標(biāo)芯片是什么。 H-FLASHER 支持的的所有 FLASH 芯片都按照生產(chǎn)廠商分類列表。當(dāng)用戶選定一塊片子的時候,右邊會 顯示該芯片的基本信息,例如芯片類型,容

23、量和 ID 等。 圖 2-20 H-FLASHER編程向?qū)?Flash Selection(2 ConfigurationConfiguration是編程向?qū)е械牡诙? 如下圖所示。 在這一步, 用戶需要設(shè)置基本的信息, 例如 FLASH 芯片的位寬, FLASH 的起始地址, RAM/SDRAM的起始地址, 外部晶振的頻率, 初始化 TCK 和編程 TCK 等。這些都是必須的信息, H-FLASHER 會根據(jù)這些信息來完成 FLASH 燒寫。如果這個步驟中的設(shè)置框 為灰色,說明對于當(dāng)前選擇的 FLASH 芯片來說,這些信息都是固定的,不需要用戶提供。對大部分的片 內(nèi) FLASH 而言,這些

24、信息都是固定的,基本不需要用戶提供。 圖 2-21 H-FLASHER編程向?qū)?Configuration(3 Init ScriptInitScript 是編程向?qū)е械牡谌?如下圖所示。在這個步驟當(dāng)中,用戶可以輸入必要的初始化腳本, 用以配置目標(biāo)系統(tǒng)。在燒寫的時候, H-FLASHER 首先會執(zhí)行用戶提供的初始化腳本,以初始化目標(biāo)系統(tǒng)。 然后在根據(jù)用戶提供的存儲信息,對目標(biāo) FLASH 進(jìn)行操作。對于片內(nèi) FLASH 而言, H-FLASHER 的驅(qū)動 當(dāng)中已經(jīng)包括了初始化,所以用戶不需要提供初始化腳本。此時,腳本編輯功能會自動被禁用掉。 圖 2-22 H-FLASHER編程向?qū)?Init

25、 Script(4 Program OptionsProgram Options編程向?qū)е械牡谒牟?如下圖所示。在這個步驟中,用戶可以根據(jù)選擇的 FLASH 芯 片和自己的需要選擇不通的選項(xiàng)。常用的選項(xiàng)包括復(fù)位,二次驗(yàn)證和加密等。 圖 2-23 H-FLASHER編程向?qū)?Program Options(5 ProgrammingProgramming 是編程向?qū)е械牡谖宀?如下圖所示。在這個步驟當(dāng)中,用戶可以對選定的目標(biāo) FLASH 芯片進(jìn)行基本的操作:檢測、燒寫、驗(yàn)證、擦除和檢查芯片是否為空等。 圖 2-24 H-FLASHER編程向?qū)?Programming(6 H-Flasher He

26、lp在 H-FALSHER 的向?qū)?還提供了一些基本的幫助信息,如果下圖所示。這些基本的信息可以幫助用 戶了解每個步驟的設(shè)置。 圖 2-25 H-FLASHER編程向?qū)?Help第三章 H-JTAG USB 仿真器本章將簡單介紹 H-JTAG USB仿真器的硬件接口和驅(qū)動程序的安裝 .3.1 USB仿真器硬件接口H-JTAGUSB 仿真器是一款采用高速 USB2.0接口的高性能 ARM 仿真器 . 仿真器采用 USB 接口供電 , 最高 TCK 時鐘可以達(dá)到 15M Hz.H-JTAG USB仿真器的外觀如圖 3-1所示 . 左側(cè)為 USB 接口 , 右側(cè)為標(biāo)準(zhǔn)的 20針 JTAG 接口 .

27、圖 3-1 H-JTAG USB仿真器外觀仿真器上有三個 LED 指示燈 : USB, TGT和 ACT. 這三個指示燈的作用如下 :A. USB 標(biāo)識 USB 電源 , 用來識別 USB 是否連接 ;B. TGT 標(biāo)識目標(biāo)板的參考電壓 , 可以用來識別目標(biāo)板連接是否正確 ;C. ACT 動作指示燈 , 如果閃動表示正在對目標(biāo)系統(tǒng)進(jìn)行 JTAG 操作 ;H-JTAG USB仿真器的采用標(biāo)準(zhǔn)的 20針 JTAG 接口 , 接口信號的定義如下 : 圖 3-2 H-JTG USB仿真器 JITAG 接口信號定義注意 : H-JTAG USB仿真器只支持高速 USB 2.0接口 .3.2 安裝 USB

28、 仿真器驅(qū)動程序在安裝好 H-JTAG 程序后 , 在 H-JTAG 的安裝目錄下會有一個 Driver 目錄 , 這個目錄包含了 H-JTAG USB 仿真器的驅(qū)動程序 . 下面介紹如何安裝 H-JTAG USB仿真器的驅(qū)動程序 .首先 , 將 H-JTAG USB仿真器通過 USB 線連到計算機(jī)的 USB 接口上 . 計算機(jī)隨后會提示發(fā)現(xiàn)新硬件 , 并彈 出如下圖所示的硬件安裝向?qū)? 圖 3-3 新硬件安裝向?qū)г谙驅(qū)е?, 選擇 Install from a list or specific location, 如下圖所示 , 然后點(diǎn)擊Next. 圖 3-4 選擇從列表安裝接下來 , 用戶

29、會看到如下圖所示的搜索路徑和選項(xiàng)對話框 . 在這個對話框中 , 選擇 Search for the best driver in these locations. 取消 Search removable media, 選擇 Include this location in search. 同時點(diǎn)擊 Browse 按鈕 , 指向 H-JTAG 安裝目錄下的 Driver 文件夾 . 然后點(diǎn)擊Next. 圖 3-5 搜索和選項(xiàng)對話框在經(jīng)過短暫的搜索后 , 會彈出如下圖所示的對話框 , 提示是否為新硬件安裝 H-JTAG 驅(qū)動 . 在下面的對話框 中 , 點(diǎn)擊 Continue Anyway, 繼續(xù)

30、安裝. 圖 3-6 確認(rèn)安裝對話框接下來 , 用戶會看到如下圖所示的對話框 , 提示用戶 H-JTAG 驅(qū)動程序已經(jīng)安裝完成 . 點(diǎn)擊 Finish, 完成安 裝. 圖 3-7 完成安裝在完成上面的安裝后 , 用戶可以打開硬件管理器 . (我的電腦 - 右鍵 - 屬性 - 硬件 - 設(shè)備管理 . 如 果硬件安裝沒有問題 , 在設(shè)備管理里 , 應(yīng)該能看到 H-JTAG , 如下圖所示 : 圖 3-8 查看設(shè)備管理如果在設(shè)備列表里看不到 H-JTAG , 請重新安裝 H-JTAG 的驅(qū)動程序 .第四章 H-JTAG的使用和配置詳解這個章節(jié)將詳細(xì)介紹 H-JTAG 的使用和配置。在介紹的過程當(dāng)中,還

31、結(jié)合實(shí)際提供了簡單的例子,以 幫助用戶更好的理解。4.1 檢測調(diào)試目標(biāo)在檢測前,請將 H-JTAG USB仿真器連接到計算機(jī) USB 接口或?qū)?JTAG 調(diào)試小板連接到計算機(jī)并口, 并和調(diào)試目標(biāo)連上。在打開 H-JTAG 的時候, H-JTAG 會自動執(zhí)行檢測操作。用戶也可以通過 H-JTAG 的 菜單 /工具欄進(jìn)行檢測。如果檢測成功, H-JTAG 主界面將會顯示檢測到的芯片類型和 ID 。如果檢測失敗, 請檢查 H-JTAG 設(shè)置和硬件連接。4.2 復(fù)位調(diào)試目標(biāo)用戶可用通過 H-JTAG 對調(diào)試目標(biāo)進(jìn)行復(fù)位。標(biāo)準(zhǔn)的 JTAG 接口,定義了兩個獨(dú)立的復(fù)位信號:系統(tǒng) 復(fù)位(nSRST 和 JT

32、AG 復(fù)位(nTRST 。通過這兩個復(fù)位信號,可以分別執(zhí)行系統(tǒng)復(fù)位和 JTAG 復(fù)位。用 戶可以選擇執(zhí)行系統(tǒng)復(fù)位、 JTAG 復(fù)位,或是同時執(zhí)行。 H-JTAG 提供了相應(yīng)的選項(xiàng)供用戶選擇,具體請參 考 H-JTAG 常用選項(xiàng)。提示:因?yàn)橛行┎⒖?JTAG 調(diào)試板本身沒有提供系統(tǒng)復(fù)位信號,所以不能通過 H-JTAG 執(zhí)行系統(tǒng)復(fù)位,只能 通過手動進(jìn)行復(fù)位。有些并口 JTAG 調(diào)試板將系統(tǒng)復(fù)位和 JTAG 復(fù)位連接在一起,所以復(fù)位的時候相 當(dāng)于同時執(zhí)行了系統(tǒng)復(fù)位和 JTAG 復(fù)位。4.3 FLASH自動下載有些 ARM 芯片,片內(nèi)集成了 FLASH 和 RAM ,方便用戶開發(fā),省去了擴(kuò)展外部存儲的

33、必要。針對這 類芯片, 例如 LPC2000系列, AT91SAM7系列, LUMINARY CORTEX-M3系列和 STM32F 系列, H-JTAG 提供了 FLASH 自動下載功能。 利用這個功能, 調(diào)試的時候可以將程序直接燒寫到 FLASH 中進(jìn)行調(diào)試, 就 象直接裝載到 RAM/SDRAM里調(diào)試一樣。要使用自動 FLASH 下載功能,請用戶在 H-JTAG 里將 AUTO DOWNLOAD 選項(xiàng)打開(圖 4-1 ,并在 H-FLASHER 里選擇正確的目標(biāo)芯片。設(shè)置好后, H-JTAG 會自動 根據(jù)程序下載時的地址信息,區(qū)分那些部分需要下載到 RAM/SDRAM中去,那些部分需要下

34、載 /燒寫到 FLASH 中去。需要燒寫到 FLASH 中去的程序部分, H-JTAG 會自動調(diào)用 H-FLASHER 完成燒寫。 圖 4-1 FLASH自動下載設(shè)置提示:FLASH 自動下載一般只支持片內(nèi) FLASH , 例如 LPC2000和 AT91SAM7, 因?yàn)檫@類芯片的存儲系統(tǒng)相 對來說比較簡單和固定。對于支持較復(fù)雜存儲配置的芯片,例如 MMU/REMAP等,建議用戶先用 H-FLASHER 將程序燒寫到 FLASH 中里去,然后在進(jìn)行調(diào)試。4.4 設(shè)置初始化腳本對于一般的系統(tǒng)來說,上電后都需要執(zhí)行一些必要的初始化操作和配置,然后才能使用某些功能。一 個最常見的初始化操作就是存儲系

35、統(tǒng)的配置。大部分情況下, FLASH 和片內(nèi) SRAM 在上電后都是可以直 接訪問,但片外 SDRAM 需要預(yù)先配置,才能正確訪問。很多新手往往會碰到程序下載不正確的問題,最 常見的是:為什么程序下載后看到的是亂碼?為什么程序會跑飛?為什么跑不到 MAIN 函數(shù)?很多時候, 都是因?yàn)闆]有對存儲系統(tǒng)進(jìn)行必要的初始化造成的。執(zhí)行系統(tǒng)初始化有兩種常用的方法。第一種方法是在 FLASH 芯片里燒一段初始化程序,上電后自動執(zhí)行。這樣,系統(tǒng)每次上電后目標(biāo)系統(tǒng)就自動配置好了, 可以直接進(jìn)行調(diào)試。第二種方法就是通過初始化腳本來實(shí)現(xiàn)。用戶根據(jù)數(shù)據(jù)手冊編輯好初始化腳本,然后 通過執(zhí)行腳本以對系統(tǒng)進(jìn)行初始化。有些調(diào)

36、試器(DEBUGGER 提供了命令行窗口,用戶可以通過命令 行執(zhí)行腳本命令。為了方便用戶, H-JTAG 也提供了自動初始化的功能。要使用自動初始化功能,用戶首 先需要在 H-JTAG 里輸入 /裝載初始化腳本,同時把 AUTO INIT選項(xiàng)給打開(圖 4-3 。這樣,每次調(diào)試器 (DEBUGGER 連接 H-JTAG 的時候, H-JTAG 都會自動執(zhí)行用戶指定的初始化腳本, 對系統(tǒng)進(jìn)行初始化。 初始化腳本設(shè)置窗口如下圖所示: 圖 4-2 初始化腳本設(shè)置 圖 4-3 自動初始化功能提示:如果用戶打開了 H-JTAG 的 AUTO INIT選項(xiàng), 就必須指定初始化腳本, 這樣 H-JTAG 才

37、知道如何執(zhí)行 初始化。 如果打開了該選項(xiàng), 但沒有指定初始化腳本, H-JTAG 會提示:“ Cant open specified init script” 。提示:H-JTAG 腳本的具體定義,以及腳本的編輯,請參考第六章。4.5 USB/LPT接口選擇H-JTAG支持并口調(diào)試板和 USB 接口 H-JTAG 仿真器。 用戶需要根據(jù)自己使用的硬件, 選擇 LPT 接口 或是 USB 接口,如果圖 4-4所示。 圖 4-4 USB/LPT接口選擇4.6 設(shè)置 JTAG這個小節(jié)簡單介紹了 JTAG 的接口定義,以及 JTAG 的配置。最后還提供了一個 JTAG 設(shè)置的例子, 供用戶參考。4.6

38、.1 JTAG信號JTAG是由 IEEE 制定的一個測試標(biāo)準(zhǔn),其標(biāo)準(zhǔn)號為 IEEE-1149,如果用戶想詳細(xì)了解該標(biāo)準(zhǔn),請參考 IEEE 的 JTAG 標(biāo)準(zhǔn)。 ARM JTAG調(diào)試接口總共定義了 7個基本的信號:TMS 、 TCK 、 TDI、 TDO、 RTCK、 nSRST 、 nTRST。對于 ARM7/9的調(diào)試, TMS 、 TCK、 TDI和 TDO 為必選信號,而 RTCK 、 nSRST、 nTRST 為可選信號。注意:XSCALE 的調(diào)試要求 JTAG 調(diào)試板提供 nSRST 和 nTRST 信號,并且必須是獨(dú)立的。否則,無法進(jìn)行 調(diào)試。4.6.2 JTAG連接H-JTAG 通

39、過與并口 /USB連接的 JTAG 控制器來產(chǎn)生 JTAG 信號,并通過調(diào)試目標(biāo)板的 JTAG 接口來 控制 ARM 處理器。典型的連接如圖 4-5所示。其中 JTAG 接口是定義在 ARM 目標(biāo)開發(fā)板上的,一般都采 用標(biāo)準(zhǔn)的 20-PIN 或 14-PIN 的 JTAG 接口,不需要用戶設(shè)置。用戶可以使用 USB 接口的 H-JTAG 仿真器, 或是基于并口的 JTAG 調(diào)試板。如果使用并口調(diào)試板,用戶需要提供并口與 JTAG 調(diào)試板的具體連接。具 體設(shè)置請參考后面的小節(jié)。 圖 4-5 JTAG連接 4.6.3 USB JTAG設(shè)置H-JTAG USB 仿真器支持不同的 TCK 速率(25K

40、 15M Hz ,用戶可以在 USB JTAG設(shè)置對話框里選 擇合適的 TCK 速率。除了指定特定的 TCK 速率,用戶也可以選擇 AUTO TCK。當(dāng)選擇 AUTO TCK的時 候, H-JTAG 會通過測試選擇適合目標(biāo)系統(tǒng)的 TCK 速率。 圖 4-6 USB TCK設(shè)置提示:TCK 速率的選擇會直接影響調(diào)試速度。不同的目標(biāo)系統(tǒng)支持的最高 TCK 速率不一樣 . 。另外, TCK 頻 率和目標(biāo)系統(tǒng)的時鐘設(shè)置也有很大的關(guān)系。用戶需要根據(jù)目標(biāo)系統(tǒng)選擇合適的 TCK 速率,否則調(diào)試 會出錯。選擇 AUTO TCK的時候, H-JTAG 有可能會設(shè)置過高的 TCK 速率,如果遇到此類情況,請 手動

41、選擇低一些的 TCK 速率。4.6.4 LPT JTAG設(shè)置簡單的并口 JTAG 調(diào)試板并沒有固定的電路圖,就算是常用的 WIGGLER 和 SDT-JTAG ,也沒有固定 的電路圖。例如,有些 WIGGLER 支持系統(tǒng)復(fù)位信號(nSRST ,而有些卻沒有。有些板子的系統(tǒng)復(fù)位信 號和 JTAG 復(fù)位信號是獨(dú)立的, 有些卻是連接在一起的。 針對這樣的情況, H-JTAG 提供了靈活的并口 JTAG 設(shè)置, 以支持不同的并口 JTAG 調(diào)試板。 用戶需要根據(jù)自己使用的 JTAG 調(diào)試板進(jìn)行設(shè)置, 明確告訴 H-JTAG 并口與 JTAG 調(diào)試板是如何連接的。并口提供了 8位數(shù)據(jù)位 D0-D7, 其

42、方向?yàn)檩敵觥?我們可以利用這些數(shù)據(jù)位來輸出 JTAG 控制信號:TMS 、 TCK 、 TDI、 nSRST、 nTRST。并口還提供了幾個狀態(tài)位,其方向?yàn)檩斎搿N覀兛梢岳闷渲械囊晃粊?讀取 TDO 的狀態(tài)。所以, JTAG 的設(shè)置就是要告訴 H-JTAG ,并口與 JTAG 調(diào)試板是如何連接的,并口數(shù) 據(jù)位 /狀態(tài)位與 JTAG 信號是如何一一對應(yīng)的。在提供了 nSRST/nTRST信號的 JTAG 調(diào)試板上,復(fù)位信號 有可能是經(jīng)過反向三極管來產(chǎn)生反向電平的。 所以, 用戶也需要在配置的時候告訴 H-JTAG 復(fù)位信號是否 是反向的。這樣 H-JTAG 才能正確的執(zhí)行復(fù)位操作。下面我們來看

43、一個例子。假設(shè)并口 JTAG 調(diào)試板的電路圖如圖 4-7所示。從圖中我們可以發(fā)現(xiàn)并口和 JTAG 接口的連接如下,其中 nTRST 信號經(jīng)過了一個反向三極管,而 nSRST 信號根本沒有提供。TMS 并口 D1 (PIN3 TCK 并口 D2 (PIN4 TDI 并口 D3 (PIN5 TDO 并口 BUSY (PIN11 nTRST 并口 D0 (PIN2 反向 nSRSTX沒有提供 圖 4-7 并口 JTAG 調(diào)試板電路圖根據(jù)圖 4-7所示的 JTAG 調(diào)試板的電路圖和上面的分析, JTAG 設(shè)置可以采用下面的任何一種設(shè)置。 下 面的設(shè)置明確的告訴了 H-JTAG 并口和 JTAG 調(diào)試板

44、是如何連接的。 圖 4-8 并口 JTAG 設(shè)置實(shí)例上面我們給出了一個并口 JTAG 配置的實(shí)例,供用戶參考。在實(shí)際應(yīng)用當(dāng)中,用戶需要根據(jù)自己使用 的并口 JTAG 調(diào)試板的電路圖,進(jìn)行相應(yīng)的設(shè)置。在并口 JTAG 設(shè)置中, 用戶也可以根據(jù)需要選擇不同的 TCK 速度, 設(shè)置窗口如下圖所示。 因?yàn)椴⒖诘?速度本身比較慢,大部分情況下,用戶不需要降低 TCK 的速度,所以建議用戶選擇默認(rèn)設(shè)置 MAX/1。 圖 4-9 設(shè)置并口 TCK 速度4.7 設(shè)置并口對于大部分計算機(jī),并口的默認(rèn)地址都是 0x378,但也有些計算機(jī)的并口地址不是 0x378。 H-JTAG 提 供了并口設(shè)置窗口,用戶可以根據(jù)

45、自己的情況設(shè)定并口地址。并口設(shè)置窗口如下圖所示。在并口設(shè)置窗口 上還有一個端口測試按鈕,用戶可以用它對并口做簡單的讀寫測試。 圖 4-10 并口設(shè)置4.8 設(shè)置調(diào)試目標(biāo)H-JTAG 通過 JTAG 讀取芯片的 ID ,并根據(jù)此 ID 來判斷調(diào)試目標(biāo)采用的是什么 ARM 內(nèi)核。 H-JTAG 可以識別常用的大部分芯片。 如果 H-JTAG 不能識別調(diào)試目標(biāo), 用戶可以在 TARGET SETTINGS里手動指 定 ARM 內(nèi)核。 TARGET SETTINGS的設(shè)置窗口如圖 4-11所示。一般的 ARM 芯片,都同時支持大小端(Little Endian/Big Endian 。不同的方式,數(shù)據(jù)

46、和指令的存儲是 完全不同的,具體的請參考數(shù)據(jù)手冊。如果大小端設(shè)置不正確,調(diào)試的時候肯定會出問題。用戶需要在 TARGET SETTINGS里面指定調(diào)試目標(biāo)的大小端。大小端的選擇如下圖所示: 圖 4-11調(diào)試目標(biāo)設(shè)置4.9 添加芯片 ID上面我們提到, H-JTAG 根據(jù)芯片 ID 來判斷芯片使用的是什么 ARM 內(nèi)核。對于不能識別的芯片,用 戶可以手動指定其類型。同時,用戶也可以將新的 ID 添加到 H-JTAG 的芯片列表當(dāng)中去。這樣 H-JTAG 就可以自動檢測該芯片。 H-JTAG 提供了 TARGET MANAGER, 用戶可以利用這個管理器添加新的芯片 ID , 或刪除已經(jīng)存在的芯片

47、 ID 。 要添加新的芯片 ID , 用戶需要在管理器中輸入新 ID , 并指定該 ID 對應(yīng)的 ARM 內(nèi)核。完成后, H-JTAG 會自動更新芯片列表。 H-JTAG 的 TARGET MANAGER如下圖所示: 圖 4-12 調(diào)試目標(biāo)管理器提示:根據(jù) IEEE 1149標(biāo)準(zhǔn), 芯片 ID 為 32位, 并且 ID 的最低位必須為 1。 用戶可以通過這點(diǎn)來判斷芯片 ID 的有效性。同時,如果用戶有 H-JTAG 不能識別的芯片,歡迎你把芯片 ID 和型號發(fā)給我們,我們會 及時更新 H-JTAG 的芯片列表。4.10 TAP設(shè)置對大部分的 ARM 芯片而言, ARM JTAG掃描鏈?zhǔn)仟?dú)立的。

48、對于這樣的芯片, TAP CONFIGURATION應(yīng)該采用默認(rèn)設(shè)置,如下圖所示。下圖表示在 ARM 掃描鏈的前面和后面都沒有串接別的掃描鏈。 圖 4-13 TAP默認(rèn)設(shè)置有些 ARM 芯片的 JTAG 掃描鏈?zhǔn)呛托酒瑑?nèi)部集成的其它部件的 JTAG 掃描鏈串接在一起的。這樣的 芯片比較特殊。對于這類特殊的芯片,用戶需要在 TAP CONFIGURATION里進(jìn)行相應(yīng)的設(shè)置。例如, ST 公司的 STR91xF 芯片,其內(nèi)部的 JTAG 掃描鏈如圖 4-14所示。從圖中可以看到, STR91xF 芯片內(nèi)部的掃 描鏈包括三部分:TAP#1, TAP#2和 TAP#3。其中 TAP#2是 ARM 調(diào)

49、試需要訪問的掃描鏈。在 ARM 掃描 鏈的前面和后面都串接了別的掃描鏈, 他們的指令寄存器的長度分別為 5-Bit 和 8-Bit 。 對 STR91xF 芯片而 言, TAP CONFIGURATION應(yīng)該設(shè)置成圖 4-15所示。圖 4-15的設(shè)置告訴 H-JTAG ,在 ARM 掃描鏈之前 有一條別的掃描鏈,指令寄存器的長度為 5-Bit ,在 ARM 掃描鏈的后面也有一條別的掃描鏈,其指令寄存 器的長度為 8-Bit 。這樣, H-JTAG 就知道該如何正確訪問 STR91xF 內(nèi)部的 ARM 調(diào)試掃描鏈。 圖 4-14 STR91xF掃描鏈內(nèi)部結(jié)構(gòu) 圖 4-15 TAP設(shè)置(STR91

50、xF 4.11 H-JTAG常用選項(xiàng)H-JTAG提供了一些常用的選項(xiàng)供用戶選擇。用戶可以通過選項(xiàng)設(shè)置主窗口進(jìn)行設(shè)置,也可以通過 OPTIONS 菜單進(jìn)行快速設(shè)置。選項(xiàng)設(shè)置主窗口如下圖所示。用戶可以在左側(cè)窗口選擇需要設(shè)置的選項(xiàng), 然后在右邊窗口進(jìn)行設(shè)置。 圖 4-16 選項(xiàng)設(shè)置主窗口H-JTAG提供了五個常用選項(xiàng):VECTOR CATCH設(shè)置H-JTAG 集中管理 VECTOR CATCH,如圖 4-17所示。在 VECTOR CATCH設(shè)置里,用戶可以選擇在 調(diào)試過程中需要捕獲的中斷或異常。如果全局 DISABLE VECTOR CATCH選項(xiàng)被使能, VECTOR CATCH 的設(shè)置將被忽略

51、。 圖 4-17 VECTOR CATCH設(shè)置SEMIHOSTINGSemihosting 是一種輔助調(diào)試機(jī)制, 用來實(shí)現(xiàn)主機(jī)與目標(biāo)開發(fā)板的通信。 但需要仿真器和目標(biāo)程序的配 合和支持,而且 Semihosting 只能用在調(diào)試上,在實(shí)際的產(chǎn)品當(dāng)中是不能使用的。因?yàn)?Semihosting 會 占用斷點(diǎn)資源,建議用戶在調(diào)試的時候禁用掉該功能。VECTOR CATCHVector Catch是用來捕獲異常的。如果打開了該選項(xiàng),并在調(diào)試軟件里做了相應(yīng)的設(shè)置, ARM 處理器 出現(xiàn)異常的時候,調(diào)試軟件就會提示用戶出現(xiàn)了異常。 Vector Catch也會占用斷點(diǎn)資源,建議用戶在 調(diào)試的時候,禁用掉該

52、功能。TARGET RESET在該選項(xiàng)里,用戶可以選擇如何對調(diào)試目標(biāo)進(jìn)行復(fù)位。用戶可以選擇只用 nTRST 信號,或是同時使 用兩個信號對系統(tǒng)執(zhí)行復(fù)位。用戶還可以選擇每當(dāng)調(diào)試軟件連接到 H-JTAG SERVER的時候,自動執(zhí) 行一個復(fù)位操作。 另外 , 用戶也可以指定復(fù)位等待時間 . 這樣 H-JTAG 會在執(zhí)行完復(fù)位操作后 , 等待用 戶指定的時間 , 再停止 MCU 的運(yùn)行 .提示:復(fù)位操作依賴于用戶具體使用的 JTAG 調(diào)試板。如果 JTAG 調(diào)試板沒有系統(tǒng)復(fù)位信號, H-JTAG 將無 法執(zhí)行系統(tǒng)復(fù)位。DATA ABORT在調(diào)試的過程當(dāng)中,即使在 CPU 停止運(yùn)行的時候,也需要對存儲

53、系統(tǒng)進(jìn)行讀寫,例如設(shè)置 /清除斷點(diǎn)。 在對存儲進(jìn)行讀寫的時候,有可能會出現(xiàn)數(shù)據(jù)異常。例如,訪問未定義的存儲空間,或是訪問受保護(hù) 的存儲空間。如果用戶打開了 REPORT DATA ABORT選項(xiàng), H-JTAG 在檢測到數(shù)據(jù)異常的時候,將會 提示用戶。否則, H-JTAG 只是在內(nèi)部進(jìn)行處理,而不會提示用戶。用戶可以根據(jù)自己的需要進(jìn)行選 擇。4.12 檢查軟件更新通過 H-JTAG 的 CHECK UPDATE菜單, 用戶可以檢查是否有新的版本可以下載。 如果有更新的版本, H-JTAG 會提示用戶下載。用戶也可以訪問 H-JTAG 的主頁以獲得更多的更新信息。第五章 H-FLASHER的使用

54、和配置詳解這個章節(jié)詳細(xì)介紹了 H-FLASHER 的使用和配置。同時還提供了兩個配置實(shí)例,供用戶參考。5.1 H-FLASHER工作流程H-FLASHER的工作原理很簡單, 其流程如圖 5-1所示。 H-FLASHER 的工作流程分為四個主要的步驟:執(zhí)行初始化腳本、 下載 FLASH 燒寫驅(qū)動、 檢查 FLASH ID和對 FLASH 執(zhí)行用戶指定的操作。 如果任何一 個步驟出錯, H-FLASHER 都會提示錯誤,中斷當(dāng)前的操作。 圖 5-1 H-FLASHRE工作流程5.1.1 Execute Init Script如果用戶指定了初始化腳本, H-FLASHER 首先會執(zhí)行用戶指定的初始化腳本。如果用戶沒有指定初 始化

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論