第一幅图是我的ROM配置,我选择的是从TCM接口映射的地址加载Flash,也成功了,但是有个小问题。我的工程是在STM32Cube7里的STM32F767 Nucleo改的。
当程序复位后,我仿真观察,PC和SCB->VTOR值都是TCM接口的地址映射,如第二张图;但是当我执行到system_stm32f7xx.c中SystemInit函数中的
SCB->VTOR = FLASH_BASE | VECT_TAB_OFFSET; /* Vector Table Relocation in Internal FLASH */
这一句后,SCB->VTOR值是变成了 AXI接口的Flash首地址0x08000000,但是程序运行好像还是在TCM接口的地址处,如第三张图,难道SCB->VTOR的设置没有作用吗?找了一些文档,没有找到可以解决我迷惑的,如果知道的,清帮忙解释下,谢谢拉 |