打印

自己建了个 STM32的工程,碰到个奇怪的问题!!!

[复制链接]
楼主: lw30402048
手机看帖
扫描二维码
随时随地手机跟帖
21
mcuisp| | 2012-8-3 08:11 | 只看该作者 回帖奖励 |倒序浏览
本帖最后由 mcuisp 于 2012-8-3 08:15 编辑
你说的是这个吧:在 Tools->options->projiect 将其中的Generate browse information已选中

上面的已经 勾了!
19# mcuisp
lw30402048 发表于 2012-8-3 00:32


不光是这里,还有Project->Options->C/C++ Complier->Output->Generate Debug information
如果要调试汇编,还有:Project->Options->Assembler->Output->Generate Debug information

使用特权

评论回复
22
mcuisp| | 2012-8-3 08:28 | 只看该作者
本帖最后由 mcuisp 于 2012-8-3 08:41 编辑

刚试了一下,不勾选我说的也可以浏览的,只是打开工程后,要等待一会(1分钟),IAR可能要一段时间做语法分析。
楼主的工程我试了可以浏览的。
就GPIO_config函数不行,确实奇怪。

使用特权

评论回复
23
mcuisp| | 2012-8-3 09:06 | 只看该作者
本帖最后由 mcuisp 于 2012-8-3 09:07 编辑

经试验,楼主的工程,确实编译成功以后,GPIO_config的go to就不行了。
应该是个bug。
解决方法:在GPIO_config的函数体前面再随便定义个函数,比如:

void t(void)
{
}
void  GPIO_config(void)
{....
这样GPIO_config的go to就可以了。

但是函数t的go to是不行的,呵呵。

使用特权

评论回复
24
mcuisp| | 2012-8-3 09:11 | 只看该作者
进一步试验,发现每个C文件的第一个函数, go to都会有问题。
比如stm32f10x_gpio.c,第一个函数是 GPIO_DeInit,go to不行,后面的GPIO_Init都可以了。
在C文件最前面定义一个没用的函数:
static void nousedfunc(void)
{
}
就可以解决问题了

使用特权

评论回复
25
lw30402048|  楼主 | 2012-8-3 09:30 | 只看该作者
呃 谢谢了 很感谢mcuisp!那只能先这样了
不过 我在MSP430调试的时候,也是这么来的。也是用的IAR,都是可以的,就arm的不行!
我试过 IAR的6.10 、6.21、6.30 都出现 不能go to 的问题,却是奇怪!
6.40 的 还没试过,今天试下。
24# mcuisp

使用特权

评论回复
26
lw30402048|  楼主 | 2012-8-3 09:40 | 只看该作者
确实如此啊 多谢mcuisp!:)
24# mcuisp

使用特权

评论回复
27
lw30402048|  楼主 | 2012-8-3 09:59 | 只看该作者
请教下 mcuisp,你自己建的工程 有这问题吗?
24# mcuisp

使用特权

评论回复
28
mcuisp| | 2012-8-3 10:36 | 只看该作者
本帖最后由 mcuisp 于 2012-8-3 10:38 编辑

t

使用特权

评论回复
29
lw30402048|  楼主 | 2012-8-3 10:50 | 只看该作者

28# mcuisp

使用特权

评论回复
30
lw30402048|  楼主 | 2012-8-3 10:55 | 只看该作者
有个好消息 6.4的 IAR,直接可以 go to到指定函数了!
不需要 在C文件最前面定义一个没用的函数!
看来 6.1 ,6.2,6.3 都有之前的问题。。。

使用特权

评论回复
31
MakeBetter| | 2012-8-3 10:57 | 只看该作者
我用的IAR for arm 5.5 的都可以goto啊

使用特权

评论回复
32
MakeBetter| | 2012-8-3 10:57 | 只看该作者
在你这个工程上是的

使用特权

评论回复
33
MakeBetter| | 2012-8-3 11:00 | 只看该作者
不过不知道是我的版本问题还是什么的,你的工程里面没有加头文件地址啊,编译不过。

使用特权

评论回复
34
dutEngineer| | 2012-8-3 11:13 | 只看该作者
我用keil MKD感觉这些功能非常方便,IAR还没试过,帮你顶一个,答复不了你的问题

使用特权

评论回复
35
figo20042005| | 2012-8-3 11:16 | 只看该作者
学习了,MARK

使用特权

评论回复
36
mcuisp| | 2012-8-3 11:18 | 只看该作者
这个问题不是大问题,就pass算了,呵呵。

使用特权

评论回复
37
伐多2011| | 2012-8-3 11:28 | 只看该作者
我也遇到过好几次有时不能goto的,不过打开iar一段时间之后就可以了,没查出啥原因

使用特权

评论回复
38
lw30402048|  楼主 | 2012-8-3 11:49 | 只看该作者
嗯 不是大问题 其实可以用 source insight,或find file 替代
但是有这 问题 总觉得不爽 呵呵
36# mcuisp

使用特权

评论回复
39
lw30402048|  楼主 | 2012-8-3 11:50 | 只看该作者
在 option-->c/c++compiler-->preprocessor 里面,引用如下

$PROJ_DIR$\..\
$PROJ_DIR$\..\User\inc
$PROJ_DIR$\..\Libraries\CMSIS\CM3\CoreSupport
$PROJ_DIR$\..\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x
$PROJ_DIR$\..\Libraries\STM32F10x_StdPeriph_Driver\inc


上面的 加了没?
33# MakeBetter

使用特权

评论回复
40
misra| | 2012-8-3 15:52 | 只看该作者
没有IAR的demo么?
我现在都用的MDK的demo。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则