RT,写了个bootloader,stm32f407,使用串口,现在测试阶段,用mdk烧进boot和app,app开始地址是0x08020000,
app如果用裸奔程序,跳转后正常,如果app换成带rtt的,跳转后会死在这个函数里:rt_system_scheduler_start();
rtt尝试在main里增加
NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x20000);
或者修改system_stm32f4xx.c的
#define VECT_TAB_OFFSET 0x20000
都不行。。
跳转前我已经把boot里的开启过的中断关掉了。
有没有人遇到过类似情况呢?
/* start scheduler */这里 ,这个函数没有返回。
rt_system_scheduler_start();
USART1->SR = 0;
USART1->CR1 = 0;
TIM6->SR = 0;
TIM6->CR1 = 0;
TIM6->CR2 = 0;
TIM6->DIER = 0;
Reset_Handler PROC
EXPORT Reset_Handler [WEAK]
IMPORT SystemInit
IMPORT __main
;/* Set up vector table offset register and sp. */
LDR R0, =__Vectors
LDR R1, =0xE000ED08 ;/* SCB->VTOR */
STR R0, [R1]
LDR R0, [R0]
MOV SP, R0
LDR R0, =SystemInit
BLX R0
LDR R0, =__main
BX R0
ENDP
Magic Code
请问是修改misc.h哪里?
@DQXG_3150 层主找到修改哪里了吗