keil调试中怎么实时看到变量的变化?

关注

单片机 STM32 huihui163    2018-02-08   |   浏览量 487  
在STM32调试中,keil调试中怎么实时看到变量的变化?

最佳答案

  • 731278512@qq.com 发表于2018-02-09

    理论来讲,你不可能看到实时变化的变量,因为CPU的运行速度要比SWD高很多,假设一个变量的值改变的很频繁又很快,KEIL是刷新不过来的,这时只能停掉CPU,看一个当前的值,要想实时看变量的值,建议uart+DMA打印,满足绝大多数需求,对于更高程度的实时,可以直接写到内存,然后再集中输出。不过对于查看来讲,这种东西也没意义。给你1千万次变化每秒,你拿来能干什么?线性或周期变化推导就行,离散随机变化更是屁用没有

    举报 评论 0

其他答案

  • 袁建明 发表于 2018-02-08 云汉达人

    23.png

    在Debug模式下,点击菜单栏下的View,在下面有一个Periodic Window update 点一下,选定一下就行了。

    24.png

    在watch窗口中看到我们在程序中定义的全局变量实时变化

    举报 评论 1 0

    huihui163 回复了 Angel_YY:知道这个,但是不能实时更新比如在全速运行时,按一次按键变量变一次,不会一直更新 回复

  • sgf201 发表于 2018-02-08

    程序暂停的时候watch中的数据会刷新,memery窗口中的数据也会更新

    举报 评论 0

  • 靳飞 发表于 2018-02-08 云汉达人

    打开watch窗口,在窗口吕添加你要查看的变量名,这里只能是全局变量的。

    局部变量只能是停在了函数中才可以看到。

    举报 评论 0

  • 明有几时有 发表于 2018-02-08

    使用硬件的仿真器连接上开发板,烧写上程序,在watch中添加变量,运行程序后,变量实时的变化了

    举报 评论 0

  • chen0000009 发表于 2018-02-08

    View——Watch Windows——Watch 1或者2,然后向那个窗口里面添加你需要查看的变量名即可

    举报 评论 0

  • Linux小学童 发表于 2018-02-09

    局部变量在没有设断点情况下,是看不到的。

    全局变量可以看,将变量添加到Watch1窗口中;在仿真状态下,点击View菜单,勾选最后一个,如图:


    QQ截图20180209110301.jpg

    举报 评论 0

  • 1219279984@qq.com 发表于 2018-02-09

    View栏下勾选Periodic Window Update就可以。

    举报 评论 0

我来回答

试用推荐

正点原子Minifly开源四轴飞行器

产品总数:4个  申请人数:394

距离结束时间:

推荐达人 更多>

  • 王奕 向ta提问

    Eagleson

    在学习FPGA的道路上 我们一起成长吧!

    在行: FPGA/CPLD

  • 靳飞 向ta提问

    汉云

    在路上的Linuxer

    在行: DSP技术 Linux 系统 STM32讨论区 PIC单片机 PCB技术/设计/定制

  • Angel Cherry 向ta提问

    MOP

    用愛和熱忱寫好每一行Code

    在行: FPGA/CPLD Linux 系统 热门单片机

  • 陈龙 向ta提问

    活到老学到老、生命在于折腾

    在行: 电路设计 Linux 系统 DIY创客 开发板

  • 徐珂靖 向ta提问

    xukejing

    Linux系统 、热门开发板

    在行: Linux 系统

完成答题
赶快去开启您的宝箱吧