初级会员

- 积分
- 58
- 金钱
- 58
- 注册时间
- 2020-9-22
- 在线时间
- 12 小时
|
5金钱
stm32f103 freertos系统上iap的sd卡升级功能,
问题详细描述:
原本在ucosiii上面的整体程序+iap升级(此程序可用),将ucosiii上面的逻辑程序都移植到freertos后再上iap升级结果遇到程序死在vTaskStartScheduler的prvStartFirstTask的svc 0处没有向下执行。
试过的解决办法:
1、在iap程序里面将所有的中断和gpio口都关闭,并不管用;
2、iap程序中跳转前已经增加了如下程序段
SCB->VTOR=appAddr;
__set_BASEPRI(0);
__set_FAULTMASK(0);
__set_PSP(*((volatile unsigned long int *)appAddr)); //重新设置进程PSP堆栈地址
__set_MSP(*((volatile unsigned long int *)appAddr));
__set_CONTROL(0);
__ISB();
__disable_irq(); /*关闭中断*/
3、app程序main函数之后增加过__enable_irq(); SCB->VTOR = FLASH_BASE | offsetf;也没有能起作用。
特地来贴吧上咨询各位大佬解决办法,还望各位大佬不吝赐教
|
|