一、问题点:使用STM32F1XX开发板精英板仿真时,可以识别到JLINK,进入硬件仿真界面后无法进入main函数,一直循环执行以下三行代码,无法正常运行,也无法进入断点:
0x1FFFF3B2 F8D01808 LDR r1,[r0,#0x808]
0x1FFFF3B6 0549 LSLS r1,r1,#21
0x1FFFF3B8 D4FB BMI 0x1FFFF3B2
这个问题困扰了我好几天,在网上查资料查了好多都没办法解决,各种接地、芯片解密、芯片擦除都试过了都不行,都准备放弃了,还好有一天再坚持一会,最终找到了新浪微博的一位博主提供的方法才解决,我的天啊,哈哈哈哈哈哈~~~~~~
二、原因:BOOT1与其他IO口复用了,导致执行了内部函数
三、解决方法:将BOOT0、BOOT1接GND,接上JLINK后,同时使用USB线将开发板上的USB_232接上(相当于使用外部供电),然后就可以正常进行硬件仿真调试了。
至此问题解决~~~希望可以帮助更多的遇到类似问题的朋友位~~~
附上原解决方案的出处,链接:http://blog.sina.com.cn/s/blog_ded3b5a80102y8sc.html#post