0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

IAR 在线调试查看各种变量的不同方法

黄工的嵌入式技术圈 来源:网站整理 2020-03-12 10:00 次阅读

你知道IAR的View视图菜单中Watch、 Live Watch、 Quick Watch、 Auto、 Locals、 Statics这几个子菜单的含义和区别吗?

下面带你全面了解这6个子菜单的意思,让你不再为调试查看各种变量而烦恼。

1简述IAR的View视图菜单

View这个菜单的意思就是打开(已关闭的)视图窗口,比如我们的工作空间窗口不见了,就可以通过该菜单打开。

不瞒大家,以前我初学软件的时候,常用的视图窗口不小心被我关闭了,我心里都慌了。

由于在调试模式下增加了一些视图窗口,所以在编辑模式和调试模式下存在一些差异。

细心的朋友其实会发现,子菜单是进行了分类的(用横线隔开),本文讲述的就是Watch这一类查看变量的子菜单。

新版的IAR的菜单和以前老版本的排序、内容可能略有差异,但大体相同。同时,IAR的菜单内容比较多,本文就不再讲述,可以参看我的另外两篇原创文章:

1.IAR for ARM系列教程(三)_菜单(Ⅰ)

2.IAR for ARM系列教程(四)_菜单(Ⅱ)

26个子菜单主要含义

1.Watch:普通查看表达式/变量值窗口

2.Live Watch:查看实时表达式/变量值窗口

3.Quick Watch:快速查看表达式/变量值窗口

4.Auto:自动显示表达式/变量窗口

5.Locals:局部变量窗口

6.Statics:静态变量窗口

这里可以再次细分,前面3个菜单分为一类:Watch查看窗口;后面3个菜单分为一类:Atuo自动窗口。

以上表述的意思可能不够全面(钻字眼的人可能觉得表述有问题)。所以,下面章节将给大家较详细的介绍一下这6个子菜单的含义。

36个子菜单详细内容

下面我将结合一些案例给大家讲述具体的含义。

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

Expression:表达式名称,一般指变量和函数等。

Value:对应的值;

Location:对应所在位置,寄存器RAM、Flash等。

Type:变量/函数类型。

1.Watch:普通查看表达式/变量值窗口

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

一般这个窗口我们比较常用,添加自己想要查看的变量值。

A.通过手动添加需要查看的表达式/变量;

B.只有暂停调试才会更新对应的值;

2.Live Watch:查看实时表达式/变量值窗口

Live可以翻译成“现场”、“活的”,所以我就称为查看实时变量。Live窗口与上面Watch窗口类似,差别在于:

A.变量须为静态(全局);

B.变量实时更新(程序在运行时);

3.Quick Watch:快速查看表达式/变量值窗口

快速浏览变量窗口主要结合另外一个视图菜单Macro Quicklaunch一起使用,达到精确地控制变量值。

4.Auto:自动显示表达式/变量窗口

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

5.Locals:局部变量窗口

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

6.Statics:静态变量窗口

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

所以,通过该视图窗口你就可以查看你给内存分配了那些静态变量。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • IAR
    IAR
    +关注

    关注

    5

    文章

    350

    浏览量

    36669
  • 编辑
    +关注

    关注

    0

    文章

    28

    浏览量

    11547
  • ATUOCAD
    +关注

    关注

    0

    文章

    2

    浏览量

    5939
收藏 人收藏

    评论

    相关推荐

    IAR升级VS Code调试扩展,引入Listwindow技术

    IAR近日宣布对VS Code中的调试扩展IAR C-SPY调试器进行了重要升级。此次升级的核心亮点在于引入了IAR独有的Listwindo
    的头像 发表于 12-11 11:15 222次阅读

    IAR C-SPY为VS Code社区树立调试新标准

    全球领先的嵌入式系统开发软件解决方案供应商IAR宣布,对VS Code中的调试扩展IAR C-SPY调试器进行了重大升级。此次升级引入了IAR
    的头像 发表于 12-06 10:27 163次阅读

    Linux环境变量配置方法

    Linux上环境变量配置分为设置永久变量和临时变量两种。环境变量设置方法同时要考虑环境Shell类型,不同类型的SHELL设置临时
    的头像 发表于 10-23 13:39 159次阅读

    Keil中变量不被初始化方法

    介绍使用Keil,IAR和CubeIDE的操作方法,本文中所用芯片为:STM32G431RBT6。Keil中没有这个关键字,而且会有版本的区别,下面分别介绍:为了防
    的头像 发表于 08-30 11:47 649次阅读
    Keil中<b class='flag-5'>变量</b>不被初始化<b class='flag-5'>方法</b>

    MCUXpresso IDE下在线联合调试双核MCU工程的三种方法

    大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家分享的是MCUXpresso IDE下在线联合调试i.MXRT1170双核工程的三种方法
    的头像 发表于 08-08 15:18 553次阅读
    MCUXpresso IDE下<b class='flag-5'>在线</b>联合<b class='flag-5'>调试</b>双核MCU工程的三种<b class='flag-5'>方法</b>

    请问rt-thread studio如何像keil一样在线查看变量

    rt-thread studio如何想keil一样在线查看变量
    发表于 07-04 06:08

    IAR调试freertos系统怎样才能方便的获得任务的堆栈情况?

    IAR中将freertos移植到STM32中,在进行任务堆栈分配时分配多大的堆栈时一个问题,如何比较方便的获得任务堆栈呢?利用IAR这个平台的在线调试可以吗?怎么看,请各位大神各抒己
    发表于 05-07 08:15

    freertos启用IAR自带插件调试时不能查看队列信息怎么解决?

    IAR平台上调试freertos,想利用IAR自带的freertos插件进行调试,但是只能看task的信息,不能看队列信息显示
    发表于 05-07 06:54

    IAR FOR STM8 v3.10.4调试时软件崩溃的原因?

    环境:ide是iar for stm8 v3.10.4 版本, 芯片stm8L051,调试器是Risym 的ST-LINK v2, swim连接 部分程序如下: void main(void
    发表于 04-26 08:29

    程序使用IAR软件在线调试debug时提示报错,用stvp下载程序,仿真不了的原因?

    程序使用IAR软件在线调试debug时提示“the debugging session could not be started,eiither the debugger
    发表于 04-26 06:41

    IAR仿真时崩溃了怎么解决?

    发现IAR有个BUG,程序中定义一个unsigned char型的变量,如果在代码中给变量赋某些值(比如0xEC,0xE0),在IAR仿真环境下查看
    发表于 04-22 07:57

    IAR断点停止后,鼠标放在watch窗口中查看变量IAR卡死退出怎么解决?

    IAR版本:8.32 操作过程如下: 1.在IAR中设置相关端点; 2.在观察(watch)窗口中加入相关变量或数组,用于在程序断点停止后观测其数值变化; 3.运行程序至端点停止后,一定会发生以下2
    发表于 04-19 07:21

    如何在IAR IDE中调试基于Cortex-R52的RZ/T&amp;N MPU的变量实时监控?

    变量实时监视功能是指IAR Embedded Workbench集成开发环境中提供的实时变量监控功能。
    的头像 发表于 03-27 13:35 2517次阅读
    如何在<b class='flag-5'>IAR</b> IDE中<b class='flag-5'>调试</b>基于Cortex-R52的RZ/T&amp;N MPU的<b class='flag-5'>变量</b>实时监控?

    如何查看GD32 Keil和IAR工程的map文件

    我们在设计调试程序时,往往需要知道一个函数或一个变量它在MCU中具体所在的地址以及所占用的空间大小,这时候就需要查看map文件。 那么什么是map文件呢?map文件是编译器编译工程后生成的一个文件
    的头像 发表于 01-27 09:30 2601次阅读
    如何<b class='flag-5'>查看</b>GD32 Keil和<b class='flag-5'>IAR</b>工程的map文件

    如何使用GPT监控变量

    在项目调试过程中,需要监控变量通常采用ICS(In Circuit Scope)和DA两种方法。使用ICS会占用MCU的资源(UART)以及增加硬件的成本(ICS硬件板);如果MCU的DA引脚已被
    的头像 发表于 01-04 12:21 1242次阅读
    如何使用GPT监控<b class='flag-5'>变量</b>