大家好,
在启用了扩展睡眠时,有没有什么方法可以用J-Link调试器进行调试?我使用J-Link调试器启用了扩展睡眠和调试。但我发现它总是挂在下面一行while((GetWord16(SYS\u STAT\u REG)&DBG\u IS\u UP)==DBG\u IS\u UP){};在main\u func()中。
如果我不能使用J-Link调试器,那么如何在启用扩展睡眠的情况下进行调试?还有其他的调试方法可以推荐吗?
非常感谢!
嗨,巫妖,
包括3.0.8在内的所有SDK都需要禁用调试器才能进行调试,因此您只能在禁用睡眠模式时进行调试,特定代码会使程序停止运行,直到您禁用调试器为止。您可以尝试删除这些导致代码暂停的条件,在禁用调试器时注释掉(SetBits16(SYS_CTRL_REG,debugger_ENABLE,0);)或者启用它或者删除指令。这应该允许您在睡眠模式下进行调试,但是,放置此类线路的原因是为了允许系统进入睡眠状态,如果您保持调试模块处于启用状态,您将无法看到580的最小功耗。
谢谢你的对话
嗨,巫妖,
包括3.0.8在内的所有SDK都需要禁用调试器才能进行调试,因此您只能在禁用睡眠模式时进行调试,特定代码会使程序停止运行,直到您禁用调试器为止。您可以尝试删除这些导致代码暂停的条件,在禁用调试器时注释掉(SetBits16(SYS_CTRL_REG,debugger_ENABLE,0);)或者启用它或者删除指令。这应该允许您在睡眠模式下进行调试,但是,放置此类线路的原因是为了允许系统进入睡眠状态,如果您保持调试模块处于启用状态,您将无法看到580的最小功耗。
谢谢你的对话