现在的问题是一直卡在HAL_Delay();
/* USER CODE END WHILE */
HAL_Delay(1000);
HAL_GPIO_TogglePin(GPIOF, GPIO_PIN_8);
HAL_Delay(1000);
HAL_GPIO_TogglePin(GPIOF, GPIO_PIN_7);
HAL_Delay(1000);
HAL_GPIO_TogglePin(GPIOB, GPIO_PIN_0);
/* USER CODE BEGIN 3 */
/* 已经修改了基地址
#define VECT_TAB_BASE_ADDRESS FLASH_BASE
#define FLASH_BASE 0x08020000UL
*/
SCB->VTOR = VECT_TAB_BASE_ADDRESS | VECT_TAB_OFFSET; /* Vector Table Relocation in Internal SRAM. */
/* 程序读写区
LR_IROM1 0x08020000 0x00080000 { ; load region size_region
ER_IROM1 0x08020000 0x00080000 { ; load address = execution address
*.o (RESET, +First)
*(InRoot$$Sections)
.ANY (+RO)
.ANY (+XO)
}
RW_IRAM1 0x20000000 0x00010000 { ; RW data
.ANY (+RW +ZI)
}
}
*/
/* BootLoader已经跳转
Find user firmware at app partition 0x08020000 successfully.
Bootloader jumps to user firmware now.
*/
现在的问题是一直卡在HAL_Delay();
从主函数运行的,程序很简单,就是2灯闪烁。在有BootLoader时只要不用HALDelay就正常。在无BootLoader时,全部正常
神奇,前两天有个人用官方 bootloader ,rt studio 生成的 app 栈初始化不正常。你这个也是 rt studio 项目吧。换 keil5 试试先。
@出出啊 不是呀,刚接触这玩意
0x00000000 AAAA ADD r2,sp,#0x2A8
0x00000002 AAAA ADD r2,sp,#0x2A8
0x00000004 AAAA ADD r2,sp,#0x2A8
0x00000006 AAAA ADD r2,sp,#0x2A8
0x00000008 AAAA ADD r2,sp,#0x2A8
0x0000000A AAAA ADD r2,sp,#0x2A8
0x0000000C AAAA ADD r2,sp,#0x2A8
0x0000000E AAAA ADD r2,sp,#0x2A8
0x00000010 AAAA ADD r2,sp,#0x2A8
0x00000012 AAAA ADD r2,sp,#0x2A8
0x00000014 AAAA ADD r2,sp,#0x2A8
0x00000016 AAAA ADD r2,sp,#0x2A8
0x00000018 AAAA ADD r2,sp,#0x2A8
0x0000001A AAAA ADD r2,sp,#0x2A8
0x0000001C AAAA ADD r2,sp,#0x2A8
0x0000001E AAAA ADD r2,sp,#0x2A8
0x00000020 AAAA ADD r2,sp,#0x2A8
0x00000022 AAAA ADD r2,sp,#0x2A8
0x00000024 AAAA ADD r2,sp,#0x2A8
在反汇编汇编窗口显示这个
@流年_123456 我也看不懂汇编,你为啥不用 rt_thread_mdelay 来延时呢