请教关于KEIL MDK 如何跳转到指定地址处的代码的问题?
现在在跟一个NMI fault ,已经定位了它出错附近的代码地址为 0x200027F1 ,以前用IAR的时候,在汇编窗口有个输入窗口,只要把这个地址输入的那个窗口然后回车就会跳转到对应的的汇编代码处,然后根据汇编代码对应的C代码来查找出错的原因。现在用keil MDK 了它的汇编窗口好像没有那个能输入地址的窗口。请问大家是如何定位的?怎样找到地址0x200027F1对应的汇编代码。
自己顶一下,莫非需要玩儿命的滚轮?! 改PC指针寄存器的值?不知道行不行。 本帖最后由 aozima 于 2015-1-27 11:18 编辑
command那里输入pc = XXX
不过 NMI fault 的原因是确定的吧,用不到跳到对应位置去跟综
只有hardfault时一般才回溯指令。 我们可以利用keil软件的绝对地址跳转,((void(code *)(void))0x00)(); keil软件编译时会转换成jmp 0x00,就跳到指定的绝对地址了; 亲测有效 雨雪随行 发表于 2015-1-27 12:07
亲测有效
我想跳转到0x200027F1 是不是就用((void(code *)(void))0x200027F1)(); 汇编窗口右击
w282529350 发表于 2015-1-27 15:56
汇编窗口右击
此楼正解!!!我已经试过了,OK!
页:
[1]