IAR使用调试详解

目录

1 IAR功能介绍

1.1 File文件菜单

1.2 Edit编辑菜单

1.3 View视图菜单

1.4 Projcet工程菜单

1.5Debug调试菜单

1.6 Disassembly反汇编菜单

1.7 Simulator下载调试工具

1.8 Tools工具菜单

1.9 Window窗口菜单

1.10 Help帮助菜单

2 IAR设置

2.1 插入/编辑模板

2.2 完型语句

2.3 自动缩进

3 编译和调试

3.1 编译

3.2 不同仿真调试器差异

3.3 调试

3.4 仿真进行调试

3.5 调试窗口介绍


1 IAR功能介绍

1.1 File文件菜单

文件菜单是比较常见的菜单,主要包含对文件的新建、打开、关闭、打印等一些常见的操作,在编辑和调试模式下完全一样。

图片

  • New:新建文件/工作空间 Ctrl + N
  • Open:打开文件/工作空间 Ctrl + O
  • Close:关闭文件
  • Save Workspace:保存工作空间
  • Save Workspace As:另存工作空间
  • Close Workspace:关闭工作空间
  • Save:保存文件 Ctrl + S
  • Save As:另存文件
  • Save All:保存所有文件/工作空间
  • Page Setup:打印页面设置
  • Print:打印 Ctrl + P
  • Recent Files:最近打开文件
  • Recent Workspaces:最近打开工作空间
  • Exit:退出软件

1.2 Edit编辑菜单

这个菜单在编辑和调试模式下也相同,在编辑的时候使用较多,这个菜单下面大部分内容和工具栏按钮一样。

图片

  • Undo:撤销编辑 Ctrl + Z
  • Redo:恢复编辑 Ctrl + Y
  • Cut:剪切 Ctrl + X
  • Copy:复制 Ctrl + C
  • Paste:粘贴 Ctrl + V
  • Select All:全选 Ctrl + A
  • Find and Replace>Find:查找 Ctrl + F

        Find and Replace>Find Next:查找下一目标 F3

        Find and Replace>Find Previous:查找上一目标 Shift + F3

        Find and Replace>Find Next (Selected) :在选中对象里查找下一目标 Ctrl + F3

        Find and Replace>Find Previous (Selected):在选中对象里查找上一目标 Ctrl + Shift + F3

        Find and Replace>Replace:替换 Ctrl + H

        Find and Replace>Find in Files:在对话框中指定条件查找

        Find and Replace>Replace in Files:在对话框中指定条件替换

        Find and Replace>Incremental Search:在对话框中查找字符 Ctrl + I

  • Navigate>Go To:前往行列 Ctrl + G

        Navigate>Toggle Bookmark:标记/取消书签 Ctrl + F2

        Navigate>Previous Bookmark:跳转到上一个书签 Shift + F2

        Navigate>Next Bookmark:跳转到下一个书签 F2

        Navigate>Navigate Backward:跳转到上一步 Alt + 左箭头

        Navigate>Navigate Forward:跳转到下一步 Alt + 右箭头

        Navigate>Go to Definition:跳转到定义 F12

  • Code Templates>Insert Template:插入模板 Ctrl + Alt + V

        Code Templates>Edit Templates:编辑模板

  • Next Error/Tag:显示下一错误/目标 F4
  • Previous Error/Tag:显示上一错误/目标 Shift + F4
  • Complete Word:完型语句 Ctrl + Alt + 空格
  • Complete Code:完型类/结构体代码 Ctrl + 空格
  • Parameter Hint:参数提示 Ctrl + Shift + 空格
  • Match Brackets:括号匹配
  • Toggle All Folds:折叠/打开当面编辑代码 Ctrl + Alt + F
  • Auto Indent:自动缩进(对齐) Ctrl + T
  • Block Comment:块注释 Ctrl + K
  • Block Uncomment:块取消注释 Ctrl + Shift + K
  • Toggle Breakpoint:添加/取消断点 F9
  • Enable/Disable Breakpoint:使能/失能断点 Ctrl + F9

1.3 View视图菜单

这个菜单的意思就是打开或关闭视图窗口,比如我们的工作空间窗口不见了,就可以通过该菜单打开。由于在调试模式下增加了一些视图窗口,所以在两种模式下存在一些差异。

图片

  • Messages>Build:编译信息

        Messages>Find in Files:查找信息

        Messages>Tool Output:工具信息

        Messages>Debug Log:调试信息

  • Workspace:工作空间窗口
  • Source Browser>Source Browser:源码浏览器

        Source Browser>References:引用窗口

        Source Browser>Declarations:声明窗口

        Source Browser>Call Graph:调用图窗口

  • Breakpoints:查看断点窗口
  • Disassembly:反汇编窗口
  • Memory:内存窗口
  • Symbolic Memory:内存标记窗口
  • Register:寄存器窗口
  • Watch:变量/参数查看窗口
  • Locals:局部变量窗口
  • Statics:静态变量窗口
  • Auto:自动显示变量/参数窗口
  • Live Watch:实时监视窗口
  • Quick Watch:快速查看窗口
  • Call Stack:调用堆栈窗口
  • Stack:堆栈地址窗口
  • Terminal I/O:终端窗口
  • Images:图片窗口
  • Cores:内核状态窗口
  • Code Coverage:代码利用率窗口
  • Toolbars>Main:主工具栏

        Toolbars>Debug:调试工具栏

  • Status bar:状态栏

图片

1.4 Projcet工程菜单

工程菜单主要针对的是工程,在实际使用中比较常用,该菜单下面子菜单内容在编辑调试模式下略微存在一些差异。

图片

  • Add Files:添加文件
  • Add Group:添加组
  • Import File List:导入文件列表
  • Add Project Connection:添加工程链接
  • Edit Configurations:编辑配置
  • Remove:移除工作空间工程
  • Create New Project:创建新项目
  • Add Existing Project:添加已存在工程
  • Options:目标选项配置 Alt + F7
  • Version Control System:版本控制系统
  • Make:编译工程 F7
  • Compile:编译文件/组 Ctrl + F7
  • Rebuild All:重新编译
  • Clean:清除编译等中间文件
  • Batch Build:构建批处理 F8
  • C-STAT Static Analysis:静态分析
  • Stop Build:停止编译 Ctrl + Break
  • Download and Debug:下载并调试 Ctrl + D
  • Debug without Downloading:调试(不下载)
  • Attach to Running Target:附加运行目标
  • Make & Restart Debugger:编译并重新调试 Ctrl + R
  • Restart Debugger:重新调试 Ctrl + Shift + R
  • Download:下载
  • SFR Setup:SFR设置
  • Open Device Description File:打开设备描述文件
  • Save List of Registers:保存寄存器列表

1.5Debug调试菜单

这个菜单只有在调试模式下才会显示出来

图片

  • Go:全速运行 F5
  • Break:停止运行
  • Reset:复位
  • Stop Debugging:停止调试 Ctrl + Shift + D
  • Step Over:逐行运行 F10
  • Step Into:跳入运行 F11
  • Step Out:跳出运行 Shift + F11
  • Next Statement:运行到下一语句
  • Run to Cursor:运行到光标行
  • AutoSetp:自动步骤运行
  • Set Next Statement:设置下一条语句
  • C++ Exceptions:C++异常
  • Memory:内存保存/复位
  • Refresh:调试更新
  • Logging:调试日志

前面9项的内容是我们常用的菜单,全部位于工具栏里面,如下图:

图片

AutoSetp自动步骤运行,这个功能可以设定自动运行的xx模式,间隔xx时间运行,自动调试动画效果如下:

图片

1.6 Disassembly反汇编菜单

这个菜单其实很简单,就是选择反汇编的模式,总共四种,我们一般选择自动模式(默认)。

图片

1.7 Simulator下载调试工具

这个菜单的内容会随你工程配置的下载调试改变而改变,有两种类型(ST-Link和Simulator),这个菜单里面的内容使用频率较少。

图片

1.8 Tools工具菜单

这个菜单主要是针对编辑代码相关的配置,对于自定义不同风格比较实用。

图片

1.Options:工具配置选项

2.Filename Extension:文件扩展名

3.Configure Viewers:配置预览

4.Configure Custom Argument Variables:配置自定义参数变量

5.Configure Tools:配置工具

6.Project Converter:工程转换

Options工具配置选项是比较重要的一个菜单,里面包含了我们字体大小、颜色、快捷键、工程输出信息等一系列比较实用的内容。

图片

Configure Tools配置工具可以增加一些相关的命令,有点类似于Keil目标配置选项中User里面用户添加命令。

Project Converter工程转换这个对于同时在Keil和IAR两个工具上开发的人比较实用,可以直接从Keil工程转换为IAR工程。操作很简单,找到需要转换的Keil工程,直接转换就是了,如下图:

图片

1.9 Window窗口菜单

这个菜单需要和View视图菜单区分开来,主要针对的是编辑窗口。

图片

1.Close Tab:关闭选项卡(关闭选中的一个窗口) Ctrl + F4

2.Close Window:关闭窗口(关闭所有窗口)

3.Split:拆分窗口

4.New Vertical Editor Window:新建垂直编辑窗口

5.New Horizontal Editor Window:新建水平编辑窗口

6.Move Tabs to Previous Window:移动标签之后的窗口

7.Move Tabs to Previous Window:移动标签之前的窗口

8.Close All Tabs Except Active:关闭除了活跃的所有选项卡

9.Close All Tabs to the Right of Active:关闭活跃窗口右边所有标签

10.Close All Editor Tabs:关闭所有编辑选项卡

Split拆分窗口就是将一个窗口拆分为上下左右四个窗口,如下图:

图片

New Vertical Editor Window新建垂直编辑窗口New Horizontal Editor Window新建水平编辑窗口类似,只是一个是左右,一个是上下。新建垂直编辑窗口如下图:

图片

1.10 Help帮助菜单

这个菜单里面内容比较实用哦,我写的大部分内容都是参考这里面的,其实主要的也就是所谓的帮助文档。

图片

Content内容、Index索引、Search搜索是对应帮助文档里面的内容,如下如:

图片

Lincense Manager许可证管理,注册的时候就是这里。

2 IAR设置

2.1 插入/编辑模板

经常使用同样一段代码,就可以使用这个功能。IAR默认只有if、for这两个模板,我们可以自己添加(编辑)模板,比如添加一个while模板,点击“编辑模板”菜单就可以进入编辑状态,编辑的语法很简单,可以参考自带模板。插入/编辑模板动画效果:

图片

2.2 完型语句

小学时学习过完型填空,这里相当于就是那个意思,也就是将单词补全。比如完整的代码为USART_Initializes,而实际只需要输入USA字母就可以补全。完型语句动画效果:

图片

2.3 自动缩进

这个功能比较实用,在你代码比较凌乱(也就是不对其的情况),使用该功能就可使代码自动对齐。自动缩进动画效果:

图片

3 编译和调试

3.1 编译

1)单独编译Compile,快捷键Ctrl+F7 2)全局编译Make,快捷键F7

在这里插入图片描述

3.2 不同仿真调试器差异

上面主菜单中有一个Simulatoe菜单选项,其实这个菜单是根据你工程配置的仿真调试器改变而改变的。如在仿真、J-Link、ST-Link下的区别:

图片

3.3 调试

点击Download and Debug,快捷键Ctrl+D

注意:需要在Debugger——Driver选择Simulator模拟,或者用ST-Link连接设备,如果使用ST-Link则开启调试就会烧录程序

在这里插入图片描述

各窗口的含义如下:

序号名称功能
调试断点按钮打开调试界面和设置断点
调试控制按钮可以跳转调试点
Registers寄存器视图
Disassembly程序执行栈
Watch可以查看全局变量值
Memory显示内存情况

3.4 仿真进行调试

常用的调试操作是Debug——Step Over(F10)逐过程、Step Into(F11)逐条执行程序指令、Go(F5)直接把程序执行到最后。在工具栏上也有调试可以直接使用,此程序的调试过程与结果如下:

  • Go:全速运行 F5
  • Break:停止运行
  • Reset:复位
  • Stop Debugging:停止调试 Ctrl + Shift + D
  • Step Over:逐行运行 F10
  • Step Into:跳入运行 F11
  • Step Out:跳出运行 Shift + F11
  • Next Statement:运行到下一语句
  • Run to Cursor:运行到光标行

3.5 调试窗口介绍

View这个菜单的意思就是打开(已关闭的)视图窗口,比如常用的工作空间窗口被不小心关闭了,就可以通过该菜单打开。由于在调试模式下增加了一些视图窗口,所以在编辑模式和调试模式下存在一些差异。

新版的IAR的菜单和以前老版本的排序、内容可能略有差异,但大体相同,重点看一下Watch这一类查看变量的子菜单。6个子菜单主要含义如下:

  • Watch:普通查看表达式/变量值窗口,Watch菜单下面有4个子菜单Watch1 ~4,但都是一样的,可以分别开4个窗口出来同时查看表达式/变量值。

  • Live Watch:查看实时表达式/变量值窗口,Live窗口与上面Watch窗口类似,差别在于变量须为静态(全局),变量实时更新;

  • Quick Watch:快速查看表达式/变量值窗口,快速浏览变量窗口主要结合另外一个视图菜单Macro Quicklaunch一起使用,达到精确地控制变量值。

  • Auto:自动显示表达式/变量窗口,当程序暂停在某一个地方,自动显示暂停坐在位置的表达式/变量,而不需要像Watch要手动添加。

  • Locals:局部变量窗口,这个子菜单和Atuo类似,也是自动显示,区别在于Locals是显示的局部表达式变量,而静态/全局变量不会显示。

  • Statics:静态变量窗口,该子菜单同样具有Atuo的特性,自动显示。但是它显示的内容是静态变量(静态局部、静态全局、全局变量)。

6个视图子菜单窗口的显示内容都类似,总共四个属性:

可以看到数据值显示的是16进制,可以更改为其他显示类型:

参考文章:IAR在线调试查看各种变量的不同方法-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

几度春风里

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值