之前了解到M0不支持通过SCB->VTOR来修改中断向量,
所以
STM32L0提供了把SRAM映射到0地址的功能。
当使用bootloader功能时,把APP的中断向量复制到 0x20000000
然后由ST把0x20000000映射到0地址去。
- // SYSCFG->SYSCFG_CFGR1.MEM_MODE = 11: SRAM mapped at 0x0000 0000.
- memcpy((int *)0x20000000, (const int *)app_address, 256);
- __HAL_RCC_SYSCFG_CLK_ENABLE();
- __HAL_SYSCFG_REMAPMEMORY_SRAM();
复制代码
而 “Cortex™-M0+ Devices Generic User Guide”中有写可选VTOR,所以看来STM32L0是可以有VTOR的。
一周热门 更多>