Cortex-M3的中断向量表的结构是固定的,而位置的地址是可变的。
Cortex-M3的初始中断向量表有三个位置,通过BOOT引脚进行启动设置。
BOOT1=x BOOT0=0 从用户闪存启动,这是正常的工作模式。中断向量表定位于FLASH区,复位后PC=0x80000000.
BOOT1=0 BOOT0=1 从系统存储器启动(相当于厂家在存储器中固化了BOOTLOADER),这种模式启动的程序功能由厂家设置。
BOOT1=1 BOOT0=1从内置SRAM启动,这种模式可以用于调试。这种模式下,中断向量表位于SRAM区,起始地址为0x20000000.复位为PC=0x20000000.
当STM32复位完成后,可通过设置VECTOR_TABLE,将中断向量表放置在任何地方。
|