?? 13 調試工具axd應用.txt
字號:
第13章 調試工具AXD應用
13.1 寄存器
Processor Views , Registers
13.1.1 寄存器的使用方法
1. 觀察寄存器
寄存器窗口的8個選項,前七種對應七種工作模式
Debug Comms 調試通信通道寄存器組,包括控制,讀狀態和寫狀態寄存器.
調試中,值發生變化的寄存器值將變紅色.
2. 修改寄存器
可輸入十進制,或0x開頭的十六進制.回車后生效.
3. 程序計數器 R15
雙擊可修改值.窗口中"Retain Current",不改變當前使用的數據棧指針."User define" 修改.
4. 程序狀態寄存器 CPSR
雙擊,不可隨意修改.
13.1.2 寄存器視窗中的級聯菜單
1. Add to System 把某個寄存器添加到系統視窗中.
2. Add Register 添加寄存器
3. Format 數據顯示格式
4. Locate Using Value 查找寄存器中值對應的地址.找到由該地址定位的存儲器.
5. Refresh 刷新
6. Properties 改變默認數據顯示格式
13.2 存儲器
Processor Views , Memory
13.2.1 存儲器的使用方法
1. 觀察存儲器
Memory Locate Start address 指定觀察區域的起始地址
四個數據表可以定義不同的起始地址.每個視窗顯示的字節數可以從16B到4096B,可以通過 Properties設定.
調試程序時,變化的存儲器顏色會變化.
一定要注意大端,小端設定.可以通過 Properties設定.
2. 修改某存儲器
雙擊修改
3. 保存存儲器中的數據
File,Save Memory To File
4. 加載存儲器數據
File,Load Memory From File
13.2.2 存儲器視窗中的級聯菜單
1. Size 窗口每個單元顯示的位數
2. Format 數據格式
3. Locate Using Value 查找存儲器使用值.(以選中存儲器中值為地址查找)
4. Copy Memory 復制
5. Fill Memory 填充存儲區,使用指定數據大面積填充存儲區
6. Search Memory 查找數據
7. Toggle Breakpoint 設置,取消斷點(對程序存儲區)
8. Toggle Watchpoint 設置,取消觀測點
9. Copy 鼠標選中,再復制
10. Refresh 刷新顯示
11. Refresh (for nonstop debugging) 在不停止調試的情況下刷新存儲器
12. Properties 外部屬性
Apply to all 把在當前存儲器窗口中所做的改動應用到所有的數據表中
Display 設置調試器中存儲器字節順序
Target 顯示目標存儲器的字節順序.
目標存儲器的字節順序可能由硬件指定,調試器中存儲器可以由調試者指定.
13. Automatic refre 系統在執行中止時自動刷新存儲器中的數據
14. Show offset from start 不選該項,存儲器中的地址是絕對地址.
選擇該項,以 Memory Locate Start address 指定的為基址.
15. Page Size 定義存儲器頁字節數,16-4096B之間
16. Size Display 定義視窗中每個單元顯示的位數,8,16,32.
17. Size Targe Access 訪問目標時數據總線的寬度.
13.2.3 調試用戶程序應用舉例
13.3 在調試中使用斷點
System Views , Breakpoint
13.3.1 斷點使用方法
1. 設置斷點 Toggle Breakpoint
2. 斷點管理視窗
Position 斷點地址及所在文件
Condition 條件,無條件
Action 斷點的兩種響應方式: Break,使運行程序中斷; Log Text 為運行程序作提示
3. 設置條件斷點
右鍵, Add.指定源程序行號,或指定地址設定.
Condition 條件
out 第多少次執行到斷點時,則觸發中斷.
when 可設置復雜的條件
Enabled 打開,或關閉斷點
Hardware 不可設置,表明這是硬件斷點,在軟件斷點中不使用
Size 指定斷點是在ARM中還是在Thumb中.
Break 默認,執行到此停止
Log Text 執行到此后,在Debug log(System View,Output,Debug log)中顯示輸入的字符串
4. 執行到斷點處
5. 查找和修改斷點 System Views , Breakpoint
6. 觀察斷點
7. 刪除斷點
13.3.2 斷點管理級聯菜單
Add 設置條件斷點
Disable 關閉選中
Delete 刪除選中
Delete All 刪除全部
Locate Using Address 查找斷點所在指令行的位置
Refresh 刷新
Properties 打開斷點輸入對話框,可以觀察員和修改斷點
13.4 觀測項和觀測點
13.4.1 使用觀測項(Watch)
1. 觀測項一般介紹
系統觀測項 System Views , Watch
處理器觀測項 Processor Views , Watch
使用觀測項可以在調試程序時動態地了解所關心的某些信息,這些信息取決于所設置的觀測項的表達式.
如: R0+R3, Value*0x20
2. 觀測項管理視窗
3. 觀測項管理級聯菜單
Add to System watch 把處理器中選定的觀測項添加到系統觀測項中,也成為系統觀測項
Add watch 設置觀測項
Format 數據格式
Locate Using Value 查找觀測項使用的值
Locate Using Address 查找觀測項使用的地址
Array Expansion 把一組指定的符號擴展為一列s
Refresh 刷新
Refresh (for nonstop debugging) 在不停止調試的情況下刷新
Properties 設置默認顯示格式
4. 設置觀測項
1. 級聯菜單,右鍵 Add Watch
Expression 表達式
View Proc,System 加為處理器觀測項,或系統觀測項
Tab 加入哪個表
2. 在源程序窗口中設置
Add to Watch 直接添加到觀測項視窗中
Watch 可設置詳細項(上面的)
5. 修改觀測項 雙擊修改
6. 刪除觀測項
13.4.2 使用觀測點(Watchpoint)
Processor Views , Watchpoint
觀測點與觀測項之不同
觀測項是在檢查一個表達式的值,要對表達式進行計算,而觀測點不對表達式進行計算
不會使程序停止
與斷點一樣,可以設置實現條件.觀測項沒有.
1. 觀測點管理視窗
State 狀態,圓點,打開; 圓環,關閉
Processor 目標處理器的名稱
Item 觀測點的地址或名稱
Watching 觀測點的地址
Count 觀測點被滿足的次數
Condition 條件觀測點
Action 中止(Break),或顯示Log
2. 觀測點管理級聯菜單 (同觀測項)
Add
Disable
Delete
Delete All
Locate Using Address
Refresh
Properties
3. 設置條件觀測點
Add.
Processor
Item 觀測點名稱,可以是變量名,寄存器或地址
Watching 使用 Properties 檢查已經存在的觀測點時,才有內容,一般顯示地址或寄存器名.
Value 觀測點等于該值時,Count加1.
Out 循環次數
When 條件表達式
Enabled 允許,禁止.
Hardware 硬件觀測點
H/W res 與硬件有關
Force Size 控制被觀測的存儲器的字節數
Action 中止(Break),或顯示Log
4. 設置無條件觀測點
1. 在源程序中設置
Set Watchpoint
2. 在存儲器中設置
Toggle Watchpoint
4. 刪除觀測點
13.5 其他調試方法
13.5.1 調試時觀察程序變量
1. 變量管理視窗
Processor Views , Variable
2. 變量管理級聯菜單
Add to Processor Watch 設置為處理器觀測項
Add to System Watch 設置為系統觀測項
Format 格式
Locate Using Value 查找變量使用值,把變量顯示的值作為地址使用
Locate Using Address 查找變量使用的地址,把存儲變量的地址作為地址
13.5.2 在調試程序時使用符號表
Processor Views , Low Level Symbols
1. 符號表管理視窗
檢查當前映像文件中所有的代碼級符號.名稱與地址
2. 符號管理級聯菜單
Locate Source 在源程序中查找符號
Locate Disassembly 在反匯編代碼中查找符號
Loccate Using Address 查找符號映像地址
Sort by Symbol 符號分類選項,字母或地址排序
Toggle Breakpoint 斷點操作
13.6 Profiling功能
Profiling可以按照指定的時間間隔采樣程序計數器,采樣結果用來生成一個百分比圖形.描述執行每段程序所花費的時間.
目標是 EmbeddedICE,Multi-ICE則不支持該項.
有兩種Profiling方式可以供選擇:
Flat Profiling 不改變映像文件,但只能積累有限的信息
Call graph profiling 信息更詳細,但會加代碼到映像文件
1. 加載文件 (兩種方法)
A. Load Image, Profiling, Interval 采樣時間間隔,微秒為單位.
B. File下拉菜單. Load Debug Symbols,在加載文件窗口設置
2. 關于Profiling操作命令
Open, Options,Profiling 下拉列表
Toggle Profiling 啟動Profiling
Clear Collected 清除已有Profiling信息
Write to file 存儲已經采集信息到文件.
3. 開始Profiling功能并執行程序
只有連續運行一段程序才有意義.
4. 存儲Profiling文件
5. 觀察Profiling文件信息'
2007-7-25 0:03
end of this book
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -