关于IAR 里面用JLINK烧写STM32程序的Target reset 错误

今天调程序调了一个通宵。错误的提示是这个,

Fri Oct 21 07:18:35 2011: Target reset (没错,错误提示就是这么短,程序一烧进单片机里面,程序就跑飞了,一直没找到原因)

一直在找问题。

后来,通过一行一行地对照代码,发现几乎全部都是一样的。只是别人的程序是所有的设置都一股脑地放在一个函数里面。

而我把里面的设置分了类,然后分成几个函数,然后这几个函数再放进一个总的函数里面,这样程序比较有条理一点。

但是,这样居然就错误了。然后我也像别人一样把函数里面的东西都拿出来全部放进一个函数里面,然后就可以通过了。

我想可能是哪里有一点点不同吧,然后又认真看了很久,试了很久,还是没发现什么,反正是拿出函数外面就可以正常执行,

而放进一个比较小的函数里面就提示出错。后来甚至是以为编译器没做好。

然后就想将就一下好了,还是早点睡觉吧,所以我把所有函数都拆了堆在一起,然后就可以了。


后来想上网放松一下的时候,搜了一下这个错误,然后发现出现这个错误的人挺多的,但都是伴随着很多别的的错误。

后来发现有人说解决了问题。其实就是把设置好你的STM32的flash的位置和SRAM的位置

比如我的是RB型号的单片机,所以就设置为ROM 0x08000000~  0x0801FFFF  RAM 0x20000000  ~  0x20004FFF

然后我再把我原来的函数慢慢地组装回去,然后就一点问题都没有了。

唉!最后总结就是,其实很多问题可能就会出现在你觉得没什么大不了的地方。以前觉得那个地方的参数设不设都一样能够写程序并烧进去,

等到遇到问题了居然调了一个晚上,唉,真狼狈啊!!~~

你可能感兴趣的:(Flash,编译器)