NiosII软件调试技巧

NiosII软件调试技巧

ID:37827337

大小:361.52 KB

页数:14页

时间:2019-06-01

NiosII软件调试技巧_第1页
NiosII软件调试技巧_第2页
NiosII软件调试技巧_第3页
NiosII软件调试技巧_第4页
NiosII软件调试技巧_第5页
资源描述:

《NiosII软件调试技巧》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、NiosII之软件调试技巧观察寄存器对寄存器的观察和编辑是最基本也是最重要的调试手段.¾菜单操作NiosIIIDE->Window->ShowView->Registers图1:RegisterView示意图¾编辑寄存器的值右键单击目标寄存器,并选择ChangeRegisterValue,输入一个新值,回车即可;被修改过的寄存器会以红色显示;¾设置寄存器值的显示格式在registersview中或者某个寄存器上单击右键,并选择Format,然后在下列中选择显示格式¢Natural.¢Decimal.¢Hexadecimal.寄存器的详细介绍请参考NiosI

2、I之处理器操作模式及寄存器。观察变量VariablesView默认显示当前函数中的所有局部变量,用户也可以在VariablesView中通过鼠标右键选择AddGlobalVariables,添加任何感兴趣的全局变量.¾菜单操作NiosIIIDE->Window->ShowView->Variables图2:VariablesView示意图¾编辑变量的值右键单击目标变量,并选择ChangeVariableValue,输入一个新值,回车即可;被修改过的变量会以红色显示;¾设置变量值的显示格式在VariablesView中或者某个变量上单击右键,并选择Forma

3、t,然后在下列中选择显示格式:¢Natural.¢Decimal.¢Hexadecimal.¾查看变量的类型属性在VariablesView中的某个变量上单击右键,并选择CasttoType;观察内存¾菜单操作NiosIIIDE->Window->ShowView->Memory图3:MemoryView示意图¾MemoryView支持与C语言一样的寻址方式,用户可以在地址栏中使用下面几种表达式:¢0x0847d3c¢(&y)+1024¢*ptr¾编辑memory的值在地址栏中输入感兴趣的地址,然后在其下方的MemoryView中,鼠标左键单击(不能双击)

4、感兴趣的地址单元(参考图3:MemoryView示意图),然后输入新值即可;可以通过键盘的ArrowKey,来定位新的要修改的单元;对Memory的编辑是NiosIIIDE中最不人性化的一点L观察表达式¾菜单操作NiosIIIDE->Window->ShowView->Expressions图4:ExpressionView示意图¾添加Expression在ExpressionView中,单击鼠标右键选择AddWatchExpression,然后在弹出的对话框中输入想要观察的表达式(例如:(x-5)*3),单击OK即可;设置断点¾断点的作用:使程序运行到满

5、足断点条件时自动停止运行;用户可以直接在源程序的代码上添加断点,取消断点或者暂时禁止断点;¾设置断点:双击代码左侧边缘处即可设置断点,如下图所示;图5:断点设置示意图¾编辑断点¢菜单操作NiosIIIDE->Window->ShowView->Breakpoints¢所有的断点都会在BreakpointView中显示,并可以使能/禁止/删除断点;图6:BreakpointView示意图NiosIIIDE的支持断点的动态设置,用户可以在程序运行时在源码中动态设置断点.WatchpointWatchpoint是一种特殊的断点,一般的断点是当程序执行到源代码的某

6、个位置时强制程序停下来;Watchpoint则可以根据给定条件控制程序.NiosIIIDE对Watchpoint的支持还存在很大缺陷,这里只作简单介绍.¾在全局变量上设置watchpoint¢在源文件中双击选中一个全局变量(目前只支持32位的变量,例如int);¢选择菜单Run>ToggleWatchpoint;¢在AddWatchpoint的对话框中选择ò如果要让程序在读该全局变量的时候停止的话,就在Read选项上打勾;ò如果要让程序在写该全局变量的时候停止的话,就在Write选项上打勾;¢单击OK.¢可以在Breakpointsview(见P5)中观察

7、和控制所有的断点,包括Watchpoint;注:重复1-2步可以取消Watchpoint;¾在表达式上设置watchpoint¢打开Breakpointsview(见P5);¢右键单击窗口内任何位置,然后选择AddWatchpoint;¢在AddWatchpoint(C/C++)对话框的Expressiontowatch域输入目标表达式(目标表达式通常用来表示某个地址);¢在AddWatchpoint的对话框中选择ò如果要让程序在读表达式所指向的地址时停止的话,就在Read选项上打勾.ò如果要让程序在写表达式所指向的地址时停止的话,就在Write选项上打勾

8、.¢单击OK.图7:Watchpoint示意图在HAL源文件中设置

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。