KEIL调试正在运行的程序

问题现象

有时程序跑着跑着就飞了,但此时却没有接仿真器,不能停下来看运行状态。如果重新启动调试,会破坏现场。有没有办法attach到应用程序上调试呢?

答案是肯定的。

解决措施

在调试选项中,取消以下选择项

  • Options For Target - Debug - Load Application at startup

  • Options For Target - Debug - Settings - Reset after connect (with Options For Target - Debug - Settings - Connect selected as NORMAL)

  • Options For Target - Utilities - Update Target before Debugging

 如果下面3张图片中显示的所有选项都被禁用,调试器将在不执行硬件重置的情况下启动。

 

 
注意,如果要保持目标运行,请选择“Connect: Without Stop”。


禁用这些选项后,调试器将启动,目标硬件将停止在程序计数器的当前位置。这允许您分析内存和寄存器内容。
由于“目标-调试-启动时加载应用程序的选项”已禁用,因此调试器没有任何应用程序和调试信息。要将此信息加载到调试器中,请使用带有选项NORESET或INCREMENTAL的load调试器命令。
您可以使用“目标-调试选项”下的“初始化文件”自动执行此LOAD。例如,以下调试命令加载当前应用程序的程序和调试信息,其中%L是项目的链接器输出文件名:

LOAD %L INCREMENTAL

参考资料

UVISION DEBUGGER: Connect to a running Target without Hardware Resethttps://developer.arm.com/documentation/ka003020/latest

 

keil MDK 调试运行中程序_纵向深耕的博客-CSDN博客_keil mdk 调试

STM32CubeIDE的设置方法如下:

调试正在运行的程序(STM32CubeIDE)

  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Keil License是指Keil软件的许可证。Keil是一家德国公司,开发出了一系列嵌入式系统软件开发工具,包括编译器和调试器等。对于使用Keil软件进行开发的用户来说,需要购买相应的Keil License来合法使用软件。 Keil License是一种许可证,它规定了用户可以使用Keil软件的权限和限制。购买Keil License后,用户可以在一定的时间期限内使用Keil软件来开发嵌入式系统。不同的Keil License可能拥有不同的功能和服务。一般来说,Keil License分为个人/教育版和商业版两种。 个人/教育版的Keil License适用于个人、教育或非商业组织使用,价格较为便宜或者是免费的。它提供了基本的软件开发功能,可以满足个人或教育场景下的需求。 商业版的Keil License适用于商业组织或需要更高级功能的用户。商业版一般具有更强大的软件开发功能和更广泛的技术支持,价格较高。 在购买Keil License后,用户将获得一个许可证文件。用户需要将该文件导入到Keil软件中,以激活软件并解锁相应的功能。根据许可证中规定的期限,用户可以在使用期限内享受Keil软件的各项功能和服务。 需要注意的是,Keil License是一种付费许可证,用户需要购买合法的许可证来使用Keil软件。未经许可的使用属于侵权行为,可能会受到法律制裁。 总而言之,Keil License是一种许可证,用于合法使用Keil软件进行嵌入式系统开发。凭借Keil License,用户可以获得软件开发功能和技术支持,提高开发效率和质量。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值