stm32 用bootloader升级后(iap)复位后为何不是进入bootloader中?
bootloader的起始地址是0x80000000app的地址是0x8000c000
我现在也升级成功了,中断向量表我也设置了,那我复位为何是在app中呢。
复位后一直在app中运行,那我怎么再进入bootloader呢??
复位后要进bootloader,复位从0x08000000执行,这个我调试过的 你的bootloader直接跳转到APP了吧。
是不是已经已执行了,但是你没有感觉出来呢。
楼上说的对,复位从0x08000000执行。
再看看代码吧。 复位后CPU将0x8000000 的值放入SP中,然后从0x8000004中地址入口地址开始执行
跟踪下看那出问题了吧
非常感谢大家,我之前是bootloader是带FreeRTOS的,现在不用RTOS是正常的,复位后立即进入bootloader里面。有RTOS的有异常,今天晚上我仔细看看。感谢大家的帮忙!!:lol 问题解决了啊? 寒风飘飘 发表于 2016-9-19 15:37
非常感谢大家,我之前是bootloader是带FreeRTOS的,现在不用RTOS是正常的,复位后立即进入bootloader里面。 ...
我把之前的工程给删了,重新新建了project,用RTOS,现在又正常了。好像只有一处不一样。
我之前是改这个宏的
#define VECT_TAB_OFFSET0x10000 /*!< Vector Table base offset field.
现在是在main函数第一条语句中写入
SCB->VTOR = FLASH_BASE | 0x10000;
这个两个有区别吗?我记得只有这处不一样了。
能把源程序压缩贴上来吗,,我USB IAP,一直不行,不知道哪里出问题了,3ks啊 aabobo 发表于 2017-2-22 15:02
能把源程序压缩贴上来吗,,我USB IAP,一直不行,不知道哪里出问题了,3ks啊 ...
公司的代码都是加密的,源码贴了你也打不开。。。不好意思。。 aabobo 发表于 2017-2-22 15:02
能把源程序压缩贴上来吗,,我USB IAP,一直不行,不知道哪里出问题了,3ks啊 ...
你好,你的USB IAP做好了吗?我现在也正在做这一块,可否交流指点下?谢谢!
页:
[1]