keil stm32中go to definition不能使用,出现browser的窗口.求大神解答,在线等。。。
展开全部
1、那是因为你go to definition的标识符在你的文件中有多次被定义,keil不能知道你需要的是那个,所以给出你browser窗口,让你自己去找.你把browser窗口向上调大一些,就能看到你要找的标识符的所有列表,你单击列表中的一个标识符,在右边的窗口会给出这个标识符在本文件内的所有连接,其中第一个是定义。
2、 如果用51MCU的话,先装keil C51,再装keil MDK,两者可以装一个目录下,共用一个启动快捷图标,
软件附录里有,都是目前的最新版,破解时破解两回把两个都破解就行了:
3、首先先点击“魔法棒”,进入“options for Target 1”中的“output”下,查看并勾选“Browse Information”,如果此处为勾选状态,则进行2步骤。然后进入“Device”下,勾选 Use Extended Linker[LX51]...和Use Extended Assembler[AX51]...两个选框,再重新编译(Rebuild)就可以了。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果定义在同一个文件中,那么会直接跳转,如果定义在其他文件中,就会出现browser
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
首先先检查一下你的程序有没有编译过,没编译的话,编译一下就好了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
int inc (int val) { // ----- a处
return val+1; // ------ b处
}
int dec(int val) { // ----- c处
return val-1; // ----- d处
}
定义简单的两个函数如上,每个函数都有个名为val的变量,这时候keil就傻掉了。
你在b处对val进行 go to defination,很明显应该要跳到a处;
你在d处对val进行 go to defination,很明显应该要跳到c处。
但在keil中却弹出browser窗口,让你自己选。我觉得可能是keil没有作用域的概念,只知道符号名称是一样的,无法区分。
相比之下,iar更智能一些,不会出现这种情况。
return val+1; // ------ b处
}
int dec(int val) { // ----- c处
return val-1; // ----- d处
}
定义简单的两个函数如上,每个函数都有个名为val的变量,这时候keil就傻掉了。
你在b处对val进行 go to defination,很明显应该要跳到a处;
你在d处对val进行 go to defination,很明显应该要跳到c处。
但在keil中却弹出browser窗口,让你自己选。我觉得可能是keil没有作用域的概念,只知道符号名称是一样的,无法区分。
相比之下,iar更智能一些,不会出现这种情况。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询