当前位置: 代码迷 >> 单片机 >> KEIL SDK STM32在线调试进不了main解决思路
  详细解决方案

KEIL SDK STM32在线调试进不了main解决思路

热度:300   发布时间:2016-04-28 14:58:31.0
KEIL SDK STM32在线调试进不了main
代码只有也进入不了:
int main()
{
   while(1);
}
单步时
LDR     R0, =SystemInit
                 BLX     R0
                 LDR     R0, =__main
                 BX      R0
到了最后 BX   RO
求大牛打救!!!
------解决方案--------------------
SystemInit贴下
------解决方案--------------------
你把这3行
     IMPORT  SystemInit
                 LDR     R0, =SystemInit
                 BLX     R0

用分号注释了跑跑看看。
------解决方案--------------------
优化没了吧

------解决方案--------------------
引用:
Quote: 引用:

你把这3行
     IMPORT  SystemInit
                 LDR     R0, =SystemInit
                 BLX     R0

用分号注释了跑跑看看。

这个不能吧,是.s启动文件,这个是系统初始化,试试了没用

最好自己写SystemInit,比如库里带的初始化不一定和你硬件配套。如果是初始化的问题注释掉应该可以正常跑,你可以找到库里的SystemInit看下,其实主要就是RCC的配置,没有那么神秘,仔细检查下,是不是符合你硬件。
------解决方案--------------------
引用:
Quote: 引用:

优化没了吧

怎么优化?

你把main里写点东西,然后优化级别改成O-0看看
------解决方案--------------------
b main   汇编 有这一行么  
 
------解决方案--------------------
可能是硬件问题,导致一直复位
  相关解决方案