解决keil5单步调试只有汇编没有C的办法

本文提供了解决调试过程中遇到问题的方法:将工程目录改为英文;在魔法棒的debug设置中调整下载选项;并介绍了如何正确设置断点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 1,把工程目录全部改为英文。

2,在魔法棒中debug->settings->download Options的两个选项(verify code download和download to flash)都不要勾选,勾选cache options下的两个选项。

3,设置断点。

### Keil5步调时设置中断点方法 在Keil5环境中,当进行步调时,可以通过多种方式来设置中断点以便更精确地控制程序流。以下是具体的操作指南: #### 使用图形界面设置断点 可以在源代码编辑器中点击行号左侧的空白区域来快速创建或移除断点[^1]。一旦设置了断点,在启动调会话并执行至该位置时,程序将会自动暂停。 对于某些特定情况下可能出现的问题,比如在一些计算机上删除断点前退出调可能会引起软件崩溃的情况,建议先保存项目再尝清除断点或者直接关闭整个IDE以防止数据丢失[^2]。 #### 设置条件断点 除了简的断点外,还可以右键点击已有的断点图标,并选择“Properties”,在这里可以定义只有满足一定条件下才会触发此断点的行为。这对于复杂逻辑路径下的问题排查非常有用。 #### 函数入口处设断点 如果希望每当调用某个特定函数时就停下来检查状态,可以直接双击目标函数名旁边的灰色边框区,这样无论从哪里调用了这个函数都会在此停下等待进一步指令[^4]。 需要注意的是,存在一种特殊情况即仅能在`main.c`文件内成功添加断点的现象;这可能是由于编译选项配置不当或是链接脚本错误所引起的。针对此类现象应仔细核对项目的构建属性以及确保所有相关联的对象模块都被正确加载到了内存映像里[^3]。 ```c // 示例:假设我们想要在一个名为exampleFunction()的地方设立断点 void exampleFunction(void){ // 断点将被放置于此行之前 } ```
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值