繁体   English   中英

JTAG调试ARM,搜索WFI替代代码

[英]JTAG debugging ARM, search for WFI alternative code

我正在尝试动态分析基于NXP LPC1752(Cortex-M3)的USB设备的固件。 该固件包含一个WFI指令,似乎干扰了我的尝试,因为JTAG探针有时无法再访问该设备。 用于测试的探针是使用Seggers自己的或OpenOCD作为GDB服务器的Segger JLink-Edu v9.3,以及具有OpenOCD的BusBlaster v2.5。

我试图通过将其替换为NOP或空的无限循环来删除WFI。 不管哪种方式,设备都不再枚举。

由于此WFI指令伴随有几个NOP,所以我要问是否有一个代码序列可以执行WFI的功能,而无需进入睡眠模式?

WFI与您的问题无关。 处理器可以进入和退出睡眠模式,您仍然应该能够激活调试器会话。 另请参阅infocenter.arm中的以下语句:

调试操作将唤醒处理器

正如Notlikethat所提到的-最有可能您正在失去电源或时钟源。 具体取决于您的硬件的实现方式。 在连接调试器之前,您可能需要保持“开机”按钮或更改某种跳线? 我不知道您使用的是什么木板。

关于替换WFI:从理论上讲,您可以将NOP插入循环并手动处理中断,但是没有一条指令可以执行。 另外,请记住,如果正在运行某些OS,则可以从许多地方发出WFI指令(例如,延迟循环)。

祝好运。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM