⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 13 调试工具axd应用.txt

📁 ads1.2学习资料,对arm初学者有帮助.
💻 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 + -